Merge pull request #629 from liskin/managedocks-hooks-deprecation

X.H.ManageDocks: Deprecate individual hooks
This commit is contained in:
Tomáš Janoušek 2021-10-22 20:48:16 +01:00 committed by GitHub
commit 0f6403c2e9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 3 deletions

View File

@ -495,6 +495,10 @@
- Restored compatibility with pre-0.13 configs by making the startup hook - Restored compatibility with pre-0.13 configs by making the startup hook
unnecessary for correct functioning (strut cache is initialized on-demand). unnecessary for correct functioning (strut cache is initialized on-demand).
This is a temporary measure, however. The individual hooks are now
deprecated in favor of the `docks` combinator, `xmonad --recompile` now
reports deprecation warnings, and the hooks will be removed soon.
- Fixed ignoring of strut updates from override-redirect windows, which is - Fixed ignoring of strut updates from override-redirect windows, which is
default for xmobar. default for xmobar.

View File

@ -17,7 +17,6 @@ module XMonad.Hooks.ManageDocks (
-- * Usage -- * Usage
-- $usage -- $usage
docks, manageDocks, checkDock, AvoidStruts(..), avoidStruts, avoidStrutsOn, docks, manageDocks, checkDock, AvoidStruts(..), avoidStruts, avoidStrutsOn,
docksEventHook, docksStartupHook,
ToggleStruts(..), ToggleStruts(..),
SetStruts(..), SetStruts(..),
module XMonad.Util.Types, module XMonad.Util.Types,
@ -28,8 +27,11 @@ module XMonad.Hooks.ManageDocks (
RectC(..), RectC(..),
#endif #endif
-- for XMonad.Actions.FloatSnap -- * For developers of other modules ("XMonad.Actions.FloatSnap")
calcGap calcGap,
-- * Standalone hooks (deprecated)
docksEventHook, docksStartupHook,
) where ) where
@ -157,6 +159,7 @@ checkDock = ask >>= \w -> liftX $ do
-- | Whenever a new dock appears, refresh the layout immediately to avoid the -- | Whenever a new dock appears, refresh the layout immediately to avoid the
-- new dock. -- new dock.
{-# DEPRECATED docksEventHook "Use docks instead." #-}
docksEventHook :: Event -> X All docksEventHook :: Event -> X All
docksEventHook MapNotifyEvent{ ev_window = w } = do docksEventHook MapNotifyEvent{ ev_window = w } = do
whenX (runQuery checkDock w <&&> (not <$> isClient w)) $ whenX (runQuery checkDock w <&&> (not <$> isClient w)) $
@ -174,6 +177,7 @@ docksEventHook DestroyWindowEvent{ ev_window = w } = do
return (All True) return (All True)
docksEventHook _ = return (All True) docksEventHook _ = return (All True)
{-# DEPRECATED docksStartupHook "Use docks instead." #-}
docksStartupHook :: X () docksStartupHook :: X ()
docksStartupHook = void getStrutCache docksStartupHook = void getStrutCache