Commit Graph

465 Commits

Author SHA1 Message Date
Michael Stapelberg
8a9b093bc3 tests: replace left-over move before/after commands (Thanks mxf) 2011-11-21 18:54:20 +00:00
Michael Stapelberg
2783aa9fc9 tests: add t/180-fd-leaks to ensure i3 does not leak fds on exec 2011-11-20 10:52:21 +00:00
Michael Stapelberg
3abd7ab073 complete-run: close all fds except for 0, 1, 2
running in a VIM subshell leads to one more fd, for example
2011-11-20 10:51:21 +00:00
Michael Stapelberg
b0ee2dfd32 complete-run: close the old socket fd 2011-11-20 10:24:13 +00:00
Michael Stapelberg
b6e859787e clarify comments about socket activation (Thanks mxf) 2011-11-16 23:14:57 +00:00
Michael Stapelberg
33ee4679e7 tests: store temp configs in /tmp/ 2011-11-16 21:41:45 +00:00
Michael Stapelberg
3665f3e755 tests: Bugfix: Fix socket activation (see comment) 2011-11-16 21:41:00 +00:00
Michael Stapelberg
77a9e4b18f complete-run: implement --strace, make --valgrind log to test-specific file 2011-11-15 23:30:17 +00:00
Michael Stapelberg
9cbf34ac14 lib/SocketActivation: Bugfix: remove old code which leaks the socket file descriptor to i3 2011-11-15 19:54:03 +00:00
Michael Stapelberg
60bfc3a600 Bugfix: Correctly handle --no-startup-id with quoted exec commands (Thanks aksr)
Parser changes shortly before a release. What could possibly go wrong.
2011-11-11 00:28:04 +00:00
Michael Stapelberg
e73538a56f t/154-regress-multiple-dock: s/next v/focus right 2011-11-10 18:43:03 +00:00
Michael Stapelberg
bebd2fceb6 Bugfix: Correctly return to initial state after prev/next/back_and_forth (Thanks Brian)
Fixes: #552
2011-11-10 18:42:24 +00:00
Michael Stapelberg
2c48280017 complete-run: remove Carp::Always, slipped in when debugging 2011-11-09 22:41:56 +00:00
Michael Stapelberg
316318c1fc complete-run: don’t print long logfile paths, they are useless by now anyway 2011-11-09 22:38:29 +00:00
Maik Fischer
7633aa67a1 complete-run: log verbose output, display statuslines instead 2011-11-09 23:00:10 +01:00
Michael Stapelberg
31b01798dd lib/SocketActivation: don’t make POSIX export everything (Thanks mxf) 2011-11-07 23:45:28 +00:00
Michael Stapelberg
c8eb7b08ac lib/StartXDummy: use close STDOUT, STDERR instead of POSIX::close (Thanks mxf) 2011-11-07 23:39:45 +00:00
Michael Stapelberg
bf12befd6d lib/StartXDummy.pm: document why we use -config /dev/null 2011-11-07 23:07:08 +00:00
Michael Stapelberg
afc488021f complete-run.pl: automatically start Xdummy instances unless -d is specified
This makes running the testsuite incredibly easy:
    $ ./complete-run.pl
:)
2011-11-07 23:04:45 +00:00
Michael Stapelberg
8b887e8447 complete-run: Bugfix: return condvar when $dont_start is true 2011-11-07 22:38:06 +00:00
Michael Stapelberg
0615cb3595 complete-run.pl: implement --help 2011-11-07 21:21:51 +00:00
Michael Stapelberg
fdf7b1706c complete-run: Bugfix: Don’t call recv inside a callback when cleanly exiting i3 2011-11-07 20:56:36 +00:00
Michael Stapelberg
dbd6440432 complete-run: Use Carp::Always to get nice stacktraces in case of errors 2011-11-07 20:56:04 +00:00
Michael Stapelberg
c75cc525f7 lib/SocketActivation: use single quotes (for consistency) 2011-11-07 20:54:33 +00:00
Michael Stapelberg
1c0d69d4e6 complete-run: implement --valgrind 2011-11-07 20:53:49 +00:00
Michael Stapelberg
389fdcf79f complete-run: pass outdir (not only logpath) to activate_i3() 2011-11-07 20:52:14 +00:00
Michael Stapelberg
50d14718f4 fix t/120-multiple-cmds: open a window before moving 2011-10-27 23:30:29 +01:00
Michael Stapelberg
edfa9febae extend t/124-move.t to test move for floating containers 2011-10-27 21:46:01 +01:00
Michael Stapelberg
ca0c2a46e4 t/124-move.t: re-activate test for useless move commands 2011-10-27 21:22:41 +01:00
Michael Stapelberg
e710477a07 Bugfix: properly handle comments in colors {} blocks of bar config (+test) (Thanks fernandotcl) 2011-10-25 22:31:57 +01:00
Michael Stapelberg
af6f8ca7c2 complete-run: clear the DESKTOP_STARTUP_ID environment variable before starting i3 2011-10-25 22:21:59 +01:00
Michael Stapelberg
91d589b176 tests: extend t/175-startup-notification to test the --no-startup-id flag 2011-10-25 22:21:37 +01:00
Fernando Tarlá Cardoso Lemos
d490bae8a2 Close empty workspaces if they're not visible.
Previously, we'd only close an empty workspace when we moved away
from it. Now we also close it when the last client exits, as long
as that workspace is not visible anymore.
2011-10-24 00:12:14 +01:00
Michael Stapelberg
29f9f8c090 Fix tests: s/i3bar/bar {/ and hash prefix for color codes in GET_BAR_CONFIG 2011-10-23 21:51:43 +01:00
Michael Stapelberg
3a99c914e0 tests: default bar mode changed 2011-10-21 23:00:38 +01:00
Michael Stapelberg
bf408c9a08 tests: depend on AnyEvent::I3 0.09 (for get_bar_config) 2011-10-20 20:31:44 +01:00
Michael Stapelberg
ab2d96ba48 tests: modify $PATH so that it prefers the compiled versions of everything in ../ 2011-10-20 19:02:08 +01:00
Michael Stapelberg
ad0f13a0a9 Clean bars before reloading the config (+test)
While the configuration gets updated in i3, the i3bar processes will not pick
up these changes. We have to think about a good way to do that.
2011-10-20 18:47:09 +01:00
Michael Stapelberg
15bface10d Create different IDs for each bar (+test) 2011-10-19 19:57:39 +01:00
Michael Stapelberg
d9f3a31cb7 tests: add a test to check that bar configs are parsed correctly 2011-10-18 22:15:48 +01:00
Michael Stapelberg
82ec0169cb tests: add t/176-workspace-baf for the workspace back_and_forth feature 2011-10-17 23:34:29 +01:00
Maik Fischer
fce422d99e i3test.pm: use strict; use warnings; and fix related bugs 2011-10-12 22:21:57 +01:00
Michael Stapelberg
27dadb4ad9 testcases/makefile: add modeline, add testsuite-* and latest to 'clean' target 2011-10-10 21:56:43 +01:00
Michael Stapelberg
71a3da1ef3 t/175-startup-notification: don’t wait for i3 mapping the window
It is on a different workspace and will therefore not get mapped.
Syncing is enough.
2011-10-10 16:00:34 +01:00
Michael Stapelberg
6ac098a45e support _NET_STARTUP_ID on the client leader window
(necessary for GIMP, geeqie, …)
2011-10-10 15:54:17 +01:00
Michael Stapelberg
7750382b89 test: set the _NET_STARTUP_ID before mapping the window 2011-10-10 15:54:17 +01:00
Michael Stapelberg
198f16ece9 add testcase for the startup notification protocol 2011-10-10 15:54:17 +01:00
Maik Fischer
19b13a0af5 testcases: add Makefile.PL to automatically install deps via CPAN 2011-10-08 20:58:37 +01:00
Michael Stapelberg
ae1ab9eb27 tests: rename files (00x-*.t is basic stuff, >=100-*.t are tests using IPC) 2011-10-08 14:38:50 +01:00
Michael Stapelberg
c48a092e24 testsuite: delete obsolete makefile 2011-10-08 14:30:47 +01:00
Michael Stapelberg
1056ecc885 complete-run: eliminate dependency on EV 2011-10-05 23:52:19 +01:00
Michael Stapelberg
27a38a3917 complete-run: explicitly state why we need to overwrite SIGCHLD 2011-10-05 23:29:58 +01:00
Michael Stapelberg
3136573a70 tests: eliminate List::MoreUtils 2011-10-05 23:21:36 +01:00
Michael Stapelberg
b9224634dd tests: eliminate Try::Tiny 2011-10-05 23:21:23 +01:00
Michael Stapelberg
689f3b8cf7 tests: Eliminate IO::Scalar 2011-10-05 23:17:09 +01:00
Michael Stapelberg
b9cd9132d0 tests: remove unused Proc::Background 2011-10-05 20:48:34 +01:00
Michael Stapelberg
bd33c09845 tests: move i3test.pm from t/lib to lib/ 2011-10-04 23:39:36 +01:00
Michael Stapelberg
57484553e6 tests: use a lot higher timeouts
This makes the tests more robust on a machine which is loaded.
Also, it makes the tests run (significantly) longer if anything goes wrong.
2011-10-04 23:36:57 +01:00
Michael Stapelberg
359717970d tests: don’t overwrite $timeout, kill timer when done 2011-10-04 23:36:43 +01:00
Michael Stapelberg
4e1d50fa3a tests: Convert all testcases to use the new launch_with_config API
It now returns a pid directly, not a Proc::Background object.
2011-10-04 23:34:23 +01:00
Michael Stapelberg
8d9b4c3c04 tests: launch_with_config: use socket activation 2011-10-04 23:33:38 +01:00
Michael Stapelberg
bf33c8d7c9 tests: SocketActivation: append to the logfile, more comments 2011-10-04 23:31:33 +01:00
Michael Stapelberg
c8d42fbabe tests: SocketActivation: only close() and dup2() if fileno(socket) != 3 2011-10-04 23:31:06 +01:00
Michael Stapelberg
6c7c4d52d0 tests: Refactor the socket activation into lib/SocketActivation.pm 2011-10-04 23:30:30 +01:00
Michael Stapelberg
a94ec5ee4e tests: re-order dependencies in complete-run, make clear which are shipped with Perl 2011-10-04 20:10:11 +01:00
Michael Stapelberg
53121c746c tests: remove unused dependency Proc::Background from complete-run 2011-10-04 20:05:12 +01:00
Michael Stapelberg
aa65b721b8 tests: eliminate dependency on the DateTime module by using POSIX::strftime 2011-10-04 20:03:08 +01:00
Michael Stapelberg
20d6ae4110 tests: make complete-run use POSIX::close(3) instead of reserving a file descriptor when starting
This makes it possible to run complete-run.pl with a "tainted" environment in
which fd 3 (and possibly others) are already present.
2011-10-04 19:58:17 +01:00
Michael Stapelberg
32ea923721 add a test for the 'move workspace next/prev' command 2011-10-02 22:18:21 +01:00
Michael Stapelberg
683bfa58d5 tests: Use AnyEvent::I3’s get_marks (requires AE::I3 >=0.08)
We also don’t bother with timeouts anymore. It’s expected to run the tests with
a sufficiently recent version of i3. The tests will just hang if it doesn’t
work.
2011-09-26 19:36:27 +01:00
Michael Stapelberg
1675499f15 docs/testsuite: a few corrections by fernandotcl 2011-09-25 14:23:47 +01:00
Michael Stapelberg
1eb011aae1 tests: make sure to leave no tempfiles behind 2011-09-24 16:28:21 +01:00
Michael Stapelberg
10a9d2a439 tests: Bugfix: 11-goto.t: use mktemp for generating a random mark, not base64
The base64 string could contain / and + which is treated specially since we
implemented PCRE support :)
2011-09-24 15:56:43 +01:00
Michael Stapelberg
761dac5514 tests: lib/i3test: Use //= instead of unless exists $args{key} (Thanks mxf) 2011-09-24 15:44:42 +01:00
Michael Stapelberg
378611c11c tests: refactor t/58-wm_take_focus to use wait_for_event 2011-09-24 15:38:31 +01:00
Michael Stapelberg
de5286da59 tests: lib/i3test: Remove open_standard_window, introduce open_window
open_window has a better API than open_standard_window. It uses named
parameters and supplies default values for everything you don’t specify. This
way, you can use every feature which X11::XCB::Window supports.
2011-09-24 15:11:37 +01:00
Michael Stapelberg
c3eb9f6c45 tests: complete-run: remove debugging messages 2011-09-24 13:13:26 +01:00
Michael Stapelberg
1a438f12ed tests: complete-run: display time i3 took for starting up 2011-09-24 13:13:09 +01:00
Michael Stapelberg
e244a75801 tests: complete_run: directly use X11::XCB instead of ::Connection
This saves about 0.5s wallclock time due to not starting up Moose/Mouse.
This is worthwhile when you develop a new feature and you are often invoking
complete_run for one specific test.
2011-09-24 13:09:20 +01:00
Michael Stapelberg
4da5b7e784 tests: use wait_for_{map,unmap} to eliminate more sleep()s 2011-09-24 13:08:02 +01:00
Michael Stapelberg
4821b13cae tests: lib/i3test: provide wait_for_map and wait_for_unmap
These functions should be used instead of calling wait_for_event directly when
waiting for MAP_NOTIFY or UNMAP_NOTIFY
2011-09-24 13:07:05 +01:00
Michael Stapelberg
38a9eabff1 tests: implement sync_with_i3 and use it instead of sleep()
Also use open_standard_window() in a few more places where appropriate
2011-09-24 11:15:08 +01:00
Michael Stapelberg
3167e9ad2d lib/i3test.pm: reformat exports list 2011-09-22 23:13:13 +01:00
Michael Stapelberg
83560c85d8 lib/i3test.pm: Don’t sleep(0.25), but wait until the window was mapped
This makes it faster and less racey
2011-09-22 23:13:12 +01:00
Michael Stapelberg
5542af316f t/65-for_window: add tests for window_role 2011-09-18 16:05:54 +01:00
Michael Stapelberg
99168a84a9 tests: also make launch_with_config() log to LOGPATH 2011-09-18 15:35:04 +01:00
Michael Stapelberg
c8c95030ad tests: extend t/35-floating-focus to use focus left/right on floating windows 2011-09-17 19:29:23 +01:00
Michael Stapelberg
7a38d8ac56 Merge branch 'master' into next 2011-09-17 14:13:05 +01:00
Michael Stapelberg
7a43af04af Tests: fix floating size, add a test to check floating size when starting in tiling 2011-09-17 14:12:16 +01:00
Michael Stapelberg
717ae819c5 Merge branch 'master' into next 2011-09-11 22:52:44 +01:00
Michael Stapelberg
2a215fd7e2 Bugfix: Ignore for_window commands with empty (invalid) criteria (+test) (Thanks aksr) 2011-09-11 22:52:33 +01:00
Michael Stapelberg
d82698efa7 make the old assign syntax trigger an i3-nagbar warning (it’s deprecated), adjust test 2011-09-11 22:01:36 +01:00
Michael Stapelberg
b3e1fb1f3b Make the old 'assign' case-insensitive again (+test) (Thanks aksr) 2011-09-11 21:16:45 +01:00
Michael Stapelberg
c1c1730516 pcre: enable UCP, UTF-8 (if available), extend t/19-match 2011-09-11 11:40:51 +01:00
Michael Stapelberg
8e04867e51 extend t/19-match to also test regular expressions 2011-09-10 23:52:39 +01:00
Michael Stapelberg
bf4d166330 extend t/17-workspace.t to check if the numbers are assigned correctly 2011-09-05 22:24:28 +02:00
Michael Stapelberg
f0a0236b7b Merge branch 'master' into next 2011-08-28 17:02:19 +02:00
Michael Stapelberg
96b219f27b migrate-config: use \s, be a bit more whitespace tolerant (+test) (Thanks sbedivere)
Fixes: #457
2011-08-28 17:01:59 +02:00
Michael Stapelberg
16188af8bf Merge branch 'master' into next 2011-08-28 15:47:35 +02:00
Michael Stapelberg
0b0a2dad51 t/66-assign: check if i3 crashes when assigning a dock window to floating 2011-08-28 15:43:51 +02:00
Michael Stapelberg
8114ecda47 Merge branch 'master' into next 2011-08-27 13:47:57 +02:00
Michael Stapelberg
e97a7e34f7 Bugfix: Re-implement reconfiguring height of dock windows (+test) (Thanks thomasba) 2011-08-27 13:47:10 +02:00
Michael Stapelberg
6c42a179ec Merge branch 'master' into next 2011-08-27 13:03:20 +02:00
Michael Stapelberg
4c01dbd726 Bugfix: Don’t always focus floating windows (fixes focus stealing with assignments) (+test) (Thanks aksr) 2011-08-27 13:02:44 +02:00
Michael Stapelberg
ff85023b08 Merge branch 'master' into next 2011-08-24 15:14:53 +02:00
Michael Stapelberg
0d35feb71b Bugfix: Make the 'resize' command work inside tabbed/stacked cons (+test) (Thanks sbedivere)
Fixes #461
2011-08-24 15:14:04 +02:00
Michael Stapelberg
642a745004 Merge branch 'master' into next 2011-08-24 00:57:36 +02:00
Michael Stapelberg
b8a656bca7 Add test for the 'focus mode_toggle' issue (#487) 2011-08-24 00:57:25 +02:00
Michael Stapelberg
22e30061f3 Merge branch 'master' into next 2011-08-17 16:37:09 +02:00
Michael Stapelberg
f172359ba5 Bugfix: Don’t change focus when assigned windows start on invisible workspaces (+test) (Thanks ioflag)
Fixes #468
2011-08-17 16:36:19 +02:00
Michael Stapelberg
3af7692a92 Merge branch 'tests-optimize' into next 2011-08-10 15:57:28 +02:00
Michael Stapelberg
5524785877 testsuite: eliminate sleep, wait until i3 replies via IPC 2011-08-10 15:56:39 +02:00
Michael Stapelberg
f8d834c62d Merge branch 'master' into next 2011-08-09 09:47:10 +02:00
Michael Stapelberg
98cc37e223 swap up/down, also modify the testcase 2011-08-09 09:46:02 +02:00
Michael Stapelberg
74687fa97c tests: add t/74-border-config which checks new_window and new_float 2011-08-09 09:29:59 +02:00
Michael Stapelberg
dab3a0b85a tests: add testcase for the GET_MARKS ipc request 2011-08-09 08:19:48 +02:00
Michael Stapelberg
51119c75c1 extend t/65-for_window to check for the 'instance' criterion 2011-08-04 20:11:01 +02:00
Michael Stapelberg
3ef7e3cee4 t/41-resize: also verify resize for floating windows 2011-08-03 14:48:33 +02:00
Michael Stapelberg
dcba8024de also handle quoted workspace names, extend t/72 for that 2011-08-03 03:33:12 +02:00
Michael Stapelberg
72d2b2c9bd add testcase to check if i3 starts on the first named workspace (ticket #449) 2011-08-03 02:56:24 +02:00
Michael Stapelberg
003f7043c5 t/70-force-focus-wrapping: use launch_with_config 2011-08-03 02:12:29 +02:00
Michael Stapelberg
7956289c2b t/67-workspace_layout: use launch_with_config 2011-08-03 02:04:52 +02:00
Michael Stapelberg
8734534b5c t/66-assign: use launch_with_config 2011-08-03 02:03:26 +02:00
Michael Stapelberg
506d8797b2 tests: implement i3test::launch_with_config, use it in t/65-for_window 2011-08-03 00:03:13 +02:00
Michael Stapelberg
b57e8570c9 t/65-for_window: add a testcase for multiple criteria 2011-08-02 19:46:10 +02:00
Michael Stapelberg
56499d8374 tests: make t/65-for-window.t use separate i3 instances 2011-08-02 19:21:09 +02:00
Michael Stapelberg
3204caa98d i3-migrate-config-to-v4: drop the .pl suffix
As lintian (a Debian package checker) mentions, it is more clever to install it
without the extension, since the implementation language might change.
2011-07-31 23:11:05 +02:00
Michael Stapelberg
eea804cd94 migrate-config: convert old 'with container' commands to 'focus parent; $command' (+test) (Thanks Marcus) 2011-07-27 14:36:22 +02:00
Michael Stapelberg
2b940296a8 tests: t/17-workspace.t: keep workspace 1 open
When not running i3 in a terminal from workspace 1, this would fail otherwise
2011-07-27 14:35:40 +02:00
Michael Stapelberg
26c1a463db tests: keep an X11 connection open to every display, fixes races
Otherwise, i3 is the only client and thus the X server shuts down after i3
disconnects. Xdummy restarts an X server, but that takes some time and
therefore sometimes the next testcase was unable to connect.
2011-07-27 14:34:35 +02:00
Michael Stapelberg
44be907197 add Xdummy script to start a headless X11 server 2011-07-25 15:37:46 +02:00
Michael Stapelberg
4dde5bb863 testsuite: allow parallel runs. decreases the test time by 60% when using 4 displays 2011-07-25 15:37:13 +02:00
Michael Stapelberg
49ea805905 tests: get the socket path from the X11 atom I3_SOCKET_PATH
The hard-coded socket paths are not useful when running the test suite in
parallel.
2011-07-25 13:35:56 +02:00
Michael Stapelberg
34eb9b2664 ipc: make 'focused' a bool 2011-07-24 15:00:09 +02:00
Michael Stapelberg
b09bb0fc2a ipc: make 'urgent' a bool 2011-07-24 14:54:30 +02:00
Michael Stapelberg
36fde6dbe1 ipc: send 'percent': null when percent is not relevant for the container 2011-07-24 14:47:28 +02:00
Michael Stapelberg
feaa161d2c testcases: explicitly mark the (short) config files as v4
i3 won’t call i3-migrate-config and thus won’t add a call to i3bar this way.
It’s not necessary and can interfere with some tests sometimes.
2011-07-15 01:37:54 +02:00
Michael Stapelberg
e117a8a77f migrate-config: mode foo → mode "foo" (+test) (Thanks cradle) 2011-07-15 00:22:26 +02:00
Michael Stapelberg
2d71102796 Bugfix: Switch to appropriate workspace when using 'focus' (+test) (Thanks rogutes)
Fixes #432
2011-07-14 23:45:36 +02:00
Michael Stapelberg
26d63fffc2 testcases: fix config-migrate test case after latest change 2011-07-14 23:07:10 +02:00
Michael Stapelberg
b63a559c28 migrate-config: also migrate border toggle (bt) (Thanks woddf2) 2011-07-09 01:02:13 +02:00
Michael Stapelberg
0fe564d122 tests: t/19-match needs a little delay 2011-07-09 01:01:52 +02:00
Michael Stapelberg
0add563448 Bugfix: multiple criteria should use a logical AND (+test) (Thanks f8l) 2011-07-08 00:21:29 +02:00
Michael Stapelberg
3e24b7170f migrate-config: Bugfix: 'borderless' has to be 'none' 2011-07-06 20:21:39 +02:00
Michael Stapelberg
03aa95813e migrate-config: also handle named workspaces correctly when their names come after the bindings (Thanks xpt) 2011-07-06 17:56:09 +02:00
Michael Stapelberg
95ee21dc3b migrate-config: also leave client.background lines unchanged (Thanks cloud) 2011-07-06 17:51:32 +02:00
Michael Stapelberg
a2f297bd39 Add script to migrate a v3 config to v4 (tree). Please test this!
Run ./i3-migrate-config-to-v4.pl < ~/.i3/config > /tmp/i3.config
and see if /tmp/i3.config is fine (especially check the comments
starting with XXX, they are inserted by the script).
2011-07-06 13:56:58 +02:00
Michael Stapelberg
c408fef021 Implement 'focus floating', 'focus tiling' and 'focus mode_toggle' (+test +docs) 2011-07-04 17:09:52 +02:00
Michael Stapelberg
23d4917e43 Bugfix: Correctly revert floating focus when killing the last floating window (+test) 2011-07-01 01:10:43 +02:00
Michael Stapelberg
9611e46eb6 Bugfix: testcase was still using 'mode floating' instead of 'floating enable' 2011-07-01 00:37:30 +02:00
Michael Stapelberg
e5c811248f Bugfix: Fix floating assignments, extend test for the assign command (Thanks Tucos) 2011-06-13 17:42:59 +02:00
Michael Stapelberg
d641e1da3b Don’t force wrapping when focusing in a direction would work (+test)
Think of the following layout:

 -------------
 | tab |     |
 | con | win |
 |     |     |
 -------------

The tabbed container on the left has two children. Assume you have focused the
second/right child in the tabbed container. i3 used to focus the first/left
container of the tabbed container when using 'focus right' (it wrapped focus).

With this commit, the default behaviour is to instead focus the window on the
right of the screen.

The intention is to make focus switching more intuitive, especially with tabbed
containers supporting 'focus left'/'focus right' in tree. You should end up
using less 'focus parent' :).

You can force the old behaviour with 'force_focus_wrapping true' in your
config.

Code coverage is 62.5% with this commit.
2011-06-12 12:56:50 +02:00
Michael Stapelberg
bef25d72aa Implement 'border toggle' (+test) 2011-06-10 16:15:52 +02:00
Michael Stapelberg
60ae26c19d Implement 'workspace next/prev' (+test) 2011-06-10 16:03:59 +02:00
Michael Stapelberg
bd49c80d5f CONFIG BREAK: rename 'mode floating/tiling' to 'floating enable/disable'
The three different variants now:
   floating enable
   floating disable
   floating toggle
2011-06-10 02:06:47 +02:00
Michael Stapelberg
9bbb37bb55 BREAKS CONFIG: rename 'level up' to 'focus parent'
…and 'level down' to 'focus child'. More intuitive than the old command names.
2011-06-10 01:36:33 +02:00
Michael Stapelberg
9aa7e5fbd6 Parse multiple criteria in commands (+test), better error message for 'focus' 2011-06-08 23:34:08 +02:00
Michael Stapelberg
d68e4710fe CONFIG BREAK: kick the 'next'/'prev' commands, introduce 'focus left' etc.
Instead of the cryptic next/prev commands, we now provide an argument to the
focus command. Userguide and default config is updated.
2011-06-08 20:49:49 +02:00
Michael Stapelberg
30501e7c8a add testcase for the fullscreen restart problem of the previous commit 2011-06-03 02:05:34 +02:00
Michael Stapelberg
1585d942ea Make workspace_layout handle all cons at workspace level, not only the first one (+test)
This makes opening new windows on workspace level and moving windows to the
right/left more like in the old i3.
2011-06-02 17:21:38 +02:00
Michael Stapelberg
51bfdbf0a8 ipc: make 'layout' a string 2011-06-02 17:12:18 +02:00
Michael Stapelberg
f007e3621d testcase: correct window names (trivial) 2011-05-29 13:20:41 +02:00
Michael Stapelberg
df0ec0f771 tests: explicitly declare done_testing in subtest 2011-05-25 20:16:14 +02:00
Michael Stapelberg
3a6b0f6618 tests: use Test:Most instead of Test:More
apt-get install libtest-most-perl
2011-05-25 20:15:52 +02:00
Michael Stapelberg
b0bfcb42af tests: add test for the 'assign' feature
Increases line coverage from 60.9% to 61.5%
2011-05-24 22:56:28 +02:00
Michael Stapelberg
57516db391 fix typo in t/65-for_window.t 2011-05-24 22:56:06 +02:00
Michael Stapelberg
07633a0dc2 tests: make t/59-socketpaths exit gracefully
Increases reported line coverage from 60.7% to 60.9%
2011-05-24 22:31:50 +02:00
Michael Stapelberg
607fd7d024 tests: also test multiple commands in for_window
Increases branch coverage to 49.1%
2011-05-16 22:03:07 +02:00
Michael Stapelberg
1bd4c983db tests: add test for the for_window config directive, use separate config for tests
This test increases code coverage to 60.7%
2011-05-16 21:50:34 +02:00
Michael Stapelberg
aea445b690 Bugfix: Attach new cons at the correct place when a floating con is focused (+test) (Thanks fernandotcl)
New containers were previously attached directly to the workspace instead of to
the previously focused place in the workspace (for example a stacked con).

Fixes: #376
2011-05-13 21:30:37 +02:00
Michael Stapelberg
167bdd26b7 Argument for 'kill' for killing a specific window (now default) or the whole client (+test)
Use 'kill window' to kill a specific window (for example only one specific
popup), use 'kill client' to kill the whole application (or X11 connection to
be specific).
2011-05-13 20:41:03 +02:00
Michael Stapelberg
5eef824495 t/35-floating-focus: rewrite testcase to use windows instead of empty cons 2011-05-13 19:27:18 +02:00
Michael Stapelberg
836a3ad615 Bugfix: set WM_STATE to WITHDRAWN when an app unmaps their window(s) (+test)
Fixes: #362
2011-05-13 17:04:55 +02:00
Michael Stapelberg
94646190aa Bugfix: Correct string/quoted string parsing for the commands exec, workspace, nop, restore and mark (Thanks SardemFF7)
Fixes: #380
2011-05-12 07:09:06 +02:00
Michael Stapelberg
c62f70856f Bugfix: Don’t crash when dock clients set the urgency hint (+testcase) 2011-05-11 22:45:20 +02:00
Michael Stapelberg
4da6fc7ba3 Bugfix: Restore border_style when restarting inplace (Thanks aniou)
Fixes #385.
2011-05-11 20:45:56 +02:00
Michael Stapelberg
9c05c18156 ipc: change border_style to human-readable string instead of enum value 2011-05-11 20:39:18 +02:00
Michael Stapelberg
098fc06942 tests: add --coverage-testing option to complete-run.pl 2011-05-08 20:08:35 +02:00
Michael Stapelberg
4fc26e7de0 tests: make complete-run.pl scan tests for !NO_I3_INSTANCE!, simplify code 2011-04-26 19:20:29 +02:00
Michael Stapelberg
f67dd28cf0 tests: add testcase for the different socket path locations 2011-04-26 19:15:55 +02:00
Michael Stapelberg
9723366eff tests: add testcase for WM_TAKE_FOCUS
requires the very latest checkout of X11::XCB
2011-03-19 02:21:46 +01:00
Michael Stapelberg
cdeb49127f Bugfix: restore focus to the correct window when a non-focused window gets destroyed (+testcase) 2011-03-14 16:34:35 +01:00
Michael Stapelberg
2524b5262d tests: clean up/beautify all tests (code style / test style) 2011-03-09 20:25:17 +01:00
Michael Stapelberg
57e7cc8f6a tests: fix t/19-match.t, needs a delay for i3 to pick up the UnmapNotify event 2011-03-09 18:47:00 +01:00
Michael Stapelberg
86637d2e07 Bugfix: Make level up a noop during fullscreen mode (+testcase) (Thanks dothebart)
Fixes #341
2011-03-09 18:37:05 +01:00
Michael Stapelberg
0a24057241 When leaving fullscreen, set focus to con which was opened during fullscreen (+testcase) (Thanks dothebart) 2011-03-07 00:06:27 +01:00
Michael Stapelberg
4514146ed9 Use the combined geometry of children when setting a split container to floating (+testcase) (Thanks mseed)
Fixes #332
2011-03-06 02:39:15 +01:00
Michael Stapelberg
0a2ee1d2aa Bugfix: Focus workspace after closing one of multiple dock clients (+testcase) (Thanks mseed) 2011-03-04 15:21:18 +01:00
Michael Stapelberg
caa1ac1a9f Use the original geometry for floating windows 2011-03-03 16:22:22 +01:00
Michael Stapelberg
a038d2674b Bugfix: 'level up' needs to stop at the workspace con + testcase (Thanks mseed) 2011-03-03 14:30:13 +01:00
Michael Stapelberg
33c2b4e582 Bugfix: Correctly fix the percent values for resizing when making a floating con tiling (Thanks mseed) (+testcase) 2011-02-28 23:59:56 +01:00
Michael Stapelberg
b595ff05c5 Fix regression: Don’t add floating nodes twice when restoring layout (+testcase) 2011-02-28 20:44:23 +01:00
Michael Stapelberg
db0d66e545 tests: extend t/10-dock.t for top/bottom positioned dock clients by position/hint 2011-02-21 14:55:03 +01:00
Michael Stapelberg
0f97b1fef6 tests: add test for dock client + restart 2011-02-21 12:21:02 +01:00
Michael Stapelberg
a678c16bc9 tests: fix t/16-nestedcons.t 2011-02-21 12:20:55 +01:00
Michael Stapelberg
95e8b1a467 tests: extend t/10-dock.t to make use of the tree 2011-02-21 00:23:25 +01:00
Michael Stapelberg
bafb065d7c tests: don’t skip t/10-dock.t, make it work again 2011-02-20 23:50:01 +01:00
Michael Stapelberg
7f89c71689 Implement dock mode, update testsuite
Currently, dock clients are only possible at the top.
2011-02-20 23:43:03 +01:00
Michael Stapelberg
6a6746b967 revert the replacement of a single h/v-split with its child container
Makes more problems than it creates. Will use a different fix suggested by
Merovius.
2011-02-19 18:30:26 +01:00
Michael Stapelberg
26a416e016 refactor tree_move() into src/move.c, change config (!), change testcase
Due to lots of cases which were added and added to tree_move(), the function
was not really easy to understand. For this refactoring, I wrote tree_move()
from scratch, thinking about (hopefully) all cases. The testsuite still passes.

The move command also has different parameters now. Instead of the hard to
understand 'before v' stuff, we use 'move [left|right|up|down]'.
2011-02-14 23:05:20 +01:00