aboutsummaryrefslogtreecommitdiffstats
path: root/XMonad/Layout (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add the ability to specify padding used with MaximizePeter Jones2015-03-101-12/+26
| | | | | | Ignore-this: 71ac5db4513da0b7a45eb82ec184f4e3 darcs-hash:20150309232939-fd82d-9b23314e9b125c4081242c5fe5fd7f9ed8795558.gz
* Don't restore windows when changing workspacesPeter Jones2015-03-101-1/+0
| | | | | | Ignore-this: 5333205aa1a9fbc5c7844fad69561517 darcs-hash:20150310201709-fd82d-4ada2fc454f82a16f5746942c176cc615a3725d9.gz
* New layout modifier: HiddenPeter Jones2015-03-091-0/+135
| | | | | | | | | | | Ignore-this: 5534fe18e642d1691a9b3f99341e082d A layout modifer that is meant to work with the BinarySpacePartition layout. By removing windows from the window set and adding them back at a later time, you can move windows to a different branch of the BSP tree. darcs-hash:20150309223036-fd82d-c5bc728563e38029f4b665dff20a759c5379b08f.gz
* Fixes to warnings with BSP layoutanton.pirogov2015-03-151-32/+40
| | | | | | Ignore-this: 7642710fdb2a866150875f2d521d19fd darcs-hash:20150315100041-8e960-01ba343721c6eaba5c96da3916201f740feecbec.gz
* Improved BinarySpacePartition, added Equalize,Balance and FocusParent and ↵anton.pirogov2015-03-121-118/+425
| | | | | | | | mouse resize support Ignore-this: 31b5d7bf38e5b391df266906deb5e382 darcs-hash:20150312145220-8e960-c72823501fda2fa7a60ec99e5eecb01c5e2f200c.gz
* New layout module X.L.Dwindlenzeh2015-03-151-0/+210
| | | | | | | | | | | Ignore-this: a1507e9eda6e6cabd679c2c3b50d9a38 This adds three layouts: Spiral is a reimplementation of X.L.Spiral.spiral with a (to me) more intuitive splitting policy. Dwindle is similar but pushes the smaller windows into a corner rather than into the center. Squeeze just stacks windows vertically or horizontally using geometrically decreasing sizes. darcs-hash:20150315130913-c6b6b-e00f15f5ec778d8856693d5655d2cafda8fc61a2.gz
* X.L.AvoidFloats more useful default settingsankaan2015-03-101-6/+6
| | | | | | | | | Ignore-this: af6535bace9219619858751eeeff6520 Changed default settings with the simple layout modifier. Instead of asking for a bool indicating if all windows should be avoided, no such bool is asked for. No windows are avoided by default. I think this will be a more useful default setting since it would be annoying if dialogue windows are avoided. The same functionality is possible with the advanced constructor. This will be easier for new users. This will break configurations using the old module, but this will not be much of an issue since the module has not been added to the repo as of this writing. darcs-hash:20150310212022-3948e-381395bd216296de1739fd5c2c22ed0bdfc85c9d.gz
* X.L.AvoidFloats, like avoidStruts but for floatsankaan2015-03-061-0/+239
| | | | | | | | | | | | | | | | | | | Ignore-this: 3722d7787dd2429313f92f85f3ae1251 Checks for floating windows within the layout area and finds a maximum area rectangle within that does not overlap with any of the floating windows. This rectangle is used for all non-floating windows. This new functionality introduced problems with the recommended configuration of one of my other modules (X.A.FloatSnap.) A new and more reliable method of distinguishing between clicks and drags where therefore introduced in the new module X.A.AfterDrag. This does not break any prior use of FloatSnap, but will require changes in configuration if used together with AvoidFloats. (This is mentioned in the docs for AvoidFloats and I recommend using the new configuration method even if AvoidFloats is not in use.) darcs-hash:20150306171702-3948e-a8b8c75ba49306a33d87c9414117f8a49c536dbf.gz
* X.L.LayoutBuilder place active on topankaan2015-03-061-13/+32
| | | | | | | Ignore-this: 69d718d0d044ee59a877fa0e63edc474 Make sure that the active layout area is placed on top of all other areas when placing windows. This makes overlapping areas usable. darcs-hash:20150306164200-3948e-03994d77db63c13c1d7b308a40f2568d4f085215.gz
* adjust an import to fix the buildAdam Vogt2015-03-101-1/+1
| | | | | | Ignore-this: 72f67dd2cb1cc6900269383124844c2b darcs-hash:20150310182403-1499c-46007f2a3223f96cdd19ae807a171791098401c0.gz
* merge conflicts in X.L.SpacingAdam Vogt2015-03-101-3/+25
| | | | | | | | Ignore-this: f0830d6483d30d643e7e182e310ec042 I should have just applied Anton Pirogov March 4 patch. darcs-hash:20150310182046-1499c-b23bcf058b68fb1a6f63d390269a038679be3b2a.gz
* Added messages to adjust the gap dynamicallyanton.pirogov2015-03-041-18/+3
| | | | | | Ignore-this: 52b590c820db765796de41f38fffdf3c darcs-hash:20150304082520-8e960-4aa7b967ae23a4c135283449ddc7c46630a3b8d3.gz
* X.L.Spacing needs -XPatternGuards nowAdam Vogt2015-03-101-0/+1
| | | | | | Ignore-this: d6b2b76fddbd9ad066e7cb39933f055a darcs-hash:20150310181248-1499c-d6d6a82acda00608554c80efe067162f7ea9dba4.gz
* Added messages to adjust the gap dynamicallyanton.pirogov2015-03-031-3/+17
| | | | | | Ignore-this: 891ca1ccca183d6af8e4aa4bf6d843fb darcs-hash:20150303210143-8e960-aa36510443a7db957524b163230b1e4357d181b5.gz
* BinarySpacePartition downstream changesbenweitzman2014-11-101-18/+116
| | | | | | | | | | | Ignore-this: 42ecc2b07388ba0c7b3eac980256c17b Pulled in changes from my repo for this layout on github (https://github.com/benweitzman/BinarySpacePartition) Includes a new mode for resizing windows in a more intuitive way, also contains a bug fix that was preventing users from resiving a window up. Includes changes from github users egasimus (Adam Avramov) and SolitaryCipher (Nick) darcs-hash:20141110202259-9f2e8-06c64eec2a4a139a350b8f729af818d07506b18d.gz
* X.L.Master: Add FixMaster layout modifierAnton Vorontsov2014-12-201-5/+25
| | | | | | | | | | | | | | Ignore-this: 82e9736853287f753248af41843ceb6b This layout modifier is useful for the case if you desire to add a master pane that has fixed width (it's fixed even if there is just one window opened). Especially nice feature if you don't want to have too wide terminal in a master pane. The layout is implemented as an addition to Master layout, so it reuses most of the code. darcs-hash:20141220011339-1836e-543b0c692297779d51fd6f3f71e820366c977721.gz
* Layout.Spacing: Outer window edges now get as much spacing as inner onesFelix Crux2014-12-191-0/+38
| | | | | | | | | | | | | | | Ignore-this: 61363e97939fe857876c8252ac5f0302 Layout.Spacing applies a customizable amount of space around the outside of each window. At window edges where two windows meet, the total distance between them is therefore twice the customized value (one space value from each window). At the edge of the screen, however, the spacing is only applied once. This results in uneven amounts of spacing and differently-sized gaps on the screen. This patch extends the Spacing layout to include a further gap all around the edge of the screen, thus making all spaces around windows equal in size. darcs-hash:20141219223646-7cf82-41539353bf5af7c54809bb7a9ff1c6a52320aa10.gz
* Implement proper handling of dynamically changing hostnameAnton Vorontsov2014-09-011-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Ignore-this: 2aeac6d2161e666d40cda6a09f78b208 The module implements a proper way of finding out whether the window is remote or local. Just checking for a hostname and WM_CLIENT_MACHINE being equal is often not enough because the hostname is a changing subject (without any established notification mechanisms), and thus WM_CLIENT_MACHINE and the hostname can diverge even for a local window. This module solves the problem. As soon as there is a new window created, we check the hostname and WM_CLIENT_MACHINE, and then we cache the result into the XMONAD_REMOTE property. Notice that XMonad itself does not know anything about hostnames, nor does it have any dependency on Network.* modules. For this module it is not a problem: you can provide a mean to get the hostname through your config file (see usage). Or, if you don't like the hassle of handling dynamic hostnames (suppose your hostname never changes), it is also fine: this module will fallback to using environment variables. darcs-hash:20140901072158-1836e-fa2b05c79ec3217d5024b7e050b2239dcf7de4b4.gz
* Add Stoppable layout for power savingAnton Vorontsov2014-09-011-0/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ignore-this: a52805d9f3095cd7af48507847ed2fe3 This module implements a special kind of layout modifier, which when applied to a layout, causes xmonad to stop all non-visible processes. In a way, this is a sledge-hammer for applications that drain power. For example, given a web browser on a stoppable workspace, once the workspace is hidden the web browser will be stopped. Note that the stopped application won't be able to communicate with X11 clipboard. For this, the module actually stops applications after a certain delay, giving a chance for a user to complete copy-paste sequence. By default, the delay equals to 15 seconds, it is configurable via 'Stoppable' constructor. The stoppable modifier prepends a mark (by default equals to "Stoppable") to the layout description (alternatively, you can choose your own mark and use it with 'Stoppable' constructor). The stoppable layout (identified by a mark) spans to multiple workspaces, letting you to create groups of stoppable workspaces that only stop processes when none of the workspaces are visible, and conversely, unfreezing all processes even if one of the stoppable workspaces are visible. To stop the process we use signals, which works for most cases. For processes that tinker with signal handling (debuggers), another (Linux-centric) approach may be used. See https://www.kernel.org/doc/Documentation/cgroups/freezer-subsystem.txt darcs-hash:20140901072141-1836e-f65c7bdad9b87883e41a526f496d93f0171ed149.gz
* XMonad.Config.Prime, a do-notation for configDevin Mullins2014-09-141-2/+17
| | | | | | | | | | | | | Ignore-this: f7397aa6e6efe5d76acebfa22c567baa Note that the use of RebindableSyntax is because of the need to vary the layoutHook type throughout the config. The alternative, using the existential Layout type, was rejected because it required TemplateHaskell in order to look nice, and TemplateHaskell is not portable. I've tried to make a version of (>>) that also worked on normal monads, but have had no luck as of yet. Maybe some intrepid soul can add it later. darcs-hash:20140914064828-c7120-fbf2746080bb2410b2b70da290fd50eefd49435d.gz
* remove trailing whitespace in L.BinarySpacePartitionAdam Vogt2014-05-011-50/+50
| | | | | | Ignore-this: 8dd677978992e0854801b8f254463dc2 darcs-hash:20140501011943-1499c-6536a0f80c5157465587cc7a98d165119586357d.gz
* replace Bound with the equivalent Direction2DAdam Vogt2014-05-011-28/+27
| | | | | | Ignore-this: b1f1c256aba07f70918fe1d693c8087b darcs-hash:20140501011540-1499c-a4630752cc7fcb87bbbdbd5b909c7b5316b14a31.gz
* remove unused extension in BSPAdam Vogt2014-05-011-1/+1
| | | | | | Ignore-this: a4962486b2aa3980536bff19a537451e darcs-hash:20140501011455-1499c-8f485a327700c52b5b62206325034f9d92e2c05e.gz
* Add BinarySpacePartition layoutbenweitzman2014-04-301-0/+304
| | | | | | Ignore-this: a85d1dc51bf54c59ae2bd9d948cc1088 darcs-hash:20140430205848-9f2e8-c9fc6988cf24f404bff77042f1ad11d2165f6193.gz
* Remove unneeded context with the IfMax layout instanceAdam Vogt2014-04-231-2/+1
| | | | | | | | Ignore-this: 3b8ac316f56df6a84420754db769fb0 Extra constraints on instances are about as useful as -XDataTypeContexts darcs-hash:20140422221105-1499c-beddf2399e373128b44faa1ffba7dfe9b68b76f7.gz
* Adding side tabs and replacing TabbarLocation with Direction2D.nrujac2014-02-191-25/+24
| | | | | | Ignore-this: edabeec973b4e0d61515818367689843 darcs-hash:20140219200811-8d489-7e1afa9668bda0a6a4cafab8cde96e50cb32f1ed.gz
* Add side tabs to the tabbed layout.nrujac2014-02-131-9/+62
| | | | | | Ignore-this: f81bafe9cb75a30ed6bbbe68cf5d66c0 darcs-hash:20140213215247-8d489-b1ce41f14a76281985109b933dcf9481619a7d58.gz
* expose and document X.L.IndependentScreens.marshallSortDaniel Wagner2014-01-281-1/+2
| | | | | | Ignore-this: 90c1437c6ffe1dbd8f4a4ed192097ec darcs-hash:20140128212844-76d51-ade7eabfc1a759b5b97409835c54e705d0a727bd.gz
* IfMax-LayoutIlya Portnov2013-12-011-0/+77
| | | | | | | Ignore-this: dac53f2a0505e740f05fdf03f1db0c21 This adds a new ("conditional") layout, IfMax, which simply runs one layout, if there are < darcs-hash:20131201072634-c5067-1caf5f9de962285cf1b656266e78a0c46979f9c7.gz
* XMonad.Actions.UpdatePointer: generalise updatePointerLiyang HU2013-07-301-8/+8
| | | | | | Ignore-this: 3374a62b6c63dcc152dbf843cd0577f0 darcs-hash:20130730071007-3269f-c93d34a65590e3252ad43902e6eb499e2ba51b12.gz
* use Data.Default wherever possible, and deprecate the things it replacesDaniel Wagner2013-05-2820-75/+93
| | | | | | Ignore-this: 898458b1d2868a70dfb09faf473dc7aa darcs-hash:20130528013909-76d51-863278165b6f149c47b08b31b34e85ddcab19f1f.gz
* eliminate references to defaultConfigDaniel Wagner2013-05-2854-79/+79
| | | | | | Ignore-this: 37ae613e4b943e99c5200915b9d95e58 darcs-hash:20130528005825-76d51-89eaf6f1aeeb02086371f9c4ae2afade984f62e0.gz
* minimal change needed to get xmonad-contrib to build with xmonad's ↵Daniel Wagner2013-05-281-1/+1
| | | | | | | | data-default patch Ignore-this: 291e4f6cd74fc2b808062e0369665170 darcs-hash:20130528001040-76d51-2e9df581701c8b6f3fc39c57bf16de7d54743db6.gz
* Remove unneeded XSync call in Layout.ShowWNameFrancesco Ariis2013-05-171-1/+0
| | | | | | Ignore-this: 4d107c680572eff464c8f6ed9fabdd41 darcs-hash:20130517153341-08c78-20776b879b34f1bdb3ddc2d54049105d90e18a33.gz
* Fix module name in comment of X.L.FullscreenAdam Vogt2013-05-141-1/+1
| | | | | | Ignore-this: cb5cf18c301c5daf5e1a2527da1ef6bf darcs-hash:20130514215727-1499c-f6c8e7e5a2699db37eebc86abeff5e399e17b622.gz
* Remove unnecessary contexts from L.MultiToggleAdam Vogt2013-02-171-2/+2
| | | | | | Ignore-this: 6b0e413d8c3a58f62088c32a96c57c51 darcs-hash:20130217163356-1499c-49328ff9588901c49e7b84a80ef079d2b7514268.gz
* Generalises modWorkspace to take any layout-transforming functiongopsychonauts2013-05-011-12/+13
| | | | | | | | | | | | | | | Ignore-this: 28c7dc1f6216bb1ebdffef5434ccbcbd modWorkspace already was capable of modifying the layout with an arbitrary layout -> layout function, but its original type restricted it such that it could only apply a single LayoutModifier; this was often inconvenient, as for example it was not possible simply to compose LayoutModifiers for use with modWorkspace. This patch also reimplements onWorkspaces in terms of modWorkspaces, since with the latter's less restrictive type this is now possible. darcs-hash:20130501151425-1e6bb-1fc7e26a39fab65bb2bf387db0052f19e7c619fc.gz
* warning policeDaniel Wagner2013-05-021-4/+4
| | | | | | Ignore-this: ae7412ac77c57492a7ad6c5f8f50b9eb darcs-hash:20130502012700-76d51-e3a9d6a50623cbd06b8ea65630e17f055408306a.gz
* XMonad.Config.DmwitDaniel Wagner2013-05-021-0/+3
| | | | | | Ignore-this: 7402161579fd2e191b60a057d955e5ea darcs-hash:20130502012132-76d51-db5a8296f28a2d9e16e5961bf8a235c8a0d078ed.gz
* minor fixes to the haddock markup in X.L.IndependentScreensDaniel Wagner2013-04-111-1/+2
| | | | | | Ignore-this: b6a139aa43fdb39fc1b86566c0c34c7a darcs-hash:20130411193849-76d51-f8b1e55d644f0f17b8b3757cf0aa5d3d13a3d857.gz
* add whenCurrentOn to X.L.IndependentScreensDaniel Wagner2013-04-091-0/+35
| | | | | | Ignore-this: ceea3d391f270abc9ed8e52ce19fb1ac darcs-hash:20130408225251-76d51-9000eed38173684de773c3bb70099020a8a3973c.gz
* Allow to specify the initial gaps' states in X.L.GapsPaul Fertser2013-02-221-1/+6
| | | | | | Ignore-this: 31596d918d0050e36ce3f64f56205a64 darcs-hash:20130222072232-52607-94c6527828fc9414be84cae7839889ccd656cd03.gz
* Update L.TrackFloating.useTransient example codeAdam Vogt2013-01-121-2/+2
| | | | | | | | | Ignore-this: e4e31cf1db742778c1d59d52fdbeed7a Suggest useTransient goes to the right of trackFloating which is the configuration actually tested. darcs-hash:20130112041239-1499c-bd81bd9833241f0b202c05585577b8b6ee4f5155.gz
* Adapt ideas of issue 306 patch to a new modifier in L.TrackFloatingAdam Vogt2013-01-121-5/+67
| | | | | | Ignore-this: d54d27b71b97144ef0660f910fd464aa darcs-hash:20130112035701-1499c-44f401aad97e60d9a2680a7b7619190c4f64d078.gz
* Remove trailing whitespace.Adam Vogt2012-11-098-52/+52
| | | | | | Ignore-this: 72e3afb6e6df47c51262006601765365 darcs-hash:20121109014156-1499c-45797b245e25e966e4ca337ee224b593aaac63a0.gz
* Use Control.Exception.catch explitly to avoid warningsAdam Vogt2012-11-091-1/+0
| | | | | | | | | | | | | | Ignore-this: 2cebdfe604c581f2b4a644e9aed726c7 The base that comes with ghc-7.6.1 no longer includes Prelude.catch; so these modules were changed so that there is no warning for import Prelude hiding (catch) At the same time these changes should be compatible with older GHCs, since the catch being has never been the one in the Prelude. darcs-hash:20121109013506-1499c-c593662b0780eb49287efcbfe0e9796f7dd57c73.gz
* Rename variables "state" to avoid warnings about shadowingAdam Vogt2012-11-093-49/+49
| | | | | | | | | | | | Ignore-this: cd063d632412f758ca9fed6393521c8f XMonad core re-exports Control.Monad.State, which includes a function "state" if you happen to use mtl-2. Since there's a chance xmonad still works with mtl-1 avoid imports like: import XMonad hiding (state) darcs-hash:20121109012316-1499c-539514f4cd97ba8b18a8fbfd1a15333b46d962e1.gz
* Rename variable in L.Minimize to avoid shadowing.Adam Vogt2012-11-091-3/+3
| | | | | | | | Ignore-this: b46d3e8e0d4106cea6966116be386677 This "state" is new with a newer mtl. darcs-hash:20121109003410-1499c-5a2ac6463df763768818a9dae5c2721c3eaede76.gz
* Added smart spacing to the spacing moduledaedalusinfinity2012-09-231-0/+15
| | | | | | | | Ignore-this: 9104bc8feb832f63f2f18998c0f7ba92 Added smart spacing to the spacing module, which adds spacing to all windows, except to windows on singleton workspaces. darcs-hash:20120923034527-6243b-e3036a0e7e350648026148a4ff0d25db40358e52.gz
* refer to the new name 'handleEventHook' instead of the old name 'eventHook' ↵Daniel Wagner2012-06-181-1/+1
| | | | | | | | in X.L.Fullscreen documentation Ignore-this: bd3b26c758cf3993d5a93957bb6f3663 darcs-hash:20120618181003-76d51-01c94d2bf810031fbe070a087108b8ab75e8b9be.gz