metacity r3692 - in trunk: . src/core
- From: tthurman svn gnome org
- To: svn-commits-list gnome org
- Subject: metacity r3692 - in trunk: . src/core
- Date: Tue, 22 Apr 2008 14:34:48 +0100 (BST)
Author: tthurman
Date: Tue Apr 22 13:34:48 2008
New Revision: 3692
URL: http://svn.gnome.org/viewvc/metacity?rev=3692&view=rev
Log:
2008-04-22 Carlos Garnacho <carlos imendio com>
* src/core/compositor.c (process_property_notify,
find_window_in_display): Propagate opacity to frame window.
Modified:
trunk/ChangeLog
trunk/src/core/compositor.c
Modified: trunk/src/core/compositor.c
==============================================================================
--- trunk/src/core/compositor.c (original)
+++ trunk/src/core/compositor.c Tue Apr 22 13:34:48 2008
@@ -645,6 +645,24 @@
return NULL;
}
+static MetaCompWindow *
+find_window_for_child_window_in_display (MetaDisplay *display,
+ Window xwindow)
+{
+ Window ignored1, *ignored2;
+ Window parent;
+ guint ignored_children;
+
+ XQueryTree (display->xdisplay,
+ xwindow, &ignored1, &parent,
+ &ignored2, &ignored_children);
+
+ if (parent != None)
+ return find_window_in_display (display, parent);
+
+ return NULL;
+}
+
static Picture
solid_picture (MetaDisplay *display,
MetaScreen *screen,
@@ -2117,7 +2135,15 @@
MetaCompWindow *cw = find_window_in_display (display, event->window);
gulong value;
- if (!cw)
+ if (!cw)
+ {
+ /* Applications can set this property for their toplevel windows, so
+ * this must be propagated to the window managed by the compositor
+ */
+ cw = find_window_for_child_window_in_display (display, event->window);
+ }
+
+ if (!cw)
return;
if (meta_prop_get_cardinal (display, event->window,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]