[xmonad] darcs patch: new workspace sorting function in
TopicSpace
Gwern Branwen
gwern0 at gmail.com
Mon Mar 29 11:33:24 EDT 2010
On Mon, Dec 28, 2009 at 8:50 PM, Brent Yorgey <byorgey at seas.upenn.edu> wrote:
> Attached is a patch which adds a new exported function to TopicSpace,
> appropriate for providing as the ppSort field of a PP DynamicLog
> record, which sorts workspaces by history. The current facilities
> provided by TopicSpace for interfacing with DynamicLog are much too
> monolithic; this patch adds functionality that I want (and which
> others might find useful) but it really ought to be completely
> refactored to provide many smaller components that users can assemble
> however they like.
>
> -Brent
If no one objects within 14 days, I will apply this.
--
gwern
-------------- next part --------------
Mon Dec 28 20:44:16 EST 2009 Brent Yorgey <byorgey at cis.upenn.edu>
* X.A.TopicSpace: export new sortWSByHistory function for sorting workspaces with visible workspaces first, then hidden workspaces sorted by history.
New patches:
[X.A.TopicSpace: export new sortWSByHistory function for sorting workspaces with visible workspaces first, then hidden workspaces sorted by history.
Brent Yorgey <byorgey at cis.upenn.edu>**20091229014416
Ignore-this: 57db541a91b58b66eb04c8468f8be6ce
] {
hunk ./XMonad/Actions/TopicSpace.hs 29
, getLastFocusedTopics
, setLastFocusedTopic
, pprWindowSet
+ , sortWSByHistory
, topicActionWithPrompt
, topicAction
, currentTopicAction
hunk ./XMonad/Actions/TopicSpace.hs 45
import XMonad
import Data.List
-import Data.Maybe (fromMaybe, isNothing, listToMaybe)
+import Data.Maybe (fromMaybe, isNothing, listToMaybe, fromJust)
import Data.Ord
import qualified Data.Map as M
import Control.Monad ((=<<),liftM2,when,unless,replicateM_)
hunk ./XMonad/Actions/TopicSpace.hs 63
import XMonad.Util.Run (spawnPipe)
import qualified XMonad.Util.ExtensibleState as XS
+import qualified XMonad.Util.WorkspaceCompare as WC
-- $overview
-- This module allows to organize your workspaces on a precise topic basis. So
hunk ./XMonad/Actions/TopicSpace.hs 255
sortWindows = take (maxDepth - 1) . sortBy (comparing $ fromMaybe maxDepth . depth . W.tag)
return $ DL.pprWindowSet sortWindows urgents pp' winset
+-- | Sort workspaces with currently displayed workspaces first,
+-- followed by hidden workspaces ordered by history, followed by any
+-- other workspaces. Appropriate for providing as the 'ppSort'
+-- field of a 'PP' record from "XMonad.Hooks.DynamicLog".
+sortWSByHistory :: X ([WindowSpace] -> [WindowSpace])
+sortWSByHistory = WC.mkWsSort cmpHist where
+ cmpHist = do
+ lastWs <- getLastFocusedTopics
+ cmpIndex <- WC.getWsCompare
+ w <- gets windowset
+ let depth topic = elemIndex topic lastWs
+ return $ \a b -> case (isOnScreen a w, isOnScreen b w, depth a, depth b) of
+ (True, True, _, _) -> comparing (tagToSid (onScreen w)) a b
+ (True, False, _, _) -> LT
+ (False, True, _, _) -> GT
+ (_, _, Just ai, Just bi) -> compare ai bi
+ (_, _, Just _, Nothing) -> LT
+ (_, _, Nothing, Just _) -> GT
+ _ -> cmpIndex a b
+ onScreen w = W.current w : W.visible w
+ isOnScreen a w = a `elem` map (W.tag . W.workspace) (onScreen w)
+ tagToSid s x = W.screen $ fromJust $ find ((== x) . W.tag . W.workspace) s
+
-- | Given a prompt configuration and a topic configuration, triggers the action associated with
-- the topic given in prompt.
topicActionWithPrompt :: XPConfig -> TopicConfig -> X ()
}
Context:
[Use imported xC_bottom_right_corner in A.MouseResize
Adam Vogt <vogt.adam at gmail.com>**20091227233705
Ignore-this: 52794f788255159b91e68f2762c5f6a1
]
[X.A.MouseResize: assign an appropriate cursor for the resizing inpuwin
Tomas Janousek <tomi at nomi.cz>**20091227212140
Ignore-this: d9ce96c2cd0312b6b5be4acee30a1da3
]
[small tweak to battery logger
Brent Yorgey <byorgey at cis.upenn.edu>**20091227085641
Ignore-this: 350dfed0cedd250cd9d4bd3391cbe034
]
[Fix the createSession bug in spawnPipe
Spencer Janssen <spencerjanssen at gmail.com>**20091227003501
Ignore-this: 2d7f8746eb657036d39f3b9aac22b3c9
Both the new XMonad.Core.xfork function and spawnPipe call createSession, calling
this function twice results in an error.
]
[Let the core know about MouseResizableTile's draggers, so they are stacked correctly
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091223145428
Ignore-this: 7c096aba6b540ccf9b49c4ee86c6091a
]
[Update all uses of forkProcess to xfork
Spencer Janssen <spencerjanssen at gmail.com>**20091223064558
Ignore-this: 963a4ddf1d2f4096bbb8969b173cd0c1
]
[Make X.L.Minimize explicitly mark minimized windows as boring
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091222214529
Ignore-this: b1e8adf26ac87dede6c1b7a7d687411c
]
[Actions/Search: added openstreetmap
intrigeri at boum.org**20091222114545
Ignore-this: fafc4680c8b59b7a044d995c1dacec9a
]
[Add a search predicate option to XMonad.Prompt
Mike Lundy <mike at fluffypenguin.org>**20091221025408
Ignore-this: 8e8804eeb9650d38bc225e15887310da
]
[In D.Extending note how <+> can be used with keybindings.
Adam Vogt <vogt.adam at gmail.com>**20091220190739
Ignore-this: ebea8ef8a835ed368fa06621add6519f
]
[Fix MultiToggle crashes with decorated layouts
Tomas Janousek <tomi at nomi.cz>**20091220004733
Ignore-this: 9208f5da9f0de95464ea62cb45e8f291
The problem was that certain layouts keep their "world" state in their value,
which was thrown away and forgotten after ReleaseResources during toggle.
In particular, decorated layouts store some X11 handles in them and
allocate/deallocate it as appropriate. If any modification to their state is
ignored, they may try to deallocate already deallocated memory, which results
in a crash somewhere inside Xlib.
This patch makes Transformers reversible so that nothing is ever ignored. As a
side effect, layout transformers now do receive messages and messages for the
base layout do not need the undo/reapply cycle -- we just pass messages to the
current transformed layout and unapply the transformer when needed.
(This, however, doesn't mean that the base layout is not asked to release
resources on a transformer change -- we still need the transformer to release
its resources and there's no way to do this without asking the base layout as
well.)
]
[Golf / style change in U.ExtensibleState
Adam Vogt <vogt.adam at gmail.com>**20091208010506
Ignore-this: c35bd85baae4700e14417ac7e07de959
]
[Style changes in EwmhDesktops
Adam Vogt <vogt.adam at gmail.com>**20091219003824
Ignore-this: 905eff9ed951955c8f62617b2d82302e
]
[Add support for fullscreen through the _NET_WM_STATE protocol
audunskaugen at gmail.com**20091214135119
Ignore-this: 430ca3c6779e36383f8ce8e477ee9622
This patch adds support for applications using the
gtk_window_fullscreen function, and other applications using
_NET_WM_STATE for the same purpose.
]
[TAG 0.9.1
Spencer Janssen <spencerjanssen at gmail.com>**20091216233651
Ignore-this: 713d9dd89d775e30346f57a61038d308
]
[Bump version to 0.9.1
Spencer Janssen <spencerjanssen at gmail.com>**20091216232634
Ignore-this: bcd799c3341ee6c69a259e1dca747cac
]
[Match X11 dependencies with xmonad's
Spencer Janssen <spencerjanssen at gmail.com>**20091216012630
Ignore-this: bcbd6e3e5e2675cdac6f1d1b1bc09853
]
[Safer X11 version dependency
Spencer Janssen <spencerjanssen at gmail.com>**20091216005916
Ignore-this: 6dc805a8a0c7a3d3369bc1d6d97d4f56
]
[Update Prompt for numlockMask changes
Spencer Janssen <spencerjanssen at gmail.com>**20091103222621
Ignore-this: 4980e2fdf4c296a266590cc4acf76e1e
]
[X.L.MouseResizableTile: change description for mirrored variant
Tomas Janousek <tomi at nomi.cz>**20091211124218
Ignore-this: dbc02fb777e35cdc15fb11979c1e983e
The description for mirrored MouseResizableTile is now "Mirror
MouseResizableTile", to follow the standard of other layouts that can be
mirrored using the Mirror modifier.
]
[X.A.GridSelect: documentation typo fix
Tomas Janousek <tomi at nomi.cz>**20091211182515
Ignore-this: 521bef2a73a9e969d7a96defb555177b
spotted by Justin on IRC
]
[A.GridSelect shouldn't grab keys if there are no choices.
Adam Vogt <vogt.adam at gmail.com>**20091210183038
Ignore-this: 48509f780120014a10b32e7289369f32
Thanks thermal2008 in #xmonad for bringing up the corner case when gridselect
is run with an empty list of choices.
]
[onScreen' variation for X () functions
Nils Schweinsberg <mail at n-sch.de>**20091209003717
Ignore-this: 6a9644c729c2b60f94398260f3640e4d
]
[Added Bluetile's config
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091209150309
Ignore-this: 641ae527ca6f615e81822b6f38f827e7
]
[BluetileCommands - a list of commands that Bluetile uses to communicate with its dock
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091208234431
Ignore-this: 1a5a5e69c7c37d3ffe8d8e09496568de
]
[Use lookup instead of find in A.PerWorkspaceKeys
Adam Vogt <vogt.adam at gmail.com>**20091129032650
Ignore-this: 7ecb043df4317365ff3d25b17303eed8
]
[Change of X.A.OnScreen, more simple and predictable behaviour of onScreen, new functions: toggle(Greedy)OnScreen
Nils Schweinsberg <mail at n-sch.de>**20091207155050
Ignore-this: c375250778758e401217bcad83567d3b
]
[Module to ensure that a dragged window always stays in front of all other windows
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091129004506
Ignore-this: a8a389198ccc28a66686561d4d17e91b
]
[Decoration that allows to switch the position of windows by dragging them onto each other.
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091129003431
Ignore-this: 38aff0f3beb1a1eb304219c4f3e85593
]
[A decoration with small buttons and a supporting module
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091129002416
Ignore-this: 2d65133bc5b9ad29bad7d06780bdaa4
]
[XMonad.Actions.Search: finally fixed the internet archive search plugin
gwern0 at gmail.com**20091205033435
Ignore-this: c78ecebced9bc8e39e6077ffa9f9f182
]
[XMonad.Actions.Search: in retrospect, a bit silly to make everyone go through SSL
gwern0 at gmail.com**20091205033318
Ignore-this: 452b4e6efb83935fc1063ab695ae074d
]
[Prompt.hs: Corrected quit keybindings
Tim Horton <tmhorton at gmail.com>**20091203050041
Ignore-this: e8cd2cd1d41f6807f68157ef37c631ea
]
[Extended decoration module with more hooks and consolidated some existing ones
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091128234310
Ignore-this: 5a23af3009ecca2feb9a84f8c6f8ac33
]
[Extended decoration theme to contain extra static text that always appears in the title bar
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091024213928
Ignore-this: 95f46d6b9ff716a2d8002a426c1012c8
]
[Extended paintAndWrite to allow for multiple strings to be written into the rectangle
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091024205111
Ignore-this: eb7d32284b7f98145038dcaa14f8075e
]
[Added the alignment option 'AlignRightOffset'
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091024204513
Ignore-this: 58cc00e1be669877e38a97e36b924969
]
[Prevent windows from being decorated that are too small to contain decoration.
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20090627094316
Ignore-this: 39b806462bbd424f1206b635e9d506e1
]
[X.L.MouseResizableTile: keep draggers on the bottom of the window stack.
Tomas Janousek <tomi at nomi.cz>**20091126173413
Ignore-this: 8089cf8ce53580090b045f4aebb1b899
]
[Implemented smarter system of managing borders for BorderResize
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091122233651
Ignore-this: 4775c082249e598a84c79b2e819f28b0
]
[X.H.DynamicLog: fix xmonadPropLog double-encoding of UTF-8
Tomas Janousek <tomi at nomi.cz>**20091121004829
Ignore-this: bde612bbd1a19951f9718a03e737c4ac
dynamicLogString utf-8 encodes its output, xmonadPropLog shouldn't do that
again.
]
[X.H.DynamicLog: make documentation for 'dzen' and 'xmobar' slightly more clear
Brent Yorgey <byorgey at cis.upenn.edu>**20091121170739
Ignore-this: c9a241677fda21ef93305fc3882f102e
]
[X.H.ManageDocks: ignore struts that cover an entire screen on that screen
Tomas Janousek <tomi at nomi.cz>**20091119145043
Ignore-this: ad7bbf10c49c9f3e938cdc3d8588e202
Imagine a screen layout like this:
11111111
11111111
11111111
222222 <--- xmobar here
222222
222222
When placing xmobar as indicated, the partial strut property indicates that an
entire height of screen 1 is covered by the strut, as well as a few lines at
the top of screen 2. The original code would create a screen rectangle of
negative height and wreak havoc. This patch causes such strut to be ignored on
the screen it covers entirely, resulting in the desired behaviour of a small
strut at the top of screen 2.
Please note that this semantics of _NET_WM_STRUT and _NET_WM_STRUT_PARTIAL is
different to what is in wm-spec. The "correct" thing to do would be to discard
the covered portion of screen 1 leaving two narrow areas at the sides, but
this new behaviour is probably more desirable in many cases, at least for
xmonad/xmobar users.
The correct solution of having separate _NET_WM_STRUT_PARTIAL for each
Xinerama screen was mentioned in wm-spec maillist in 2007, but has never
really been proposed, discussed and included in wm-spec. Hence this "hack".
]
[Use imported 'fi' in PositionStoreHooks
Adam Vogt <vogt.adam at gmail.com>**20091119103112
Ignore-this: 6563a3093083667c79aa491a6f59b805
]
[Changed interface of X.U.ExtensibleState
Daniel Schoepe <daniel.schoepe at gmail.com>**20091116171013
Ignore-this: 9a830f9341e461628974890bab0bd65b
Changed the interface of X.U.ExtensibleState to resemble that of
Control.Monad.State and modified the modules that use it accordingly.
]
[PositionStoreFloat - a floating layout with support hooks
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091115184833
Ignore-this: 8b1d0fcef1465356d72cb5f1f32413b6
]
[PositionStore utility to store information about position and size of a window
Jan Vornberger <jan.vornberger at informatik.uni-oldenburg.de>**20091108195735
Ignore-this: 2f6e68a490deb75cba5d007b30c93fb2
]
[X.H.Urgencyhook fix minor doc bug
Anders Engstrom <ankaan at gmail.com>**20091115131121
Ignore-this: 18b63bccedceb66c77b345a9300f1ac3
]
[X.H.DynamicLog fix minor indentation oddness
Anders Engstrom <ankaan at gmail.com>**20091115130707
Ignore-this: 7f2c49eae5527874ca4499767f4167c4
]
[X.A.CycleWS cycle by tag group
Anders Engstrom <ankaan at gmail.com>**20091115130217
Ignore-this: 909da8c00b47a31d04f59bd3751c60bc
Allow grouping of workspaces, so that a user can cycle through those in the same group. Grouping is done by using a special character in the tag.
]
[Use less short names in X.Prompt
Adam Vogt <vogt.adam at gmail.com>**20091115025647
Ignore-this: 1d27b8efc4d829a5642717c6f6426336
]
[Use io instead of liftIO in Prompt
Adam Vogt <vogt.adam at gmail.com>**20091115025301
Ignore-this: cd4031b74cd5bb874cd2c3cc2cb087f2
]
['io' and 'fi' are defined outside of Prompt
Adam Vogt <vogt.adam at gmail.com>**20091115024001
Ignore-this: 3426056362db9cbfde7d2f4edbfe6f36
]
[Use zipWithM_ instead of recursion in Prompt.printComplList
Adam Vogt <vogt.adam at gmail.com>**20091115023451
Ignore-this: 2457500ed871ef120653a3d4ada13441
]
[Minor style changes in DynamicWorkspaces
Adam Vogt <vogt.adam at gmail.com>**20091115022751
Ignore-this: 1a6018ab134e4420a949354575a8a110
]
[X.A.DynamicWorkspaces fix doc and add behaviour
Anders Engstrom <ankaan at gmail.com>**20091113233903
Ignore-this: ab7c20a9c1b43ebc6a7f4700d988fb73
Before this patch the documentation claims that it won't do anything on non-empty workspaces when it actually does. This patch fixes the documentation to reflect the actual behaviour, but also adds the behaviour promised by the documentation in other functions. It does not break configs. In addition it also provides functions to help removing empty workspaces when leaving them.
]
[rework XMonad.Util.Dzen
daniel at wagner-home.com**20091114051509
Ignore-this: 16d93f91c54f7d195b1a418e6c0351c5
]
[generalize IO actions to MonadIO m => m actions
daniel at wagner-home.com**20091114023616
Ignore-this: 2c801a27b0ffee34a2f0daca3778613a
This should not cause any working configs to stop working, because IO is an instance of MonadIO, and because complete configs will pin down the type of the call to IO. Note that XMonad.Config.Arossato is not a complete config, and so it needed some tweaks; with a main function, this should not be a problem.
]
[fix documentation to match implementation
daniel at wagner-home.com**20091114021328
Ignore-this: 6dbbb118b139f443c40a573445a48d07
]
[Bypass more of stringToKeysym in U.Paste
Adam Vogt <vogt.adam at gmail.com>**20091114223726
Ignore-this: 617c922647e9f49f5ecefa0eb1c65d3c
]
[Don't erase floating information with H.InsertPosition (Issue 334)
Adam Vogt <vogt.adam at gmail.com>**20091113161402
Ignore-this: de1c03eb860ea25b390ee5c756b02997
]
[Rename gridselectViewWorkspace to gridselectWorkspace, add another example.
Adam Vogt <vogt.adam at gmail.com>**20091112211435
Ignore-this: 462cf1c7f66ab97a1ce642977591a910
The name should be more general to suggest uses other than just viewing other
workspaces.
]
[X.A.DynamicWorkspaces: fix addWorkspace and friends so they never add another copy of an existing workspace
Brent Yorgey <byorgey at cis.upenn.edu>**20091112201351
Ignore-this: 5bfe8129707b038ed04383b7566b2323
]
[Trim whitespace in H.FloatNext
Adam Vogt <vogt.adam at gmail.com>**20091111022702
Ignore-this: 1ad52678246fa1ac951169c2356ce10b
]
[Use ExtensibleState in H.FloatNext
Adam Vogt <vogt.adam at gmail.com>**20091111022513
Ignore-this: 760d95a685af080466cb4164d1096423
]
[Make a haddock link direct in C.Desktop.
Adam Vogt <vogt.adam at gmail.com>**20091111013810
Ignore-this: da724a7974c3de60f49996c1fe92d3fb
]
[Change A.TopicSpace haddocks to use block quotes.
Adam Vogt <vogt.adam at gmail.com>**20091111013241
Ignore-this: 6f7f43d2715cfde62b9c05c7d9a0da2
]
[Add defaultTopicConfig, to allow adding more fields to TopicSpace later.
Adam Vogt <vogt.adam at gmail.com>**20091111012915
Ignore-this: 6dad95769651a9a1ef8d771f81c91f8e
]
[X.A.WindowGo: fix haddock markup
Spencer Janssen <spencerjanssen at gmail.com>**20091111003256
Ignore-this: c6a06de900ca8b67498abf5152e3d9ea
]
[Minor style corrections in X.U.SpawnOnce
Daniel Schoepe <daniel.schoepe at gmail.com>**20091109201543
Ignore-this: 1264852c23b4f84b2580bf4567529c68
]
[Add gridselectViewWorkspace in X.A.GridSelect
Daniel Schoepe <daniel.schoepe at gmail.com>**20091109155815
Ignore-this: 5543211e9e3fd325cb798b004635a525
]
[minor-doc-fix-in-ManageHelpers
`Henrique Abreu <hgabreu at gmail.com>'**20091104172727
Ignore-this: 231ad417541bc3c17a1cb2dff139d55d
]
[Set buffering to LineBuffering in scripts/xmonadpropread.hs
Daniel Schoepe <daniel.schoepe at gmail.com>**20091108204106
Ignore-this: 4e593fc1461fbbfb5b147c7c7702584e
(Required for the script to work properly with tools like dzen)
]
[X.U.ExtensibleState: style
Spencer Janssen <spencerjanssen at gmail.com>**20091108182858
Ignore-this: f189da75ad2c57ae9cca48eaf69a6bad
]
[X.A.DynamicWorkspaces: new 'addWorkspacePrompt' method
Brent Yorgey <byorgey at cis.upenn.edu>**20091108170503
Ignore-this: a3992b1b7938be80d8fd2a5a503a4042
]
[Remove defaulting when using NoMonomorphismRestriction in H.EwmhDesktops
Adam Vogt <vogt.adam at gmail.com>**20091107195255
Ignore-this: ca3939842639c94ca4fd1ff6624319c1
]
[Update A.TopicSpace to use extensible state. No config changes required.
Adam Vogt <vogt.adam at gmail.com>**20091107194502
Ignore-this: 7a82aad512bb727b3447de0faa4a210f
]
[Inline tupadd function in A.GridSelect
Adam Vogt <vogt.adam at gmail.com>**20091101190312
Ignore-this: 458968154303ab865c304f387d6ac83b
]
[Alphabetize exposed-modules
Spencer Janssen <spencerjanssen at gmail.com>**20091107174946
Ignore-this: 919684aea7747a756b303f9b34a2870b
]
[Use X.U.SpawnOnce in my config
Spencer Janssen <spencerjanssen at gmail.com>**20091107174615
Ignore-this: fe8f5f75136128280942771ec429f09a
]
[Add XMonad.Util.SpawnOnce
Spencer Janssen <spencerjanssen at gmail.com>**20091107173820
Ignore-this: 8d4657bbaa8dbeb1d0f9d22293bfef19
]
[Store deserialized data after reading in X.U.ExtensibleState
Daniel Schoepe <daniel.schoepe at gmail.com>**20091107103832
Ignore-this: 192beca56e9437292bd3f16451ae9e66
]
[Fixed conflict between X.U.ExtensibleState and X.C.Sjanssen
Daniel Schoepe <daniel.schoepe at gmail.com>**20091107103619
Ignore-this: 80f4bb218574d7c528af17473c6e4f66
]
[Use X.U.ExtensibleState instead of IORefs
Daniel Schoepe <daniel.schoepe at gmail.com>**20091106115601
Ignore-this: e0e80e31e51dfe76f2b2ed597892cbba
This patch changes SpawnOn, DynamicHooks and UrgencyHooks to
use X.U.ExtensibleState instead of IORefs. This simplifies the
usage of those modules thus also breaking current configs.
]
[Add X.U.ExtensibleState
Daniel Schoepe <daniel.schoepe at gmail.com>**20091106115336
Ignore-this: d80d9d0c10a53fb71a375e432bd29344
]
[My config uses xmonadPropLog now
Spencer Janssen <spencerjanssen at gmail.com>**20091107005230
Ignore-this: 8f16b8bea86dfcd3739f1566f5897578
]
[Add xmonadpropread script
Spencer Janssen <spencerjanssen at gmail.com>**20091107004858
Ignore-this: 8cc7ed36ec1126d0139638148f9642e8
]
[Add experimental xmonadPropLog function
Spencer Janssen <spencerjanssen at gmail.com>**20091107004624
Ignore-this: f09b2c11b16a3af993b63d1b39566120
]
[XMonad.Actions.Search: imdb search URL tweak for bug #33
gwern0 at gmail.com**20091103222330
Ignore-this: bae5e6d3ec6c4b6591016ece9dffb202
]
[Clean imports for L.BoringWindows
Adam Vogt <vogt.adam at gmail.com>**20091103140649
Ignore-this: 56946a652329390dbdd63746ca23ee8e
]
[I maintain L.BoringWindows
Adam Vogt <vogt.adam at gmail.com>**20091103140509
Ignore-this: de853972b4c1c4cefa2dc29e68828d5d
]
[fix window rectangle calculation in X.A.UpdatePointer
Tomas Janousek <tomi at nomi.cz>**20091026154918
Ignore-this: ad0c3a020b802854919c7827faa001ad
]
[Implement hasProperty in terms of runQuery in U.WindowProperties
Adam Vogt <vogt.adam at gmail.com>**20091031154945
Ignore-this: 1c351bc436e0e323dc25d8f5ff734dcb
This addresses issue 302 for unicode titles by actually using the complicated
XMonad.ManageHook.title code, instead of reimplementing it with stringProperty
(which doesn't appear to handle unicode).
]
[Add functions to access the current input in X.Prompt
Daniel Schoepe <daniel.schoepe at gmail.com>**20091030235033
Ignore-this: 3f568c1266d85dcaa5722b19bbbd61dd
]
[Remove putSelection, fixes #317
Spencer Janssen <spencerjanssen at gmail.com>**20091030224354
Ignore-this: 6cfd6d92e1d133bc9e3cbb7c8339f735
]
[Fix typo in H.FadeInactive documentation
Adam Vogt <vogt.adam at gmail.com>**20091029165736
Ignore-this: b2af487cd382416160d5540b7f210464
]
[X.L.MultiCol constructor 0 NWin bugfig
Anders Engstrom <ankaan at gmail.com>**20091029105633
Ignore-this: e6a24f581593424461a8675984d14d25
Fix bug where the constructor did not accept catch-all columns. Also some minor cleaning.
]
[X.H.ManageHelpers: added currentWs that returns the current workspace
Ismael Carnales <icarnales at gmail.com>**20091028193519
Ignore-this: dcd3dac6bd741d26747807691f125637
]
[X.L.MultiColumns bugfix and formating
Anders Engstrom <ankaan at gmail.com>**20091027131741
Ignore-this: 6978f485d18adb8bf81cf6c8e0d0332
Fix bug where a column list of insufficient length could be used to find the column of the window. Also fix formating to conform better with standards.
]
[X.L.MultiColumns NWin shrinkning fix
Anders Engstrom <ankaan at gmail.com>**20091027005932
Ignore-this: 9ba40ee14ec12c3885173817eac2b564
Fixed a bug where the list containing the number of windows in each column was allowed the shrink if a column was unused.
]
[New Layout X.L.MultiColumns
Anders Engstrom <ankaan at gmail.com>**20091024175155
Ignore-this: a2d3d2eee52c28eab7d125f6b621cada
New layout inspired the realization that I was switching between Mirror Tall and Mirror ThreeCol depending on how many windows there were on the workspace. This layout will make those changes automatically.
]
[Changing behaviour of ppUrgent with X.H.DynamicLog
mail at n-sch.de**20090910010411
Ignore-this: 3882f36d5c49e53628485c1570bf136a
Currently, the ppUrgent method is an addition to the ppHidden method.
This doesn't make any sense since it is in fact possible to get urgent
windows on the current and visible screens. So I've raised the ppUrgent
printer to be above ppCurrent/ppVisible and dropped its dependency on
ppHidden.
In addition to that this makes it a lot more easier to define a more
custom ppUrgent printer, since you don't have to "undo" the ppHidden
printer anymore. This also basicly removes the need for dzenStrip,
although I just changed the description.
-- McManiaC / Nils
]
[fix X.U.Run.spawnPipe fd leak
Tomas Janousek <tomi at nomi.cz>**20091025210246
Ignore-this: 24375912d505963fafc917a63d0e79a0
]
[TAG 0.9
Spencer Janssen <spencerjanssen at gmail.com>**20091026013449
Ignore-this: 542b6105d6deed65e12d1f91c666b0b2
]
Patch bundle hash:
4b45323b42d0fd08f4fa5e1ec719608cd43e702e
More information about the xmonad
mailing list