gnome-shell r39 - in trunk: js/ui src
- From: otaylor svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-shell r39 - in trunk: js/ui src
- Date: Sat, 8 Nov 2008 19:33:33 +0000 (UTC)
Author: otaylor
Date: Sat Nov 8 19:33:33 2008
New Revision: 39
URL: http://svn.gnome.org/viewvc/gnome-shell?rev=39&view=rev
Log:
Hide the group containing the windows while overlay is up
When we are animating the overlay, we don't want to be continually
redrawing the (obscured) window actors.
src/shell-global.c: Add 'window-group' property to expose the group
holding the window actors.
js/ui/overlay.js: Hide the window group while the overlay is up.
Modified:
trunk/js/ui/overlay.js
trunk/src/metacity-symbols.c
trunk/src/shell-global.c
Modified: trunk/js/ui/overlay.js
==============================================================================
--- trunk/js/ui/overlay.js (original)
+++ trunk/js/ui/overlay.js Sat Nov 8 19:33:33 2008
@@ -103,13 +103,24 @@
window_index++;
}
+ // All the the actors in the window group are completely obscured,
+ // hiding the group holding them while the overlay is displayed greatly
+ // increases performance of the overlay especially when there are many
+ // windows visible.
+ //
+ // If we switched to displaying the actors in the overlay rather than
+ // clones of them, this would obviously no longer be necessary.
+ global.window_group.hide()
this._group.show();
}
},
hide : function() {
if (this.visible) {
+ let global = Shell.global_get();
+
this.visible = false;
+ global.window_group.show()
this._group.hide();
for (let i = 0; i < this._window_clones.length; i++) {
Modified: trunk/src/metacity-symbols.c
==============================================================================
--- trunk/src/metacity-symbols.c (original)
+++ trunk/src/metacity-symbols.c Sat Nov 8 19:33:33 2008
@@ -39,6 +39,12 @@
return NULL;
}
+ClutterActor *
+mutter_plugin_get_window_group (MutterPlugin *plugin)
+{
+ return NULL;
+}
+
Display *
meta_display_get_xdisplay (MetaDisplay *display)
{
Modified: trunk/src/shell-global.c
==============================================================================
--- trunk/src/shell-global.c (original)
+++ trunk/src/shell-global.c Sat Nov 8 19:33:33 2008
@@ -14,7 +14,8 @@
PROP_OVERLAY_GROUP,
PROP_SCREEN_WIDTH,
PROP_SCREEN_HEIGHT,
- PROP_STAGE
+ PROP_STAGE,
+ PROP_WINDOW_GROUP
};
/* Signals */
@@ -75,6 +76,9 @@
case PROP_STAGE:
g_value_set_object (value, mutter_plugin_get_stage (global->plugin));
break;
+ case PROP_WINDOW_GROUP:
+ g_value_set_object (value, mutter_plugin_get_window_group (global->plugin));
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -141,6 +145,13 @@
"Stage holding the desktop scene graph",
CLUTTER_TYPE_ACTOR,
G_PARAM_READABLE));
+ g_object_class_install_property (gobject_class,
+ PROP_WINDOW_GROUP,
+ g_param_spec_object ("window-group",
+ "Window Group",
+ "Actor holding window actors",
+ CLUTTER_TYPE_ACTOR,
+ G_PARAM_READABLE));
}
/**
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]