core/fullscreen: layout_handled: Allow layout managed fullscreens to not block seeking window in direction. default_handled: fix bug - on_focus_under_fullscreen = 2 still cycles FS with focus({direction}) if movefocus_cycles_fullscreen = true - #15569
Conversation
on_focus_under_fullscreen = 2 still cycles FS with focus({direction}) if movefocus_cycles_fullscreen = true
|
concern: if follow_focus = false, the focus moves left/right but it doesn't move back to the FS window again when right/left. This is because the window you're currently focused on - i.e. a window that's currently invisible by alpha is not visibleByAlpha(). This is not a bug: the window is indeed invisible since you're currently focused on a fullscreen and the fade animation made all other tiling windows invisible by alpha. Adding exceptions to this isn't very practical since the function is critical for a lot more things than scrolling. Adding an exception to this with Realistically there is no reason to use window.focus({direction}) when you're in FS when you have a covering FS window in scrolling. You would use layout("") commands to move the viewport. If people complain about this in the future, It's easy enough to slap a "is workspace scroll and is follow_focus false - if so, don't move focus from the covering FS window to begin with" condition there - though the reason i'm not doing this here myself is that I foresee great trouble if an exception is added to "if currently focused on an I don't really have a good solution to this atm other than rewriting the focus move in direction logic significantly. Other than this, it's gtg |
|
Codeowners approval required for this PR: |
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b385a001e8
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
… FS even when on_focus_under_fullscreen = 2
b385a00 to
2c1f00c
Compare
…g window in direction, and other fixes (hyprwm#15569)
Describe your PR, what does it fix/add?
Allow moving the viewport with focus({direction}) when focused on a fullscreen window when
follow_focus = trueon scrolling layout (and other layouts that may implement their own FS behaviours in the future)Fixes
movefocus_cycles_fullscreenandon_focus_under_fullscreento behave consistently:On default handled
window.focus({direction}) is beholden to
on_focus_under_fullscreenandmovefocus_cycles_fullscreen.window.focus({direction})to change focus when you have a covering FS window,movefocus_cycles_fullscreenmust NOT be false andon_focus_under_fullscreenmust NOT be 0. Ifmovefocus_cycles_fullscreenfalse, focus move is disallowed regardless ofon_focus_under_fullscreen.window.focus({window}) is beholden to
on_focus_under_fullscreenOn layout handled:
on_focus_under_fullscreen's different config options have no effect - it just allows you to move focus to another window. This is because scrolling is, well, scrolling; you can scroll away from an FS windowIs there anything you want to mention? (unchecked code, possible bugs, found problems, breaking compatibility, etc.)
No
Is it ready for merging, or does it need work?