summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlberts Muktupāvels <alberts.muktupavels@gmail.com>2017-07-04 11:57:28 +0300
committerAlberts Muktupāvels <alberts.muktupavels@gmail.com>2017-07-04 11:57:28 +0300
commit77af9bf109260addd4294f5fa0a2a20b13204a83 (patch)
tree167e7de31f7d4bfdd9475af73501ef0e6465172f
parent1de8fdb4804b5e28965d454a642c9eab2bf5636c (diff)
downloadmetacity-77af9bf109260addd4294f5fa0a2a20b13204a83.tar.gz
xrender: simplify process_property_notify
-rw-r--r--src/compositor/meta-compositor-xrender.c29
1 files changed, 13 insertions, 16 deletions
diff --git a/src/compositor/meta-compositor-xrender.c b/src/compositor/meta-compositor-xrender.c
index e2daec47..7e3766b0 100644
--- a/src/compositor/meta-compositor-xrender.c
+++ b/src/compositor/meta-compositor-xrender.c
@@ -2169,25 +2169,22 @@ process_property_notify (MetaCompositorXRender *xrender,
if (event->atom == display->atom__XROOTPMAP_ID ||
event->atom == display->atom__XSETROOT_ID)
{
- screen = meta_display_screen_for_root (display, event->window);
- if (screen)
- {
- Window xroot = meta_screen_get_xroot (screen);
-
- if (xrender->root_tile)
- {
- XClearArea (xdisplay, xroot, 0, 0, 0, 0, TRUE);
- XRenderFreePicture (xdisplay, xrender->root_tile);
- xrender->root_tile = None;
+ screen = meta_display_get_screen (display);
- /* Damage the whole screen as we may need to redraw the
- background ourselves */
- damage_screen (xrender);
+ if (event->window == meta_screen_get_xroot (screen) &&
+ xrender->root_tile != None)
+ {
+ XClearArea (xdisplay, event->window, 0, 0, 0, 0, TRUE);
+ XRenderFreePicture (xdisplay, xrender->root_tile);
+ xrender->root_tile = None;
- add_repair (xrender);
+ /* Damage the whole screen as we may need to redraw the
+ * background ourselves
+ */
+ damage_screen (xrender);
- return;
- }
+ add_repair (xrender);
+ return;
}
}