Skip to content

Add a customise option to not grab the keyboard in full screen mode. #137

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

BettaGeorge
Copy link

Especially when using multiple monitors, I am not a fan of EXWM automatically switching X windows to char mode upon entering full screen. I understand the reasoning and think it should remain the default, since the unprepared user might otherwise accidentally open an invisible M-x menu behind their video player and become very sad.

However, I would argue that users who know what they are doing should have the option of staying in line mode. Personally, I often have a full screen video player or game running on one monitor while also using a chat client on another monitor, and if the game is in char mode, I cannot use my regular keybinds to quickly reply to chat messages. I do not want to add those keybinds to exwm-input-global-keys since that would mess up my workflow in windows where I enter char mode on purpose.

I think adding a customise option for this is a small change that has a benefit for at least some users at essentially no performance impact.

PS: Please let me know if in the future I should open an issue first rather than creating a pull request immediately.

@Stebalien
Copy link
Member

I'd actually like to make this the default but, IMO, we should also automatically un-fullscreen the current window whenever the current workspace's frame is reconfigured (window-configuration-change-hook).

On the other hand, I think we can do this in two stages:

  1. Make it configurable but default to char-mode for now (merge this patch).
  2. Implement the "auto-un-fullscreen" feature then consider changing the default.

Thoughts @minad?

@minad
Copy link
Member

minad commented Jun 27, 2025

I am happy with the current default behavior, but we should try your proposal. The option proposed in this PR looks good as first step.

@BettaGeorge
Copy link
Author

I'd actually like to make this the default but, IMO, we should also automatically un-fullscreen the current window whenever the current workspace's frame is reconfigured (window-configuration-change-hook).

That sounds reasonable, I can just create a second pull request after this one is finished. Should be quick enough to add.

@BettaGeorge
Copy link
Author

Although, is not window-configuration-change-hook called when moving the window to a different physical monitor? If i is, I would suggest to make your proposed behaviour configurable because people might still want to move fullscreen windows around.

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

Successfully merging this pull request may close these issues.

3 participants