How do I take a screenshot in dom0 while the menu is open?

Continuing the discussion from Running QubesOS in QubesOS:

open the menubar, hit [PrtScn] key :slight_smile:

If that didn’t work, go to Settings | Keyboard | Application Shortcuts and make sure xfce4-screenshooter -f is assigned to the Print shortcut.

1 Like

Taking a screenshot is possible, it’s just the hotkey that’s dysfunctional because the menu is already grabbing the keyboard while it is open. You could instead queue up a delayed screenshot (e.g. System Tools → Screenshot → Delay before capturing) and then open the menu.

1 Like

Pasting here from the other thread:

the hotkey that’s dysfunctional because the menu is already grabbing the keyboard while it is open

I’ve also noticed that this blocks the screen from locking as well.

For example, I have my screen lock when my laptop lid is closed, but a few times per year I realize when I come back to an unattended computer with the laptop lid closed, the screen is not locked because the application menu was open. I’ve been meaning to create a bug report about this for a while.

Do you know what exactly is the root cause of some actions (like printscreen and lockscreen) being blocked when the application menu is open?

The application menu and similar windows without a title bar (“override redirect” windows that aren’t managed by the window manager) are usually calling xcb_grab_keyboard() or XGrabKeyboard() to allow navigation with arrow keys etc. When the lock screen attempts to grab the keyboard too it fails (because only one X11 client can do it at a time) and quits.

As for hotkey listeners calling xcb_grab_key() or XGrabKey(), IIUC those just get preempted by anything else grabbing the whole keyboard.

Unfortunately this is a classic X11 nuisance that’s not easily fixable, unless it’s by switching to a text console based lock screen such as physlock, or eventually migrating from X11 to Wayland.