aboutsummaryrefslogtreecommitdiff
path: root/src/Rahm/Desktop/Keys.hs
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2026-03-01 15:50:03 -0700
committerJosh Rahm <joshuarahm@gmail.com>2026-03-01 15:50:03 -0700
commit9839efd016f43c892e935c7d4063e30c23b81e1f (patch)
tree0431ff646b7a273f6a40e04ebe40931faafdcbd1 /src/Rahm/Desktop/Keys.hs
parent2bcd8842dab3a8e62b5ad7cba6cbfbe3fc648f0d (diff)
downloadrde-9839efd016f43c892e935c7d4063e30c23b81e1f.tar.gz
rde-9839efd016f43c892e935c7d4063e30c23b81e1f.tar.bz2
rde-9839efd016f43c892e935c7d4063e30c23b81e1f.zip
[feat] change <M-a> behaivor. Add {} motions.
<M-a> now iterates through the screens as they're ordered. (top-bottom, left-right). } - new workspace motion to go through visibly ordered workspaces { - reverse of }
Diffstat (limited to 'src/Rahm/Desktop/Keys.hs')
-rw-r--r--src/Rahm/Desktop/Keys.hs18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/Rahm/Desktop/Keys.hs b/src/Rahm/Desktop/Keys.hs
index 4a2a426..77c3ca3 100644
--- a/src/Rahm/Desktop/Keys.hs
+++ b/src/Rahm/Desktop/Keys.hs
@@ -1,5 +1,6 @@
module Rahm.Desktop.Keys (applyKeys) where
+import Control.Applicative
import Control.Monad
( filterM,
forM_,
@@ -59,6 +60,7 @@ import Rahm.Desktop.Common
setBorderWidth,
)
import Rahm.Desktop.DMenu (runDMenu)
+import Rahm.Desktop.Dragging (windowsUnderCursor)
import qualified Rahm.Desktop.Dragging as D
import Rahm.Desktop.History
( historyBack,
@@ -66,9 +68,9 @@ import Rahm.Desktop.History
jumpToLastLocation,
)
import Rahm.Desktop.Keys.Dsl2
-import Rahm.Desktop.Keys.Local
import Rahm.Desktop.Keys.Grab (KeySymOrKeyCode (..))
import Rahm.Desktop.Keys.KeyFeed (execKeyFeed, liftXToFeed, pushKey, runKeyFeed, runKeyFeedX)
+import Rahm.Desktop.Keys.Local
import Rahm.Desktop.Keys.Wml
import Rahm.Desktop.Layout (nLayouts)
import Rahm.Desktop.Layout.ConsistentMosaic
@@ -150,8 +152,6 @@ import XMonad.Layout.Spacing
import XMonad.Util.Run (hPutStrLn, safeSpawn, spawnPipe)
import XMonad.Util.WindowProperties
import Prelude hiding ((!!))
-import Rahm.Desktop.Dragging (windowsUnderCursor)
-import Control.Applicative
type KeyMap l = XConfig l -> Map (KeyMask, KeySym) (X ())
@@ -166,11 +166,11 @@ safeSpawnX = safeSpawn
selectedWindowsColor = BorderColor "#00ffff" "#00ffff"
decreaseVolume = do
- wins <- (<|>[0]) <$> windowsUnderCursor
+ wins <- (<|> [0]) <$> windowsUnderCursor
spawnX $ printf "set-app-volume.sh %d --down" (head wins)
increaseVolume = do
- wins <- (<|>[0]) <$> windowsUnderCursor
+ wins <- (<|> [0]) <$> windowsUnderCursor
spawnX $ printf "set-app-volume.sh %d --up" (head wins)
playPause = spawnX "media-control play"
@@ -428,16 +428,16 @@ bindings = do
bind xK_a $ do
justMod $
- doc "Cycle focus forward through the screens. (Synonymous with f,.)" $ do
+ doc "Cycle focus to the next workspace in ordered list. (Synonymous with }.)" $ do
runMaybeT_ $ do
- ws' <- workspaceForStringT ",."
+ ws' <- workspaceForStringT "}."
ws <- MaybeT . return $ workspaceName ws'
lift $ windows $ W.view ws
shiftMod $
- doc "Cycle focus backward through the screens. (Synonymous with f;.)" $ do
+ doc "Cycle focus to the previous workspace in ordered list. (Synonymous with {.)" $ do
runMaybeT_ $ do
- ws' <- workspaceForStringT ";."
+ ws' <- workspaceForStringT "{."
ws <- MaybeT . return $ workspaceName ws'
lift $ windows $ W.view ws