aboutsummaryrefslogtreecommitdiffstats
path: root/Main.hs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Make a String description part of each Layout.David Roundy2007-09-241-1/+1
| | | | darcs-hash:20070924185753-72aca-95002aa27cfef74bf8caf1e6f243a4626f20659c.gz
* add layout selection back into core xmonad using LayoutSelection.David Roundy2007-09-211-2/+3
| | | | | | This is just a reimplementation of LayoutChoice. darcs-hash:20070921212159-72aca-870bb8d3e596fcb9edc48f51bec538054b4165e6.gz
* move Layout into StackSet.David Roundy2007-09-211-1/+0
| | | | | | | | WARNING! This changes the format of StackSet, and will definitely mess up your xmonad state, requiring at minimum a restart! darcs-hash:20070920221248-72aca-1653e21d12abc691a6447c8552369f2d55df41b1.gz
* add (unused) Layout to StackSet.David Roundy2007-09-201-1/+1
| | | | darcs-hash:20070920212843-72aca-4c73a99b58ebd9d1d179c5e627cbf4823493f4ab.gz
* eliminate ugly OldLayout.David Roundy2007-09-201-1/+1
| | | | darcs-hash:20070920155237-72aca-af9e13a03fd7fb1e4c5b452c5d42817bd5060b0f.gz
* move Layout stuff into class (hokey first cut).David Roundy2007-09-141-1/+1
| | | | darcs-hash:20070914215959-72aca-3feae03a6560a70908ad37d28f47c8d47321008e.gz
* Fix float behaviour, add shiftWin.Karsten Schoelzel2007-09-101-5/+2
| | | | | | | | | | First, if float is called with window which is on a hidden workspace, then the window will remain on that hidden workspace. Now the focus should change more as expected: float w darcs-hash:20070910090329-eb3a1-ae150bf783b36fb4811e92d81b4917066c8733b7.gz
* -Wall policeDon Stewart2007-08-161-1/+1
| | | | darcs-hash:20070816033132-9c5c1-8c2ff33c2b52da9b5029f327adaf99a1c55a96c0.gz
* change workspaces to [WorkspaceId]David Roundy2007-08-141-2/+2
| | | | darcs-hash:20070814003722-72aca-523faa4ad29f664dd33331c0c03d2564ecde2b89.gz
* CleanupSpencer Janssen2007-08-101-5/+5
| | | | darcs-hash:20070810213940-a5988-7baa041cdf9a07038cb36645f314eb48bb8423aa.gz
* move event loop out of mouseDrag.David Roundy2007-08-071-1/+18
| | | | darcs-hash:20070807201616-72aca-80f5d15118592f79aca8a2e928c4ad4f29fdf8b1.gz
* Note and workaround bugs in Operations.floatSpencer Janssen2007-07-051-2/+6
| | | | darcs-hash:20070705195213-a5988-2dd794ce7f294a43fd21d88ec7974679de60afb7.gz
* refresh after startingSpencer Janssen2007-06-301-1/+1
| | | | darcs-hash:20070630050346-a5988-c77b422116ddc308d1b7b7c252c819c5db36cb96.gz
* UPGRADE X11-Extras! Manage iconified windowsSpencer Janssen2007-06-301-1/+6
| | | | darcs-hash:20070630021026-a5988-808741074e4132930b6036826d758b362c498dfc.gz
* Move screen details into StackSetSpencer Janssen2007-06-291-3/+2
| | | | darcs-hash:20070629213917-a5988-3ad31d8f028efcec41c9c4805c01c2d42c0009b2.gz
* broadcast unidentified events.David Roundy2007-06-231-1/+1
| | | | | | | | This change is independent of the doLayout change I just sent in, but fixes the problem that change introduces in Decoration, by ensuring that all Layouts get redraw events. I think this is the correct behavior. darcs-hash:20070623214125-72aca-deae94c4f656e2396a1e569b0ad956d625ed05f5.gz
* make workspace tag not need to be a Num.David Roundy2007-06-141-1/+1
| | | | | | | | | This change also removes the barely used 'size' field, and replaces it with a tagMember predicate. The idea is to move towards the ability to make the workspace tag be a String, which by default might be "1".."9", but could also be customized to be something meaningful to the user. darcs-hash:20070614140709-72aca-dbc1ce07bf964e4cff69deef95b453a0051ef782.gz
* move initColor to Operations and only store the Pixel value of colorsJason Creighton2007-06-141-3/+2
| | | | | | | | | Moving initColor to Operations allows it to be used by extensions. The Pixel component of the color is the only thing we need, so it's simpler just to deal with that. darcs-hash:20070613234501-b9aa7-5b39416db9f9d5ac42692262c233179baeb2540f.gz
* make focus, up and down complete functions.David Roundy2007-06-121-2/+2
| | | | | | | This is a rerun of my change to make (Stack a) never be empty. Gives us more type-safety. darcs-hash:20070612150555-72aca-5f6e43aa33979c71679a73b44d93f9e2b8f9d2a8.gz
* TODO for scanSpencer Janssen2007-06-111-0/+2
| | | | darcs-hash:20070611214217-a5988-ac16c4939111434a06ed5b080a82abd1d6e86c28.gz
* comment onlyJason Creighton2007-06-111-2/+2
| | | | darcs-hash:20070611020249-b9aa7-d00e960a3f26a54acdc7a869ad88ee9d437a470b.gz
* a few modifications to event-sending to make Tabbed layout work.David Roundy2007-06-101-2/+1
| | | | darcs-hash:20070610153836-72aca-75025ca798e1b8c2c5d9f95257aef2bca0803749.gz
* implement Spencer's decoration suggestion.David Roundy2007-06-101-1/+3
| | | | darcs-hash:20070610012237-72aca-4c5873773e58103f57f7a0b232da58c269248fa7.gz
* haddock compatibilityAndrea Rossato2007-06-101-4/+5
| | | | darcs-hash:20070610123746-32816-e5a1b61d81fa52f608d7936f900431bd6620c3c7.gz
* Move state logging into Config.hs, via logHook :: X ()Don Stewart2007-06-101-1/+1
| | | | darcs-hash:20070610061932-9c5c1-9a08992ef555f086007474e64d5ae9d835e9677e.gz
* UNDO: Give refresh sole responsibility for establishing window properties ↵Stefan O'Rear2007-06-091-8/+16
| | | | | | (-3 loc) darcs-hash:20070609185835-e3110-1eaa534465f66313044477acd9cae1bbbcf61950.gz
* Give refresh sole responsibility for establishing window properties (-3 loc)Stefan O'Rear2007-06-091-16/+8
| | | | darcs-hash:20070609185835-e3110-4561eca8bf83e9d05d90cdd75bc1ddce5855087f.gz
* HEADS UP: (logging format change). use a custom pretty printer, for an ↵Don Stewart2007-06-091-1/+1
| | | | | | easier format to parse, than 'show' produces darcs-hash:20070609131716-9c5c1-ac6b3d7e8193b16ca9ae65f32d5373090107eca1.gz
* Fix unmap handlingSpencer Janssen2007-06-061-10/+12
| | | | | | | | | | | | | | | | | | | According to the ICCCM, clients should send a synthetic unmap event when they initiate an unmap. The old code waited for these synthetic unmaps to unmanage windows. However, certain 'obsolete' clients do not send synthetic unmaps (notably xpdf's find dialog). These windows entered a zombified state: xmonad does not manage them, yet they are still mapped and raised on screen. The new algorithm (derived from wmii): - track windows that are mapped on screen - track the number of expected unmap events for each window, increment every time 'hide' is called on a window that is not mapped. - decrement the expected unmap counter on each unmap event - treat an unmap event as genuine (ie. unmap the window) when: - the event is synthetic (per ICCCM) - OR there are no expected unmap events for this window darcs-hash:20070606214006-a5988-7c2eced85319ff506a9b7c9dc86d5946ca0da8e5.gz
* move extraModifiers/cleanMask to Operations.hsJason Creighton2007-06-061-6/+0
| | | | | | so XMonadContrib can use them darcs-hash:20070606005056-b9aa7-96a3bb09f8e6dabd707eed7b5f19d733e5e1778e.gz
* whitespaceDon Stewart2007-06-061-1/+1
| | | | darcs-hash:20070606024857-9c5c1-0928bbc41b568e787e705e85ada9000547f2c790.gz
* Enable logging of state changes to stdoutDon Stewart2007-06-051-1/+2
| | | | darcs-hash:20070605083735-9c5c1-1ab5acbd611914caa7b5cdf1f2df338c0ee616f8.gz
* remove accidental logging of eventsDon Stewart2007-06-051-6/+3
| | | | darcs-hash:20070605081452-9c5c1-a384f89e9ed89678c96aee108a1b1e85cbff9d06.gz
* Fix lost eventNotifyMask bugDon Stewart2007-06-051-5/+22
| | | | | | | | | | | | | | | When resuming, we were (implicitly) relying on 'scan' to find all windows, and reset their event masks and WM_STATE. When we moved to Iconfified hidden workspaces, 'scan' would only find and reset states on the current workspace. The result being that hidden workspace windows no longer received enterNotify events. Fix this by traversing the StackSet serialised during a restart, setting the intial X states for each window, whether visible or hidden. darcs-hash:20070605043040-9c5c1-642f02a61a3e1d4679fde9c38eeb10aec53ea455.gz
* Comment onlySpencer Janssen2007-06-041-1/+0
| | | | darcs-hash:20070604203659-a5988-30920debba664beddd1581efffbdc33143d5ce15.gz
* Dump state at launch (commented for now)Spencer Janssen2007-06-041-0/+2
| | | | darcs-hash:20070604162450-a5988-e2d405b329d5f0dd0b33321f577dd63d3119b6d0.gz
* base >Spencer Janssen2007-06-041-1/+1
| | | | darcs-hash:20070604050914-a5988-600a4ba6f2f294b0ce56b16e8887d493789f29c7.gz
* Remove no-longer-needed 'dimensions' state (-5 loc)Stefan O'Rear2007-06-041-3/+1
| | | | darcs-hash:20070604044715-e3110-7bd7ba2b78f80046e2148fb37aa0f5fe3eca08c6.gz
* Set WM_STATE, iconify invisible windows (+9 loc)Stefan O'Rear2007-06-041-2/+13
| | | | | | | | Note that this breaks compatibility with certain programs described as "obsolete" in the ICCCM (1994). See the command above the UnmapEvent handler for details. darcs-hash:20070604042343-e3110-4766eafca2875091189159f6a1df29eac3c21387.gz
* clean up Main.hs slightlyDon Stewart2007-06-041-9/+9
| | | | darcs-hash:20070604035637-9c5c1-a5be67b987c402fe384f7a3c5c3443aabdf62885.gz
* do not cache atom values within Xmonad, instead let Xlib worry about caching ↵Stefan O'Rear2007-06-041-4/+0
| | | | | | (a documented feature) darcs-hash:20070604013938-e3110-8dc84f03278c55076a5cf83013974689c4861ffc.gz
* Honor configure requests from unmanaged windowsSpencer Janssen2007-06-041-4/+4
| | | | darcs-hash:20070603234730-a5988-d156b988188c622428ef60456c7e48bd739e5f64.gz
* -Wall policeSpencer Janssen2007-06-031-4/+3
| | | | darcs-hash:20070603212055-a5988-154f62e30303e2ab406201d08318d070a914baa3.gz
* Correctly handle resize requests (-12 +22)Stefan O'Rear2007-06-031-12/+22
| | | | | | | | | | | | | | | | | | Xmonad now implements resize requests in a consistent manner. * If the window is FLOATING, we implement the program's request, and correctly update the StackSet; so it will keep the new size. This should work correctly even for non-current windows. * Otherwise, we ignore the request. As per ICCCM, we send a fake ConfigureNotify containing the new (unchanged) geometry. This is perfectly ICCCM compliant, and if it breaks your client, it's your own fault. This patch requires setConfigureEvent, which is added to X11-extras by a patch approximately contemporaneous with this one. darcs-hash:20070603203153-e3110-48f345cd3686f06fbe8ba30a6d851e7c8f44fe98.gz
* make mouse bindings configurableJason Creighton2007-06-021-41/+20
| | | | darcs-hash:20070602040647-b9aa7-d7bad13c4919882368872a88f04a678308162be6.gz
* ignore numlock/capslock on mouse bindingsJason Creighton2007-06-011-2/+1
| | | | darcs-hash:20070601015137-b9aa7-51c6b9ec428c2d16d65b196384fa2ce953dda245.gz
* clean up mouse code a bitDon Stewart2007-05-311-12/+16
| | | | darcs-hash:20070531085308-9c5c1-73ed940708aa9a369b0345c0d2b2a4708a231e67.gz
* first shot at a floating layerJason Creighton2007-05-311-3/+42
| | | | | | | | | | | | | | | | | | | | | | | | 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.gz
* be sure to reset the gap list on rescreenDon Stewart2007-05-281-1/+1
| | | | darcs-hash:20070528031835-9c5c1-34c9fc2931a6daa8fc3e63385782f43b097e293f.gz
* support per-screen gap settings. you can have different gaps on individual ↵Don Stewart2007-05-281-1/+1
| | | | | | screens now darcs-hash:20070528031501-9c5c1-beaadbacb5efc1ce5998aba41fbb3b2c68cdf0d1.gz