Go to file
Simon McVittie dc2ec0a8f9 Keep similar theme nodes so we don't have to recompute CSS so often
Because we calculate and cache CSS properties once per StThemeNode,
and only a certain set of attributes can affect the CSS properties,
it's advantageous for as many widgets as possible to share a single
StThemeNode. Similarly, if a widget changes state and then changes back
(e.g. gaining and losing the :hover pseudo-class), it should ideally
get its original StThemeNode back again when it returns to the old
state.

Here, I'm using the StThemeContext as the location for a cache.
StThemeNodes are currently never freed: this seems OK for Shell's usage
(a finite number of IDs, classes, pseudo-classes and types).

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687465
Reviewed-by: Jasper St. Pierre <jstpierre@mecheye.net>
2012-11-14 19:24:42 +00:00
.settings Convert all JS style to be uniform, add Eclipse settings bits 2008-11-28 20:12:20 +00:00
browser-plugin Remove use of deprecated g_type_init () ... 2012-10-17 22:49:32 +02:00
data messageTray: Add a notification focus keybinding 2012-11-08 15:46:16 +01:00
docs shell-docs: Remove left-over includes 2012-09-19 13:12:02 +02:00
js a11y: also set the WM HighContrast theme when switch is flipped 2012-11-13 11:24:18 -05:00
man Use the same xsltproc parameters as other modules 2012-11-05 23:42:52 -05:00
po Updated Hebrew translation. 2012-11-09 11:36:39 +02:00
src Keep similar theme nodes so we don't have to recompute CSS so often 2012-11-14 19:24:42 +00:00
tests mobile-providers: new country-specific type to gather providers 2012-11-05 22:20:08 +01:00
tools jhbuildrc-gnome-shell: switch to the GNOME 3.8 moduleset 2012-10-05 13:59:57 -04:00
.gitignore .gitignore: Update to ignore the generated manpage 2012-11-07 14:39:28 +01:00
.project Convert all JS style to be uniform, add Eclipse settings bits 2008-11-28 20:12:20 +00:00
AUTHORS Initial commit 2008-10-31 04:22:44 +00:00
autogen.sh Modernize autotools configuration 2010-02-11 21:02:21 +01:00
configure.ac Add a --disable-man configure option 2012-11-05 23:43:03 -05:00
COPYING Initial commit 2008-10-31 04:22:44 +00:00
gnome-shell.doap doap: Add myself as maintainer 2012-03-30 14:39:02 +02:00
HACKING Add a new code style/hacking guide 2012-10-10 19:11:36 -03:00
MAINTAINERS MAINTAINERS: Fix my email address 2011-05-23 09:15:58 -04:00
Makefile.am Add a --disable-man configure option 2012-11-05 23:43:03 -05:00
NEWS Release 3.7.1 2012-10-23 21:14:10 +02:00
README Add README and DOAP file 2009-09-04 15:23:13 -04:00

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:

 http://live.gnome.org/GnomeShell

Bugs should be reported at http://bugzilla.gnome.org against the 'gnome-shell'
product.

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