-
-
Notifications
You must be signed in to change notification settings - Fork 279
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
Add (un)fullscreen hooks and float-restoring toggleFullFloat action #768
Conversation
Interesting. We wait I remember |
Yeah, I'll get it finished and pushed here soon-ish.
I'm aware of that one but didn't use it as a storage backend to avoid conflicts. Although I must admit I can't think of a specific example of how that conflict would actually behave in practice, off the top of my head. (It's a bit unfortunate that this PositionStore* stuff is split into three modules. It kinda looks like it may be reused by other modules, but X.U.PositionStore is just an implementation detail of X.L.PositionStoreFloat.) |
23e3d02
to
636c7a2
Compare
636c7a2
to
d19450b
Compare
soon-ish™ :-) Anyway, I've done the docs today and pushed it for review. Been running this for months with no trouble. Sorry for the wait. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This look fine to me; thank you for getting to it 🎉
XMonad/Actions/ToggleFullFloat.hs
Outdated
-- The main use-case is to make 'ewmhFullscreen' (re)store the size and | ||
-- position of floating windows instead of just uncontitionally sinking them | ||
-- into the floating layer. To enable this, you'll need this in your | ||
-- @~\/.xmonad\/xmonad.hs@: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know that this is almost canonical at this point, but with the advent of proper XDG support perhaps we could just speak of an @xmonad.hs@
here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh yes, indeed! Changed here. Feel free to push a change across the entire repo if/when you feel like it. :-)
XMonad/Actions/ToggleFullFloat.hs
Outdated
gcToggleFullFloat c = c { startupHook = startupHook c <> gcToggleFullFloatStartupHook | ||
, handleEventHook = handleEventHook c <> gcToggleFullFloatEventHook } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems like an indentation misake?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, that's what you get if you sed
and forget that we're formatting stuff manually here :-)
Fairly straightforward, just add two hooks for (un)fullscreening. There are multiple motivations for this: * Users are calling for unfullscreened windows to revert back to their original location if they were floating. * XMonad.Layout.Fullscreen uses some deprecated exports from XMonad.Hooks.EwmhDesktops and reimplements fullscreenEventHook. This commit only adds the hooks. Neither of the motivations are dealt with yet, so the docs are a bit terse still. Related: xmonad#456 Related: xmonad#394 Related: xmonad#626
Fixes: xmonad#456 Related: xmonad#394 Related: xmonad#626
Description
X.H.EwmhDesktops: Add (un)fullscreen hooks
Fairly straightforward, just add two hooks for (un)fullscreening. There are multiple motivations for this:
Users are calling for unfullscreened windows to revert back to their original location if they were floating.
XMonad.Layout.Fullscreen uses some deprecated exports from XMonad.Hooks.EwmhDesktops and reimplements fullscreenEventHook.
This commit only adds the hooks. Neither of the motivations are dealt with yet, so the docs are a bit terse still.
Add X.A.ToggleFullFloat - state-remembering fullscreen hooks
CHANGES: Document X.A.ToggleFullFloat and setEwmhFullscreenHooks
Related: #456
Related: #394
Related: #626
The second motivation is still TODO: X.L.Fullscreen should be refactored to use this (probably in a separate PR because there's some legacy code I can't be arsed to actually try to use anytime soon).
Checklist
I've read CONTRIBUTING.md
I've considered how to best test these changes (property, unit, manually, ...) and concluded: I've been running this for a long while.
I updated the
CHANGES.md
file