exwm icon indicating copy to clipboard operation
exwm copied to clipboard

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

Open BettaGeorge opened this issue 10 months ago • 5 comments

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.

BettaGeorge avatar Jun 02 '25 03:06 BettaGeorge

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?

Stebalien avatar Jun 21 '25 19:06 Stebalien

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.

minad avatar Jun 27 '25 14:06 minad

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 avatar Jul 17 '25 07:07 BettaGeorge

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.

BettaGeorge avatar Jul 17 '25 07:07 BettaGeorge

Any updates? I'm not in the loop on how the upgrade process of EXWM works.

BettaGeorge avatar Sep 02 '25 13:09 BettaGeorge