mirror of
https://github.com/xmonad/xmonad-contrib.git
synced 2025-08-05 22:51:52 -07:00
Merge pull request #257 from skewerr/master
Added two actions to X.A.DynamicWorkspaceOrder
This commit is contained in:
@@ -323,6 +323,11 @@
|
|||||||
- Added optional `ppVisibleNoWindows` to differentiate between empty
|
- Added optional `ppVisibleNoWindows` to differentiate between empty
|
||||||
and non-empty visible workspaces in pretty printing.
|
and non-empty visible workspaces in pretty printing.
|
||||||
|
|
||||||
|
* `XMonad.Actions.DynamicWorkspaceOrder`
|
||||||
|
|
||||||
|
- Added `updateName` and `removeName` to better control ordering when
|
||||||
|
workspace names are changed or workspaces are removed.
|
||||||
|
|
||||||
## 0.13 (February 10, 2017)
|
## 0.13 (February 10, 2017)
|
||||||
|
|
||||||
### Breaking Changes
|
### Breaking Changes
|
||||||
|
@@ -23,6 +23,8 @@ module XMonad.Actions.DynamicWorkspaceOrder
|
|||||||
getWsCompareByOrder
|
getWsCompareByOrder
|
||||||
, getSortByOrder
|
, getSortByOrder
|
||||||
, swapWith
|
, swapWith
|
||||||
|
, updateName
|
||||||
|
, removeName
|
||||||
|
|
||||||
, moveTo
|
, moveTo
|
||||||
, moveToGreedy
|
, moveToGreedy
|
||||||
@@ -152,6 +154,21 @@ swapOrder w1 w2 = do
|
|||||||
XS.modify (withWSO (M.insert w1 i2 . M.insert w2 i1))
|
XS.modify (withWSO (M.insert w1 i2 . M.insert w2 i1))
|
||||||
windows id -- force a status bar update
|
windows id -- force a status bar update
|
||||||
|
|
||||||
|
-- | Update the name of a workspace in the stored order.
|
||||||
|
updateName :: WorkspaceId -> WorkspaceId -> X ()
|
||||||
|
updateName oldId newId = XS.modify . withWSO $ changeKey oldId newId
|
||||||
|
|
||||||
|
-- | Remove a workspace from the stored order.
|
||||||
|
removeName :: WorkspaceId -> X ()
|
||||||
|
removeName = XS.modify . withWSO . M.delete
|
||||||
|
|
||||||
|
-- | Update a key in a Map.
|
||||||
|
changeKey :: Ord k => k -> k -> M.Map k a -> M.Map k a
|
||||||
|
changeKey oldKey newKey oldMap =
|
||||||
|
case M.updateLookupWithKey (\_ _ -> Nothing) oldKey oldMap of
|
||||||
|
(Nothing, _) -> oldMap
|
||||||
|
(Just val, newMap) -> M.insert newKey val newMap
|
||||||
|
|
||||||
-- | View the next workspace of the given type in the given direction,
|
-- | View the next workspace of the given type in the given direction,
|
||||||
-- where \"next\" is determined using the dynamic workspace order.
|
-- where \"next\" is determined using the dynamic workspace order.
|
||||||
moveTo :: Direction1D -> WSType -> X ()
|
moveTo :: Direction1D -> WSType -> X ()
|
||||||
|
Reference in New Issue
Block a user