summaryrefslogtreecommitdiffstats
path: root/Config.hs
AgeCommit message (Collapse)Author
2007-09-20eliminate ugly OldLayout.David Roundy
darcs-hash:20070920155237-72aca-af9e13a03fd7fb1e4c5b452c5d42817bd5060b0f
2007-09-14move Layout stuff into class (hokey first cut).David Roundy
darcs-hash:20070914215959-72aca-3feae03a6560a70908ad37d28f47c8d47321008e
2007-09-27Add StackSet.focusMaster (mod-m) to move focus to masterDon Stewart
darcs-hash:20070927213937-cba2c-9b0d13cac79e9fb142c3a97cc6569f8a15297603
2007-09-17Eliminate Operations.sink tooSpencer Janssen
darcs-hash:20070917214052-a5988-62b6e8d26a78a7e25a2e0117f7f112c5b039d933
2007-09-17Remove Operations functions which have StackSet equivalents, just use ↵Spencer Janssen
'windows foo' instead darcs-hash:20070917211953-a5988-8e5141139dfaa7ebc2e2f8f3ae4f923094bd71d7
2007-09-17Change manpage token @@ to %! to avoid conflicts with Haddock (xmonad)Alex Tarkovsky
darcs-hash:20070916235229-bd4fb-a0a20d34ba6fd4acdde2cc3019ca3685bb401018
2007-09-07Add missing insert markers for generate-configs.sh in Config.hsAlex Tarkovsky
darcs-hash:20070907120414-bd4fb-b2420c480279a6aa7bc687bbe6f6774082726d91
2007-09-05Use show rather than string hacksSpencer Janssen
darcs-hash:20070905202816-a5988-b57e622e85cbd0ac2134416b964dd36ae65ab826
2007-08-20switch WorkspaceId to String.David Roundy
darcs-hash:20070820113658-72aca-f27e89526a320a9426a359cd88a4a74567283417
2007-09-05Alex Tarkovsky's docstring patch updated for conflictsSpencer Janssen
darcs-hash:20070905193558-a5988-a01c97061e0d33bd1415d2d45eb2331544f85b83
2007-08-24Add docstrings for mouse controlsSpencer Janssen
darcs-hash:20070824045939-a5988-2c9c3dd3cb6925c0aaccc0c857335c15d4deaf3c
2007-08-21comment only: example of 2 monitor gapsDon Stewart
darcs-hash:20070821032538-9c5c1-d31452453b6bb879480391c1342680e61756e034
2007-08-16Fix new bug in screen switchingSpencer Janssen
darcs-hash:20070816215629-a5988-1fd9cbe1ddee7f475096884bf02d906f0bad8757
2007-08-14change workspaces to [WorkspaceId]David Roundy
darcs-hash:20070814003722-72aca-523faa4ad29f664dd33331c0c03d2564ecde2b89
2007-07-17Tweak dmenu bindingPeter De Wachter
Add an "eval", so quotes and environment variables get evaluated according to sh rules. darcs-hash:20070717190722-06a25-0c3b8a339adcd81ca6badfc7edbf8950c1105f3c
2007-07-08Operations.screenWorkspace: return Nothing when the screen does not existSpencer Janssen
darcs-hash:20070707223842-a5988-7cd70e25326d577a30279c976ae64bce3f70f2df
2007-06-19make Layouts able to layout whatever they like.David Roundy
darcs-hash:20070619150816-72aca-a651e758e93e300c3e526985b328f0b1d7def60c
2007-06-10haddock compatibilityAndrea Rossato
darcs-hash:20070610123746-32816-e5a1b61d81fa52f608d7936f900431bd6620c3c7
2007-06-10Move state logging into Config.hs, via logHook :: X ()Don Stewart
darcs-hash:20070610061932-9c5c1-9a08992ef555f086007474e64d5ae9d835e9677e
2007-06-05Enable logging of state changes to stdoutDon Stewart
darcs-hash:20070605083735-9c5c1-1ab5acbd611914caa7b5cdf1f2df338c0ee616f8
2007-06-03heads up: polish config.hs. moves tiling-local values into lexical scope. ↵Don Stewart
removes `wide' as an explicit mode (it's `mirror tall') darcs-hash:20070603054740-9c5c1-1cdabf3f5bb2ac2592fc94d7d3ef51621077d3f8
2007-06-02Fix out-of-date comment in Config.hs.Chris Mears
darcs-hash:20070602114312-03b70-34b7df63288c0bede14eacd0517059f34ec1529c
2007-06-02make mouse bindings configurableJason Creighton
darcs-hash:20070602040647-b9aa7-d7bad13c4919882368872a88f04a678308162be6
2007-05-31Revert accidental change to border colorSpencer Janssen
darcs-hash:20070531145509-a5988-6dfdf577a31cc740283e76d20d50ac3059a56d14
2007-05-31clean up mouse code a bitDon Stewart
darcs-hash:20070531085308-9c5c1-73ed940708aa9a369b0345c0d2b2a4708a231e67
2007-05-31first shot at a floating layerJason Creighton
This is a first attempting at a floating layer: mod-button1: move window mod-button2: swapMaster mod-button3: resize window mod-t: make floating window tiled again Moving or resizing a window automatically makes it floating. Known issues: Hard to manage stacking order. You can promote a window to move it to the top, (which you can do with mod-button2) but it should be easier than that. Moving a window by dragging it to a different Xinerama screen does not move it to that workspace. Code is ugly. darcs-hash:20070531044733-b9aa7-c96d5263e1d3447e91f436920f4d047050ce55d9
2007-05-30Really change restart keybinding this timeSpencer Janssen
darcs-hash:20070530061454-a5988-b2446b9dde7fdbdd3d08790c9891ee5fd4c964ea
2007-05-30UNDO: HEADS UP: Change restart keybinding to mod-qSpencer Janssen
darcs-hash:20070530061044-a5988-ec27af97c1623bcc9ad394fe2414c0b3593c4b7a
2007-05-30HEADS UP: Change restart keybinding to mod-qSpencer Janssen
darcs-hash:20070530061044-a5988-4b79ec5abb1bd8a3079d73101856741e57257402
2007-05-29Fix 'refresh' doc stringSpencer Janssen
darcs-hash:20070529020446-a5988-801944996c8d327737c5318450aa6365e1aacde2
2007-05-29make 'tall' layout the default on startup. more useful for new usersDon Stewart
darcs-hash:20070529014611-9c5c1-48e9cdfa7fddbe720563f2526ee494eaab7e8db6
2007-05-28ensure !! won't go out of bounds in modifyGapDon Stewart
darcs-hash:20070528070609-9c5c1-2f1c968174a8e53b4f37e62e6fd22a70f7ecf3b0
2007-05-28help man scriptDon Stewart
darcs-hash:20070528033846-9c5c1-bdc67f406d31199257c63453be36d4c7e8652f4a
2007-05-28Document mod-nSpencer Janssen
darcs-hash:20070528033536-a5988-9e3cf98d259c1469791a8f8ed6364f8272cf8e7c
2007-05-28support per-screen gap settings. you can have different gaps on individual ↵Don Stewart
screens now darcs-hash:20070528031501-9c5c1-beaadbacb5efc1ce5998aba41fbb3b2c68cdf0d1
2007-05-28Use (Int,Int,Int,Int) for arbitrary gaps on any side of the screenDon Stewart
darcs-hash:20070528025135-9c5c1-3c0f63ac557da57cd268cd0129b9ce90692631e4
2007-05-27mod-b, toggle on or off the status bar gapDon Stewart
darcs-hash:20070527125928-9c5c1-a16246810db9d4abfe81d0d5814721b64f59a14c
2007-05-27Add new config value, defaultMenuGap, for specifying a gap for a status barDon Stewart
By default, it is 0 (set in Config.hs), but set this to a pixel count to get a permanent gap at the top of the screen. You can then at startup launch dzen, and it will run in this gap, and not be obscured by other windows. Perfect for a persistant status bar. darcs-hash:20070527122702-9c5c1-2a3ca82463b3bab21556674936b1bf8a86ba6356
2007-05-27Generate keybindings section in manpage from Config.hsJason Creighton
darcs-hash:20070527062914-b9aa7-d28805de3a198f81ca54cb800250bb16f65ab036
2007-05-26HEADS UP: change key binding for swapLeft/Right and IncMasterDon Stewart
The use of arrow keys for swapLeft/Right clash with firefox's back button. Use the more intuitive mod-shift-jk for this. (It's a movement operation, after all). This clashes with IncMaster, so we use mod+comma and mod+period for these (i.e. the keys mod < and mod > , to move windows to and from the master area). While we're here, replace the use of the terms 'left' and 'right' for navigation, in comments and identifiers, with 'up' and 'down' instead. Hence mod-j == focusDown. Far more intuitive for people (dons) who live in fullscreen mode and have vim movement wired into their central nervous system. Principle of least VI surprise: movement down or up means using j and k. darcs-hash:20070526111453-9c5c1-3242145ee5b51eb070a7dc3663f0d6cc01671d5c
2007-05-25Formatting onlySpencer Janssen
darcs-hash:20070525214414-a5988-21fb1ba95dfae8f90cb98554bb85c6c31630aa86
2007-05-23Use --resume by defaultSpencer Janssen
darcs-hash:20070523191418-a5988-3b7c62f2e5d958b5c0e863c8ea048cf593995f2a
2007-05-22add swapLeft and swapRightbobstopper
darcs-hash:20070522050008-ee4f8-6073519fac239b25e5e265ce3995ee75683fcb81
2007-05-21Experimental support for a beefier restart.Spencer Janssen
darcs-hash:20070521194653-a5988-b6725cc0d73fc6b726dc41284eef9303a7e59a1e
2007-05-21Put restart in the X monadSpencer Janssen
darcs-hash:20070521190749-a5988-1c95a0491806b06a32e7fe8bd6bcac31ebc7ad6b
2007-05-21Fix mod-j/k bindingsSpencer Janssen
darcs-hash:20070521030253-a5988-3e4e92d04f8a4459cfb692f73ad7bda11348f9ad
2007-05-20HEADS UP: Rewrite StackSet as a ZipperDon Stewart
In order to give a better account of how focus and master interact, and how each operation affects focus, we reimplement the StackSet type as a two level nested 'Zipper'. To quote Oleg: A Zipper is essentially an `updateable' and yet pure functional cursor into a data structure. Zipper is also a delimited continuation reified as a data structure. That is, we use the Zipper as a cursor which encodes the window which is in focus. Thus our data structure tracks focus correctly by construction! We then get simple, obvious semantics for e.g. insert, in terms of how it affects focus/master. Our transient-messes-with-focus bug evaporates. 'swap' becomes trivial. By moving focus directly into the stackset, we can toss some QC properties about focus handling: it is simply impossible now for focus to go wrong. As a benefit, we get a dozen new QC properties for free, governing how master and focus operate. The encoding of focus in the data type also simplifies the focus handling in Operations: several operations affecting focus are now simply wrappers over StackSet. For the full story, please read the StackSet module, and the QC properties. Finally, we save ~40 lines with the simplified logic in Operations.hs For more info, see the blog post on the implementation, http://cgi.cse.unsw.edu.au/~dons/blog/2007/05/17#xmonad_part1b_zipper darcs-hash:20070520070053-9c5c1-241f7ee7793f5db2b9e33d375965cdc21b26cbd7
2007-05-16variable number of windows in master areaJason Creighton
darcs-hash:20070516031437-b9aa7-03d82cb2565a45fa0e17a34c4c20740b51ff625c
2007-05-04Constrain layout messages to be members of a Message classDon Stewart
Using Typeables as the only constraint on layout messages is a bit scary, as a user can send arbitrary values to layoutMsg, whether they make sense or not: there's basically no type feedback on the values you supply to layoutMsg. Folloing Simon Marlow's dynamically extensible exceptions paper, we use an existential type, and a Message type class, to constrain valid arguments to layoutMsg to be valid members of Message. That is, a user writes some data type for messages their layout algorithm accepts: data MyLayoutEvent = Zoom | Explode | Flaming3DGlassEffect deriving (Typeable) and they then add this to the set of valid message types: instance Message MyLayoutEvent Done. We also reimplement the dynamic type check while we're here, to just directly use 'cast', rather than expose a raw fromDynamic/toDyn. With this, I'm much happier about out dynamically extensible layout event subsystem. darcs-hash:20070504081649-9c5c1-954b406e8c21c2ca4428960e4fc1f9ffb17fb296
2007-05-04More Config.hs bugsSpencer Janssen
darcs-hash:20070503234607-a5988-3f9f46071263093707fdaba677899edc1a85edc1