qtile: Windows spawned after certain screen lockers wrongly drawn on top

When I lock my screen with xscreensaver-command -lock and then send myself a notification, the notification will appear over the locked screen.

Note that I do not use the notification factilities provided with qtile but run my own notification daemon from ~/.xsession (xfce4-notifyd being started on demand by notify-send).

xscreensaver-command -lock; sleep 3; notify-send Hullo 'I am on top'                                                                                

This is also true for notifications from chromium, and might pose a mild security issue because of potential sensitive contents (i.e. from google mail), depending on user setup.

I’ve verified that the notification windows are not override-redirect windows (if they were, it appears that the only fix would be to stop using those programs, as the window manager can’t do anything about them).

We’ve discussed this on irc before:

12:32       TauPan > Hm, I just noticed that I'm affected by this: http://www.jwz.org/xscreensaver/faq.html#popup-windows
12:48       TauPan > I've just checked, and the chrome notifications that appear over xscreensaver are *not* override-redirect windows, just _NET_WM_STATE(ATOM) = _NET_WM_STATE_SKIP_TASKBAR, 
                     _NET_WM_STATE_ABOVE
12:49       TauPan > So the fix proposed by jwz to map windows with XRestackWindows instead of XRaiseWindow might apply here.
12:49       TauPan > (but I didn't inspect qtile code yet.)
[...]
17:32        tych0@> TauPan: interesting, i didn't see either in our code, actually
[...]
09:42       TauPan > tych0: you mean, xtile uses neither XRestackWindows nor XRaiseWindow (or whatever their equivalents in xcb are)?
[...]
18:01        tych0@> TauPan: well, we don't call their xcb equivalents, we might stack the windows differently, though
18:01        tych0@> now that i think abou tit, we probably do
[...]
09:29       TauPan > tych0: it's easy to reproduce for me... I lock my screen with xscreensaver and then send myself a notification via Android: Do Button -> Pushbullet and the notification 
                     will appear on top of the screensaver. It's probably even easier with xscreensaver-command -lock; sleep 3; notify-send Hullo 'I am on top' 
09:30       TauPan > tych0: That works... I just verified it.
09:30       TauPan > tych0: (note that I do not use qtiles notification widget but run xfce4-notifyd
09:30       TauPan > )
[...]
16:50        tych0@> TauPan: yeah, i don't doubt that it's a bug :)
16:50        tych0@> TauPan: do you mind filing it?
16:52       TauPan > tych0: no problem, sorry, I was just lazy... will file it tomorrow

About this issue

  • Original URL
  • State: closed
  • Created 9 years ago
  • Reactions: 1
  • Comments: 21 (15 by maintainers)

Commits related to this issue

Most upvoted comments

Fixed by #3409