Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't use keyboard to close popups if the current group has applications #288

Open
chadcatlett opened this issue Oct 23, 2023 · 4 comments

Comments

@chadcatlett
Copy link

Using this example if I'm on a group that has applications on it, hitting escape will not close the popup. I have to switch to an empty group then escape will close the pop-up.

My config is just a slight modification of the default config, I've put it in a gist.

I'm not sure if this is an extras thing or a qtile thing, but I figured I'd start here.

@chadcatlett chadcatlett changed the title Can't close popups if group has applications Can't use keyboard to close popups if the current group has applications Oct 23, 2023
@elParaguayo
Copy link
Owner

Thanks. I'll take a look when I can.

@elParaguayo
Copy link
Owner

I think this is the current expected behaviour. Keyboard controls are only available when it's possible to navigate items on the popup. That example has no focusable controls and so keyboard control is disabled. Clicking on the popup should still close it.

@chadcatlett
Copy link
Author

chadcatlett commented Nov 16, 2023

The _PopupLayout base class does a define Escape to be close, which works on an empty tag. It's only when there is other content visually below the popup that there are issues.

I was curious, should the resulting X11 window created for the popup have any kind of NET_WM_STATE or NET_WM_WINDOW_TYPE atoms?

I also noticed in qtile shell if I use focus() on the window object for the popup, then escape will close it. I'll be honest I don't know much about qtile's backend, but it reminds me of Z-axis issues with object picking in 3d application development. I did notice that inspect() on the window crashes because self._wm_class attribute is missing on the Window.

@elParaguayo
Copy link
Owner

Thanks. Agree that this does sound like a window focusing issue. I'll take a proper look when I can.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants