diff options
Diffstat (limited to 'src/Rahm/Desktop/Keys')
| -rw-r--r-- | src/Rahm/Desktop/Keys/Wml.hs | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/Rahm/Desktop/Keys/Wml.hs b/src/Rahm/Desktop/Keys/Wml.hs index 0c09fd1..792ff74 100644 --- a/src/Rahm/Desktop/Keys/Wml.hs +++ b/src/Rahm/Desktop/Keys/Wml.hs @@ -93,7 +93,7 @@ import Rahm.Desktop.History ) import Rahm.Desktop.Keys.KeyFeed import Rahm.Desktop.Layout.PinWindow (pinnedWindows) -import Rahm.Desktop.Logger (LogLevel (Info, Trace), logs) +import Rahm.Desktop.Logger import Rahm.Desktop.Marking ( farLeftWindow, farRightWindow, @@ -105,14 +105,6 @@ import Rahm.Desktop.Marking import qualified Rahm.Desktop.StackSet as W import Rahm.Desktop.Submap (mapNextStringWithKeysym) import Rahm.Desktop.Workspaces - ( accompaningWorkspace, - adjacentWorkspace, - adjacentWorkspaceNotVisible, - getHorizontallyOrderedScreens, - next, - prev, - workspaceWithWindow, - ) import Rahm.Desktop.XMobarLog.PendingBuffer ( addStringToPendingBuffer, setPendingBuffer, @@ -474,12 +466,21 @@ readNextWorkspace = screens <- liftXToFeed $ map (W.tag . W.workspace . snd) - <$> withWindowSet (return . getHorizontallyOrderedScreens) + <$> withWindowSet (return . getScreensOnSamePlane) let (_, rest) = break ((== workspaceName ws) . Just) (screens ++ screens) justWorkspace <$> hoistMaybe (head $ tail rest) + -- Workspace on the screen above the current workspace.. + (_, _, "+") -> do + screens <- + liftXToFeed $ + map (W.tag . W.workspace . snd) + <$> withWindowSet (return . getScreensOnDifferentPlane) + + justWorkspace <$> hoistMaybe (head screens) + -- Workspace to the next screen to the left of the next workspace. (_, _, ";") -> do ws <- readNextWorkspace |