Go to file
Cosimo Cecchi 6743c18fdf StWidget: don't forget to invalidate the paint state if not on stage
If the actor is not on the stage yet (i.e. does not have a theme
node), but has a paint state cached, we currently fail to invalidate
it, which will lead to the actor painting with old contents once it
gets onto the stage.

This commit fixes the issue by changing our invalidation strategy;
previously we were looking at the widget's own theme node to determine
if it should be invalidated or not.
Now we look at the theme nodes of our cached paint states. When the
widget is mapped on stage, those are the same as the widget's own
theme node, but when the widget is not on the stage, we'll still be
able to invalidate them.

As part of this, we move the invalidation API to StThemeNodePaintState,
which is a more natural place for our use case.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/314
2018-12-04 15:52:36 +00:00
.settings Convert all JS style to be uniform, add Eclipse settings bits 2008-11-28 20:12:20 +00:00
browser-plugin docs: Use Markdown 2018-05-23 19:03:01 +02:00
data theme: Replace calendar arrow images with symbolic icons and CSS 2018-11-26 15:34:08 +00:00
docs/reference shell: Remove ShellGenericContainer 2018-10-08 22:44:14 -03:00
js iconGrid: Eliminate JavaScript for painting/picking 2018-11-27 13:25:37 +00:00
man man: Update project website 2018-01-07 21:39:18 +01:00
meson build: Run postinstall script where necessary 2018-04-09 19:19:33 +00:00
po Updated Spanish translation 2018-12-04 16:39:42 +01:00
src StWidget: don't forget to invalidate the paint state if not on stage 2018-12-04 15:52:36 +00:00
subprojects build: Update gvc to support renamed options 2018-01-30 13:37:38 +01:00
tests tests: Stop using Shell.GenericContainer 2018-10-08 22:43:01 -03:00
tools tools: Migrate changed overrides settings 2018-07-31 18:36:26 +00:00
.gitignore data: Add README and supporting script to update keyboard layouts from CLDR 2018-02-05 17:46:57 +01:00
.gitmodules submodules: Replace non-functional git.gnome.org URL by GNOME Gitlab URL 2018-09-25 08:41:30 +02:00
.project Convert all JS style to be uniform, add Eclipse settings bits 2008-11-28 20:12:20 +00:00
config.h.meson Add check_cloexec_fds debug command 2018-07-30 23:11:41 +00:00
COPYING Changed obsolete FSF postal address. 2014-01-08 04:35:14 +07:00
gnome-shell.doap doap: add <programming-language> 2014-07-31 17:48:46 +02:00
HACKING.md Fix enumeration in HACKING.md 2018-10-14 14:05:04 +02:00
meson_options.txt build: Stop detecting features automatically 2017-11-30 00:24:53 +01:00
meson.build meson.build: Bump compatible mutter API version to 4 2018-11-23 14:46:51 +01:00
NEWS Bump version to 3.31.2 2018-11-14 01:03:45 +01:00
README.md Fix README link 2018-09-01 15:01:46 +01:00

GNOME Shell

GNOME Shell provides core user interface functions for the GNOME 3 desktop, like switching to windows and launching applications. GNOME Shell takes advantage of the capabilities of modern graphics hardware and introduces innovative user interface concepts to provide a visually attractive and easy to use experience.

For more information about GNOME Shell, including instructions on how to build GNOME Shell from source and how to get involved with the project, see the project wiki.

Bugs should be reported to the GNOME bug tracking system.

License

GNOME Shell is distributed under the terms of the GNU General Public License, version 2 or later. See the COPYING file for details.