diff options
author | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2017-07-04 11:57:28 +0300 |
---|---|---|
committer | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2017-07-04 11:57:28 +0300 |
commit | 77af9bf109260addd4294f5fa0a2a20b13204a83 (patch) | |
tree | 167e7de31f7d4bfdd9475af73501ef0e6465172f | |
parent | 1de8fdb4804b5e28965d454a642c9eab2bf5636c (diff) | |
download | metacity-77af9bf109260addd4294f5fa0a2a20b13204a83.tar.gz |
xrender: simplify process_property_notify
-rw-r--r-- | src/compositor/meta-compositor-xrender.c | 29 |
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; } } |