The issue seems to be that the gnome-screensaver watches for "visibility_notify_event" in gs-window-x11.c
For unredirect fullscreenwindows it get:
[gs_window_real_visibility_notify_event] gs-window-x11.c:2059 (21:02:19): gs_window_real_visibility_notify_event(): 7bf080 unobscured [gs_window_real_visibility_notify_event] gs-window-x11.c:2059 (21:02:19): gs_window_real_visibility_notify_event(): 7bf080 fully_obscured [gs_window_real_visibility_notify_event] gs-window-x11.c:2059 (21:02:20): gs_window_real_visibility_notify_event(): 7bf080 unobscured
but without "unredirect fullscreen windows" its: [gs_window_real_visibility_notify_event] gs-window-x11.c:2059 (21:07:02): gs_window_real_visibility_notify_event(): 7bf260 unobscured
Now in gs-manager.c window_obscured_cb () is run and it tests if the window is obscured. If that is the case, it requests a unlock.
The issue seems to be that the gnome-screensaver watches for "visibility_ notify_ event" in gs-window-x11.c
For unredirect fullscreenwindows it get:
[gs_window_ real_visibility _notify_ event] gs-window- x11.c:2059 (21:02:19): gs_window_ real_visibility _notify_ event() : 7bf080 unobscured real_visibility _notify_ event] gs-window- x11.c:2059 (21:02:19): gs_window_ real_visibility _notify_ event() : 7bf080 fully_obscured real_visibility _notify_ event] gs-window- x11.c:2059 (21:02:20): gs_window_ real_visibility _notify_ event() : 7bf080 unobscured
[gs_window_
[gs_window_
but without "unredirect fullscreen windows" its: real_visibility _notify_ event] gs-window- x11.c:2059 (21:07:02): gs_window_ real_visibility _notify_ event() : 7bf260 unobscured
[gs_window_
Now in gs-manager.c window_obscured_cb () is run and it tests if the window is obscured. If that is the case, it requests a unlock.