diff --git a/nix/configurations/vanadium/home/xmonad/xmonad.hs b/nix/configurations/vanadium/home/xmonad/xmonad.hs index 898245aa..24195a86 100644 --- a/nix/configurations/vanadium/home/xmonad/xmonad.hs +++ b/nix/configurations/vanadium/home/xmonad/xmonad.hs @@ -87,6 +87,18 @@ isFirefox = className =? "firefox" isSpotify :: Query Bool isSpotify = isFirefox <&&> title ~? "Spotify" +isYouTube :: Query Bool +isYouTube = isFirefox <&&> title ~? "YouTube" + +isWhatsApp :: Query Bool +isWhatsApp = isFirefox <&&> title ~? "WhatsApp" + +isSignal :: Query Bool +isSignal = className =? "Signal" + +isElement :: Query Bool +isElement = isFirefox <&&> title ~? "Element" + isFirefoxPip :: Query Bool isFirefoxPip = isFirefox <&&> title =? "Picture-in-Picture" @@ -111,6 +123,7 @@ myActivateHook = composeOne [ isDiscord -?> mempty , isEvolution -?> mempty + , isSignal -?> mempty , isSioyek -?> mempty , isFeh -?> mempty , return True -?> doFocus @@ -123,8 +136,9 @@ myManageHook = , isFeh --> customFloating buttomRightFloat , isMinder --> customFloating centeredFloat , isFirefoxPip --> doFloat - , isDiscord --> (doF $ W.shift chatWS) - , isEvolution --> (doF $ W.shift chatWS) + , isDiscord --> doShift chatWS + , isEvolution --> doShift chatWS + , isSignal --> doShift chatWS ] <> composeOne [ isFirefox -?> insertPosition Master Newer @@ -137,8 +151,11 @@ myEventHandleHook :: Event -> X All myEventHandleHook = -- TODO: is there a way to always open certain sites in new windows in firefox? onTitleChange $ composeAll - [ isSpotify --> doShiftAndViewIfMoved multimediaWS - , isDiscord --> doShiftAndViewIfMoved chatWS + [ isSpotify --> doShiftAndViewIfMoved multimediaWS + , isYouTube --> doShiftAndViewIfMoved multimediaWS + , isDiscord --> doShiftAndViewIfMoved chatWS + , isWhatsApp --> doShiftAndViewIfMoved chatWS + , isElement --> doShiftAndViewIfMoved chatWS ] -- If the title changes in the background, we don't want to greedy view that workspace.