aboutsummaryrefslogtreecommitdiff
path: root/src/Internal
diff options
context:
space:
mode:
authorJosh Rahm <rahm@google.com>2020-02-07 15:27:52 -0700
committerJosh Rahm <rahm@google.com>2020-02-07 15:27:52 -0700
commit23dfddad5fdf53e8da332ce9730afb7f11e7c21b (patch)
tree9294a56446bcf3a89faedba41b6cd18906766e90 /src/Internal
parentbdc2567c9fa936179a57f77750fec6db1de505e7 (diff)
downloadrde-23dfddad5fdf53e8da332ce9730afb7f11e7c21b.tar.gz
rde-23dfddad5fdf53e8da332ce9730afb7f11e7c21b.tar.bz2
rde-23dfddad5fdf53e8da332ce9730afb7f11e7c21b.zip
Add keys to shift betweev Xinerama screens
Diffstat (limited to 'src/Internal')
-rw-r--r--src/Internal/Keys.hs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/Internal/Keys.hs b/src/Internal/Keys.hs
index c1d1c70..d04fc42 100644
--- a/src/Internal/Keys.hs
+++ b/src/Internal/Keys.hs
@@ -62,6 +62,10 @@ newKeys =
then t
else printf "%s - %s" a t
+ screenJump fn n = do
+ saveLastMark markContext
+ flip whenJust (windows . fn) =<< screenWorkspace n
+
windowJump = do
windowTitlesToWinId <- withWindowSet $ \ss ->
Map.fromList <$>
@@ -118,6 +122,14 @@ newKeys =
, ((modm, xK_Tab), windows W.focusDown)
, ((modm .|. shiftMask, xK_Tab), windows W.focusUp)
+
+ , ((modm, xK_a), screenJump W.view 2)
+ , ((modm, xK_o), screenJump W.view 0)
+ , ((modm, xK_e), screenJump W.view 1)
+
+ , ((modm .|. shiftMask, xK_a), screenJump W.shift 2)
+ , ((modm .|. shiftMask, xK_o), screenJump W.shift 0)
+ , ((modm .|. shiftMask, xK_e), screenJump W.shift 1)
]
mapNumbersAndAlpha :: KeyMask -> (Char -> X ()) -> Map (KeyMask, KeySym) (X ())