Merge pull request #877 from ilya-bobyr/master

X.H.ManageHelpers: `isNotification` predicate
This commit is contained in:
Tomáš Janoušek 2024-03-04 12:28:38 +00:00 committed by GitHub
commit de5ef6cabd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 17 additions and 2 deletions

View File

@ -7,7 +7,7 @@
### New Modules ### New Modules
* `XMonad.Actions.Profiles`. * `XMonad.Actions.Profiles`.
- Group workspaces by similarity. Usefull when one has lots - Group workspaces by similarity. Usefull when one has lots
of workspaces and uses only a couple per unit of work. of workspaces and uses only a couple per unit of work.
@ -19,9 +19,14 @@
- Fixed `checkKeymap` warning that all keybindings are duplicates. - Fixed `checkKeymap` warning that all keybindings are duplicates.
* `XMonad.Hooks.ManageHelpers`
- Added `isNotification` predicate to check for windows with
`_NET_WM_WINDOW_TYPE` property of `_NET_WM_WINDOW_TYPE_NOTIFICATION`.
### Other changes ### Other changes
## 0.18.0 (February 3, 20 ## 0.18.0 (February 3, 2024)
### Breaking Changes ### Breaking Changes

View File

@ -51,6 +51,7 @@ module XMonad.Hooks.ManageHelpers (
isFullscreen, isFullscreen,
isMinimized, isMinimized,
isDialog, isDialog,
isNotification,
pid, pid,
desktop, desktop,
transientTo, transientTo,
@ -191,9 +192,18 @@ isMinimized :: Query Bool
isMinimized = isInProperty "_NET_WM_STATE" "_NET_WM_STATE_HIDDEN" isMinimized = isInProperty "_NET_WM_STATE" "_NET_WM_STATE_HIDDEN"
-- | A predicate to check whether a window is a dialog. -- | A predicate to check whether a window is a dialog.
--
-- See <https://specifications.freedesktop.org/wm-spec/wm-spec-1.5.html#idm46485863906176>.
isDialog :: Query Bool isDialog :: Query Bool
isDialog = isInProperty "_NET_WM_WINDOW_TYPE" "_NET_WM_WINDOW_TYPE_DIALOG" isDialog = isInProperty "_NET_WM_WINDOW_TYPE" "_NET_WM_WINDOW_TYPE_DIALOG"
-- | A predicate to check whether a window is a notification.
--
-- See <https://specifications.freedesktop.org/wm-spec/wm-spec-1.5.html#idm46485863906176>.
isNotification :: Query Bool
isNotification =
isInProperty "_NET_WM_WINDOW_TYPE" "_NET_WM_WINDOW_TYPE_NOTIFICATION"
-- | This function returns 'Just' the @_NET_WM_PID@ property for a -- | This function returns 'Just' the @_NET_WM_PID@ property for a
-- particular window if set, 'Nothing' otherwise. -- particular window if set, 'Nothing' otherwise.
-- --