36b8dcbe07
There are two ways for applications to provide a high contrast icon: 1. install an icon into the HighContrast theme 2. install a symbolic icon into the default hicolor theme The latter is preferred nowadays, and implemented in the high-contrast CSS variant by enforcing the symbolic icon style. However together with the way we currently enable/disable high-contrast, this can lead to the following race: 1. the GTK theme is changed from HighContrast 2. we reload the default stylesheet 3. the icon style changes to "regular", so we request a new icon from the HighContrast icon theme 4. the icon theme is changed from HighContrast 5. we evict existing icons from the cache 6. we reload icons for the new icon theme; however as we find a pending request (from 3), we re-use it 7. the request from 3 finishes, and we end up with a wrong icon in the cache The simplest fix is to change the icon theme before the GTK theme: Unlike the theme name, the icon style is encoded in the cache key, so we won't re-use an old (and incorrect) request in that case. https://gitlab.gnome.org/GNOME/gnome-shell/issues/2414 |
||
---|---|---|
.gitlab/issue_templates | ||
.gitlab-ci | ||
.settings | ||
data | ||
docs/reference | ||
js | ||
lint | ||
man | ||
meson | ||
po | ||
src | ||
subprojects | ||
test | ||
tests | ||
tools | ||
.eslintrc.yml | ||
.gitignore | ||
.gitlab-ci.yml | ||
.gitmodules | ||
cldr2json.py | ||
config.h.meson | ||
COPYING | ||
gnome-shell.doap | ||
HACKING.md | ||
meson_options.txt | ||
meson.build | ||
NEWS | ||
README.md | ||
README.mdwn |
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.
Contributing
To contribute, open merge requests at https://gitlab.gnome.org/GNOME/gnome-shell.
Commit messages should follow the GNOME commit message guidelines. We require an URL to either an issue or a merge request in each commit.
License
GNOME Shell is distributed under the terms of the GNU General Public License, version 2 or later. See the COPYING file for details.