Commit Graph

1807 Commits

Author SHA1 Message Date
Francesco Mazzoli 464d387044 take care of non-existant old workspaces 2012-11-13 09:33:03 +01:00
Francesco Mazzoli 74d596e0fc more informative `workspace' events
Add a `current' and `old' properties to the `focus' change type,
containing the current and old workspace respectively.  These additions
are not necessary anywhere else because `focus' is always triggered when
changing ws.
2012-11-13 09:33:00 +01:00
Francesco Mazzoli b67eedf71a simplify yajl related code
Specifically, put the version dependent code in some macros, and put
that plus the `y' and `ystr' macros in a separate file, `yajl_utils.h'.
2012-11-13 09:32:55 +01:00
Michael Stapelberg dece12bf18 Merge branch 'master' into next 2012-11-10 09:01:24 +01:00
Michael Stapelberg 81393c93c2 bugfix: fix workspace back_and_forth after displaying a scratchpad window
fixes #868
2012-11-10 09:01:04 +01:00
Michael Walle ae14fe9141 introduce new command to rename focused workspace
The corresponding command is 'rename workspace to <name>'. As a side-effect
this fixes the command 'rename workspace 1 to to'.

Signed-off-by: Michael Walle <michael@walle.cc>
2012-10-31 09:09:56 +01:00
Michael Stapelberg 71ccb4bef2 Merge branch 'master' into next 2012-10-29 16:42:11 +01:00
Michael Stapelberg e7a4580c5f Bugfix: force rendering when the parent’s orientation changed
Otherwise, the split indicator might not be refreshed even though it
should be.

fixes #858
2012-10-29 16:41:16 +01:00
Michael Stapelberg 9b87b2c8ec Implement smart popup_during_fullscreen mode
With this commit, the default behavior is to display popups while there
is a fullscreen application only if the popup belongs to that
application (as determined by the WM_TRANSIENT_FOR hint which
applications have to set properly).

fixes #663
2012-10-24 20:54:28 +02:00
Michael Stapelberg 29b19a7468 spelling error: s/implementaiton/implementation/g 2012-10-24 07:58:03 +02:00
Deiz aefcb0b668 Skip floating windows in the focus stack when moving through the tree
Includes a test for the new behaviour
2012-10-16 20:03:40 +02:00
Deiz fdfbc53c0b Focus windows when middle-clicking (X paste)
As with most click-based focusing, this only has an effect when
focus_follows_mouse is disabled.
2012-10-16 20:03:08 +02:00
Deiz c406b4c2fe Skip floating cons in focus (child|parent) and stop them from being split
Focusing child from a workspace should now skip over the floating con and
go directly to its child. Focusing parent from that grandchild should leave
the workspace focused again.
2012-10-16 20:01:36 +02:00
Michael Stapelberg 34a5bbb7e9 exit with a proper error message when there are no outputs available (Thanks flo)
fixes #842
2012-10-14 20:56:13 +02:00
Michael Stapelberg 39ba955919 Bugfix: Actually set border width in config_directives.c (Thanks strcat) 2012-10-09 22:06:36 +02:00
Deiz 47de7375dd Allow 'focus $dir' to move out of non-global fullscreen containers 2012-10-09 21:26:49 +02:00
Deiz ca77c12dde Allow workspace contents to be moved if there are only floating children 2012-10-09 21:25:13 +02:00
Deiz e07803999f Fix fullscreen focus bug and corresponding test flaw
As the workspace might be reached via recursion (e.g. moving from the edge
of a fullscreen split container), it's necessary to check for a fullscreen
container whenever a workspace is reached.
2012-10-09 21:24:04 +02:00
Deiz 7a280f5691 Grab keys with all permutations of lock and numlock
This should prevent all cases of caps lock (or shift lock, on some
keyboards) from interfering with i3 key bindings.
2012-10-09 21:15:06 +02:00
Michael Stapelberg 00ac2c4c9c accept ctrl as synonym of control (Thanks SardemFF7) 2012-10-09 14:09:12 +02:00
Michael Stapelberg 80492c8304 error out instead of accepting invalid key bindings (Thanks SardemFF7) 2012-10-09 14:09:08 +02:00
Michael Stapelberg ee36c8507e bugfix: config-parser: bind is a synonym for bindcode 2012-10-08 13:40:44 +02:00
Michael Stapelberg 040a441101 fix warning about printf() field length 2012-10-08 13:30:14 +02:00
Michael Stapelberg 20c0fa7cfb use the new parser by default
you can force the old parser with the command line flag
--force-old-config-parser-v4.4-only (which will be present in v4.4 only,
as the name suggests)
2012-10-08 13:26:42 +02:00
Michael Stapelberg 2738f13798 move owindow definition into the command parser 2012-10-08 13:26:24 +02:00
Michael Stapelberg 68e3e58232 link the parser test binaries with -g 2012-10-08 13:25:57 +02:00
Michael Stapelberg c2b699f3dc change the commands_parser prefix to 'command' for consistency 2012-10-08 13:25:32 +02:00
Michael Stapelberg 40c624e1c4 port the entire old config parser to the new one 2012-10-08 13:23:48 +02:00
Michael Stapelberg 6f9e6c16c8 config_parser: implement <number>s, proper error handling 2012-10-08 13:23:06 +02:00
Michael Stapelberg 00fca2dabd add first bits of a (custom) config parser 2012-10-08 13:17:46 +02:00
Michael Stapelberg d36264e403 generate-command-parser: make input/output configurable 2012-10-07 16:31:35 +02:00
Michael Stapelberg a6e1b75b18 allow floating cons to be reached using 'focus parent'
I suppose this was just an oversight. Let’s see if it causes any issues.

fixes #831
2012-10-04 18:50:33 +02:00
Deiz cae6fb627f Improve startup sequence termination conditions
If a window with _NET_STARTUP_ID set is moved to another workspace, it
will delete any associated startup sequence immediately. This will also
occur if a window has a leader with _NET_STARTUP_ID set, if the leader
has no container (never been mapped).

A startup sequence may also be deleted if it's matched by
startup_workspace_for_window() and its 30-second timeout has elapsed.
2012-10-04 17:48:51 +02:00
Deiz fdcba7b91a Replace the discrete 'split' Con property with a simple function. 2012-10-04 17:48:08 +02:00
Deiz d7e5da8b39 Un-fullscreen as needed when moving fullscreen containers
This avoids a case where a fullscreen container could be moved onto a
workspace that already had its own fullscreen container, leading to
two fullscreen containers on top of each other.
2012-10-04 17:46:54 +02:00
Michael Stapelberg 2eeb2a1067 shmlog: Remove O_TRUNC flag for shm_open, we truncate ourselves 2012-10-04 17:05:08 +02:00
Michael Stapelberg 13147978c5 Merge branch 'master' into next 2012-10-03 15:08:31 +02:00
Sascha Kruse 507898484f set workspace_layout in create_workspace_on_output
fixes #835
2012-10-03 15:08:21 +02:00
Deiz f89bbe0746 Focus the relevant workspace when clicking any container. 2012-10-03 00:15:55 +02:00
Deiz f4b09862fc Maintain relative positioning when moving floating windows between outputs. 2012-10-03 00:14:57 +02:00
Deiz a9d859f84e Only re-focus the workspace when moving a con if the target ws is hidden. 2012-10-03 00:03:24 +02:00
Deiz e89a25f81f Implement moving workspaces as if they're regular containers 2012-09-29 00:17:36 +02:00
Michael Stapelberg 72c66a2091 Merge branch 'master' into next 2012-09-29 00:03:42 +02:00
Michael Stapelberg 31e8d7f2f8 Bugfix: Correctly move floating windows to invisible workspaces cross-output (Thanks swh) 2012-09-29 00:02:41 +02:00
Michael Stapelberg 43d486441d Bugfix: with one ws per output, don’t crash on cross-output moves (Thanks moju)
fixes #827
2012-09-28 23:04:37 +02:00
Michael Stapelberg 66b389cba1 Make the resize command honor criteria (Thanks Tblue)
fixes #816
2012-09-28 20:36:25 +02:00
Michael Stapelberg 2252b4f5b9 Merge branch 'master' into next 2012-09-28 19:47:16 +02:00
Michael Stapelberg a082cf8c65 Bugfix: Draw h-split indicator at the right position
fixes #817
2012-09-28 19:46:50 +02:00
Michael Stapelberg 5d8e3f58f6 Fix 'border toggle' (it "skipped" 1px border) (Thanks joepd)
fixes #818
2012-09-28 19:29:14 +02:00
Michael Stapelberg cd2a1267c8 Merge branch 'master' into next 2012-09-28 18:24:04 +02:00