summaryrefslogtreecommitdiff
path: root/src/events.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/events.c')
-rw-r--r--src/events.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/events.c b/src/events.c
index 7a482d3..9f5e5bb 100644
--- a/src/events.c
+++ b/src/events.c
@@ -230,12 +230,12 @@ handle_property_notify(event_t * ev)
D_EVENTS(("handle_property_notify(ev [0x%08x] on window 0x%08x)\n", ev, ev->xany.window));
if (background_is_trans()) {
- if (ev->xany.window == TermWin.parent) {
+ if ((ev->xany.window == TermWin.parent) || (ev->xany.window == Xroot)) {
prop = XInternAtom(Xdisplay, "_WIN_WORKSPACE", True);
+ D_EVENTS(("handle_property_notify(): On %s. prop == 0x%08x, ev->xproperty.atom == 0x%08x\n", ((ev->xany.window == Xroot) ? "the root window" : "TermWin.parent"), (int) prop, (int) ev->xproperty.atom));
if ((prop == None) || (ev->xproperty.atom != prop)) {
return 0;
}
- XSelectInput(Xdisplay, desktop_window, None);
if (desktop_pixmap != None) {
free_desktop_pixmap();
}
@@ -244,10 +244,10 @@ handle_property_notify(event_t * ev)
FOREACH_IMAGE(if (image_mode_is(idx, MODE_TRANS)) {image_set_mode(idx, MODE_IMAGE); image_allow_mode(idx, ALLOW_IMAGE);});
return 1;
}
- XSelectInput(Xdisplay, desktop_window, PropertyChangeMask);
redraw_all_images();
} else if (ev->xany.window == desktop_window) {
prop = XInternAtom(Xdisplay, "_XROOTPMAP_ID", True);
+ D_EVENTS(("handle_property_notify(): On TermWin.parent. prop == 0x%08x, ev->xproperty.atom == 0x%08x\n", (int) prop, (int) ev->xproperty.atom));
if ((prop == None) || (ev->xproperty.atom != prop)) {
return 0;
}