diff --git a/README.md b/README.md index 781d7a4..d9ea59a 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ xoat * Designed for wide screens, including multi-head support. * Static tiling; you get just three fixed tiles and windows never move automatically. -* Bare minimum EWMH to support panels and [simpleswitcher](https://github.com/seanpringle/simpleswitcher) +* Bare minimum EWMH to support panels and [simpleswitcher](https://github.com/seanpringle/simpleswitcher). * A few keyboard controls for moving, focusing, cycling, closing, and finding windows. * Transient windows and dialogs are centered on parent, not tiled. * Splash screens and notification popups are displayed as requested, not tiled. @@ -13,15 +13,23 @@ xoat ### The Layout - -------------------------------- - | | | - | | | - | | 2 | - | 1 | | - | |---------| - | | | - | | 3 | - -------------------------------- + --------------------------------- --------------------- + | | | | | + | | | | | + | | 2 | | | + | 1 | | | 1 | + | |---------| | | + | | | | | + | | 3 | | | + --------------------------------- | | + |-------------------| + | | | + | 3 | 2 | + | | | + --------------------- + +* Layout can be flipped horizontally to place tile 1 on the right. +* Layout rotates along with Xrandr rotated monitors. ### Philosophy @@ -37,6 +45,7 @@ xoat 2. Medium monitoring-something apps 3. Small background-chat-music apps 4. Apps people should not use ;-) + * Want more tiles? Buy more monitors. * Keyboard controls generally preferred over the mouse, when practical. * Faster. Muscle memory. * Click-to-focus model preferred over focus-follows-mouse. @@ -44,20 +53,9 @@ xoat * CtF is harder to get wrong and makes it easy to forget about the mouse for some tasks. * 2/3 is a nice fraction. -### Stuff Removed - -Some elements that proved to be the wrong direction for xoat have been removed. - -* Tags have been replaced with the snapshot/rollback mechanism. - * Tags were a way to group and raise windows en-masse, but they were fiddly to use. - * Snapshot allows the freedom to mess windows up then quicky revert to a known state. -* Some EWMH desktop atoms have been dumped as surplus to requirements. - ### config.h -All customization happens in config.h. See in-line comments there. - -**Note**: config.h is tracked! Use a local git branch to protect any customization. +All customization happens in config.h. See in-line comments there. It's tracked, so use a local git branch or a merge tool to protect any customization. diff --git a/config.h b/config.h index 58627f1..8ff790d 100644 --- a/config.h +++ b/config.h @@ -5,6 +5,7 @@ #define BORDER_FOCUS "Royal Blue" #define BORDER_URGENT "Red" #define BORDER_ABOVE "Dark Green" +#define GAP 2 // Title bar xft font #define TITLE "sans:bold:size=10" diff --git a/setup.c b/setup.c index 5c6957d..5a782b8 100644 --- a/setup.c +++ b/setup.c @@ -116,9 +116,9 @@ void setup() m->spots[j].h = height_spot1; if (j == SPOT1) continue; - m->spots[j].y = SPOT1_ALIGN == SPOT1_LEFT ? y + height_spot1: y; - m->spots[j].h = h - height_spot1; - m->spots[j].w = w - width_spot2; + m->spots[j].y = (SPOT1_ALIGN == SPOT1_LEFT ? y + height_spot1: y) + GAP; + m->spots[j].h = h - height_spot1 - GAP; + m->spots[j].w = w - width_spot2 - GAP; if (j == SPOT3) continue; m->spots[j].x = x + w - width_spot2; @@ -136,13 +136,13 @@ void setup() m->spots[j].h = h; if (j == SPOT1) continue; - m->spots[j].x = SPOT1_ALIGN == SPOT1_LEFT ? x + width_spot1: x; - m->spots[j].w = w - width_spot1; + m->spots[j].x = (SPOT1_ALIGN == SPOT1_LEFT ? x + width_spot1: x) + GAP; + m->spots[j].w = w - width_spot1 - GAP; m->spots[j].h = height_spot2; if (j == SPOT2) continue; - m->spots[j].y = y + height_spot2; - m->spots[j].h = h - height_spot2; + m->spots[j].y = y + height_spot2 + GAP; + m->spots[j].h = h - height_spot2 - GAP; } }