Commit Graph

822 Commits

Author SHA1 Message Date
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
Michael Stapelberg
44ab15abf0 tests: add testcase for the focus when moving floating con to other ws problem 2011-02-01 18:18:25 +01:00
Michael Stapelberg
ed7bee72bd tests: extend testcase to check for the last commit 2011-02-01 18:18:07 +01:00
Michael Stapelberg
dc6241456a testcases: use the does_i3_live function 2011-01-28 01:21:38 +01:00
Michael Stapelberg
773bc5ba6d fix typo in testcases/complete-run.pl 2011-01-28 01:18:30 +01:00
Michael Stapelberg
e2975d80e9 implement make clean in testcases/ 2011-01-28 01:12:56 +01:00
Michael Stapelberg
2d82868a1a tests: implement does_i3_live for regression tests 2011-01-28 01:10:45 +01:00
Michael Stapelberg
0e8fdab302 disable sighandler for testsuite runs 2011-01-28 00:48:22 +01:00
Michael Stapelberg
36e20a93a0 add a regression test for the floating move thing 2011-01-27 23:25:36 +01:00
Michael Stapelberg
b2ba02f801 add a testcase for correct floating con reattaching 2011-01-27 17:23:29 +01:00
Michael Stapelberg
1fecbb3e5a Bugfix: also close empty split containers when the clients are moved away (Thanks mseed)
Also update the testcase (which used only 'kill' before).
2011-01-20 10:09:43 +01:00
Michael Stapelberg
115462f103 Implement tree flattening to automatically solve situations of redundant chains of split containers
This should fix the move problems. See comment of tree_flatten() for a little
example.
2011-01-07 22:21:41 +01:00
Michael Stapelberg
186d2c7bfa ipc: change 'orientation' to human readable string instead of raw integer value 2011-01-07 20:48:01 +01:00
Michael Stapelberg
f65e4f5b16 Bugfix: Don’t redistribute resize percentage values when closing floating (!) windows (Thanks Merovius) (+testcase) 2010-12-30 02:39:14 +01:00
Michael Stapelberg
0f0d01336b Bugfix: Correctly attach floating Cons to a different workspace, extend testcase 2010-11-29 20:39:56 +01:00
Michael Stapelberg
613866dbc0 tests: use cmd() in t/32-move-workspace.t 2010-11-29 20:24:13 +01:00
Michael Stapelberg
ad825913b4 Bugfix: Fix crash when moving a floating Con to a different workspace, add testcase (Thanks EelVex) 2010-11-29 20:20:44 +01:00
Michael Stapelberg
b0068de3d7 Bugfix: Transfer 'percent' factor when splitting, add testcase for resizing 2010-11-29 11:24:12 +01:00
Michael Stapelberg
a61480db99 tests: add cmd() function for typing less to get i3 to run a command 2010-11-29 11:21:33 +01:00
Michael Stapelberg
a0cd3c2bab Include 'percent' in tree JSON, use C-locale when dumping, update testcase 2010-11-29 11:10:17 +01:00
Michael Stapelberg
178b28ed09 tests: mark t/10-dock.t as TODO, dock clients not implemented yet (makes all tests pass!) 2010-11-28 22:13:09 +01:00
Michael Stapelberg
b7e1ae13c5 tests: fix t/30-close-empty-split.t by properly creating a split con 2010-11-28 21:49:42 +01:00
Michael Stapelberg
47fe31f104 tests: fix t/31-stacking-order.t: don’t get focus on workspace level, use get_focused() 2010-11-28 21:28:44 +01:00
Michael Stapelberg
5872cbcba6 tests: fix t/29-focus-after-close.t to correctly open a split container 2010-11-28 21:16:58 +01:00
Michael Stapelberg
40365d347b tests: fix t/27-regress-floating-parent.t (focus the other tiling client explictly) 2010-11-28 21:11:14 +01:00
Michael Stapelberg
a120a820d1 tests: update t/04-floating.t for new border styles 2010-11-28 20:23:17 +01:00
Michael Stapelberg
2dba7ec1ec Bugfix for the last commit (broke some moving situations), update testcase 2010-11-28 20:15:47 +01:00
Michael Stapelberg
f55d5e12c9 tests: update t/16-nestedcons.t with new window_rect parameter 2010-11-28 17:29:44 +01:00
Michael Stapelberg
d0de3f403d Bugfix: Restore focus after changing layout (Thanks fernandotcl) 2010-11-28 01:39:47 +01:00
Michael Stapelberg
1de97a1f1f correctly sort numbered workspaces (+testcase)
Numbered workspaces (workspaces with a name containing only digits) will be
inserted in the correct order now. Named workspaces are always sorted after
numbered workspaces and in the order of creation.
2010-11-21 23:35:49 +01:00
Michael Stapelberg
4549effe15 perl: use get_tree instead of get_workspaces 2010-11-21 21:42:28 +01:00
Michael Stapelberg
09b5b17830 Bugfix: Don’t attach tiling containers to floating containers
This bug happened when there were only floating containers on a workspace and a
new tiling window was to be opened.
2010-11-21 16:49:59 +01:00
Michael Stapelberg
f53fafe100 ipc: s/floating-nodes/floating_nodes for consistency 2010-11-21 16:34:45 +01:00
Michael Stapelberg
fcd8518d81 floating-unmap.t: switch order, don’t use workaround 2010-11-20 20:18:00 +01:00
Michael Stapelberg
39fa1d724a bugfix: don’t treat workspace as empty if they only have floating windows (+testcase) 2010-11-20 20:16:15 +01:00
Michael Stapelberg
db651679c5 Bugfix: Properly ignore UnmapNotify events (especially for floating windows)
This fixes the bug which caused floating windows to be visible even when
switching to a different workspace.

Instead of ignoring a specific sequence, we now set an ignore_unmap counter for
each container. (So, should containers be closed too early or stay open even if
they should be closed, we probably need to have a closer look at the counter.
At the moment, it is increased by one on reparenting and unmapping (for
workspace changes) and decremented by one on each UnmapNotify event).

This system is better because a sequence does not describe a single unmap or
reparent request but a request to X11 on the network layer -- which can contain
multiple requests.
2010-11-20 19:11:43 +01:00
Michael Stapelberg
a27af52706 fix floating focus behaviour, extend testcase 2010-11-14 22:35:44 +01:00
Michael Stapelberg
ffff4b159f add testcase for focus problem when toggling floating/tiling mode
Test 3 does not yet pass.
2010-11-14 21:43:31 +01:00
Michael Stapelberg
510d1f78a1 modify t/04-floating.t to reflect the new way we are doing decorations 2010-11-14 16:42:13 +01:00
Michael Stapelberg
1a2134d4c3 add testcases/complete-run.pl, a script for conveniently running the testsuite (or parts of it) 2010-11-13 17:29:20 +01:00
Michael Stapelberg
dc10c67060 Bugfix: Close containers which are empty due to a move (Thanks fernando) 2010-11-13 14:55:11 +01:00
Michael Stapelberg
4aef09ab34 t/16-nestedcons.t: add 'border' key 2010-11-13 14:33:58 +01:00
Michael Stapelberg
432073dbe5 implement support for WM_TRANSIENT_FOR, expand testcase 2010-11-13 01:19:21 +01:00
Michael Stapelberg
8f7bd538d8 implement configure requests, adapt testcase
testcase does not pass 100% due to clients not being reparented correctly yet.
2010-11-12 21:41:10 +01:00
Michael Stapelberg
6c699801ab bugfix: need to use window_type instead of type in t/04-floating.t 2010-11-12 20:36:37 +01:00
Michael Stapelberg
df2ded08d8 add testcase for invalid commands 2010-11-12 20:26:53 +01:00
Michael Stapelberg
e07fee4472 parser: don’t exit(1) on invalid command, use better error message 2010-11-12 20:22:55 +01:00
Michael Stapelberg
5c2758af26 Implement support for size hints (including test case) 2010-10-11 21:32:29 +02:00
Michael Stapelberg
27ffe9eae1 t/22-split: Bugfix: don’t declare old_count twice (Thanks Lourens) 2010-08-21 18:25:48 +02:00
Lourens Rozema
c780f5dd0b Test 16 fixed expectation of the (root) focused field to exist in the tree and always be zero. 2010-08-21 18:24:21 +02:00
Michael Stapelberg
b572fea5c6 testcase: use open_empty_con in some more testcases 2010-07-17 15:52:22 +02:00
Michael Stapelberg
b4e3563dc1 t/29-focus-after-close.t: add more tests (for a regression) 2010-07-17 15:17:33 +02:00
Michael Stapelberg
55f695436a testcases: Implement open_empty_con which directly returns the ID 2010-07-17 15:17:16 +02:00
Michael Stapelberg
21c45418b3 more explanation in t/29-focus-after-close.t 2010-07-17 13:37:21 +02:00
Michael Stapelberg
099df7f438 Bugfix: Keep focus on the current workspace when moving containers, add testcase 2010-07-17 13:27:34 +02:00
Michael Stapelberg
69e5c0f6ce Treat stacking containers as if they are in vertical orientation, add testcase 2010-07-17 01:27:47 +02:00
Michael Stapelberg
09c6b587d3 close empty parent containers, add testcase 2010-07-17 00:54:47 +02:00
Michael Stapelberg
16f5c879f6 testcases: remove 'use v5.10' as this is automatically done in lib/i3test 2010-07-04 19:53:05 +02:00
Michael Stapelberg
b186446fb7 Bugfix: Correctly restore focus after close (and add testcase) 2010-07-04 19:50:44 +02:00
Michael Stapelberg
49ed703299 Bugfix: Insert new containers at the right position (and add testcase) 2010-07-03 17:42:36 +02:00
Michael Stapelberg
66fc795379 lib/i3test: use custom import() instead of Test::Kit to also import v5.10 2010-07-03 16:28:58 +02:00
Michael Stapelberg
f7842e4c71 t/18-openkill.t: search not focused container instead of using the first one 2010-07-03 15:29:44 +02:00
Michael Stapelberg
4eace6f886 Go down the tree when moving windows, add testcase for moving 2010-06-29 19:05:31 +02:00
Michael Stapelberg
285692c92c Update testcases (and skip some tests for the moment) 2010-06-02 23:53:22 +02:00
Michael Stapelberg
6897e15e72 Implement mark/goto, modify testcase 2010-06-02 23:32:05 +02:00
Michael Stapelberg
32be3af109 Re-implement support for the urgency hint, extend t/13-urgent.t
The actual rendering will follow
2010-06-02 17:55:10 +02:00
Michael Stapelberg
03c8da0a74 t/lib/i3test.pm: refactor get_ws and get_ws_content using List::Util’s first 2010-06-02 17:50:06 +02:00
Michael Stapelberg
18f7e1ffd1 t/22: extend to verify that splitting in the same direction multiple times does not create new containers 2010-06-01 22:42:32 +02:00
Michael Stapelberg
249c3f58ab t/21: formatting 2010-06-01 22:29:09 +02:00
Michael Stapelberg
3aa1801392 add testcase for crash on closing floating windows whose parent was killed 2010-06-01 20:52:59 +02:00
Michael Stapelberg
afa8be9547 lib/i3test: Implement get_focused 2010-06-01 20:52:22 +02:00
Michael Stapelberg
a25dc3e988 Implement focus command (and extend t/21-next-prev.t to test it) 2010-06-01 18:49:43 +02:00
Michael Stapelberg
de0c13ba78 Add testcase which ensures that floating windows can be closed
See last commit
2010-05-31 23:17:02 +02:00
Michael Stapelberg
6a1c34d2c5 Implement 'split' 2010-05-10 09:33:10 +02:00
Michael Stapelberg
145ebc7584 Implement 'prev', extend testcase 2010-05-10 09:08:31 +02:00
Michael Stapelberg
d8307f4b4a implement 'next' in the new command parser (testcase unfinished) 2010-05-10 00:06:24 +02:00
Michael Stapelberg
65e9036837 bugfix: don’t clean up workspace when switching to the same workspace 2010-05-09 23:20:49 +02:00
Michael Stapelberg
206e1ed041 less boilerplate by using Test::Kit and -It/lib in Makefile 2010-04-17 22:49:26 +02:00
Michael Stapelberg
a2e3bb1cdd make testcases use AnyEvent::I3 2010-04-17 22:40:01 +02:00
Michael Stapelberg
fdd44dcada make the fullscreen testcase test the 'fullscreen' command, too 2010-04-17 19:29:27 +02:00
Michael Stapelberg
b244ce3915 extend fullscreen testcase 2010-04-17 17:40:19 +02:00
Michael Stapelberg
1b4bd96ea9 extend t/02-fullscreen.t 2010-04-17 13:53:41 +02:00
Michael Stapelberg
9488e3d249 add testcase for multiple commands (and whitespace variations) 2010-04-17 12:58:36 +02:00
Michael Stapelberg
50d590df28 add test for the match functionality in the new parser 2010-04-16 23:04:42 +02:00
Michael Stapelberg
f48cc9ee21 update t/16* for data structure 2010-04-16 21:01:08 +02:00
Michael Stapelberg
93600ce0fd implement con_id for matching containers, extend testcase 2010-04-16 15:30:07 +02:00
Michael Stapelberg
caa1e9a962 move common functions to i3test, export them, bail out if workspace creation fails 2010-04-16 15:03:27 +02:00
Michael Stapelberg
64d34d7e70 add testcase for opening/killing containers 2010-04-16 14:52:31 +02:00
Michael Stapelberg
d94bef2ebb retab! 2010-04-16 14:34:12 +02:00
Michael Stapelberg
9b737f631d add testcase for changing workspaces 2010-04-16 14:24:29 +02:00
Michael Stapelberg
c145f7e529 first step of the big refactoring ("tree" branch).
From here on, we can track changes. It made no sense to put the
development up to this point into git.
2010-04-13 13:17:39 +02:00
Michael Stapelberg
93a9f3c244 Bugfix: Don’t mess up x/y coordinates in configurerequests for floating windows
This was the cause for ticket #93, which actually has a false
conclusion for the reason of this bug.

This code needs to be refactored.
2010-03-11 23:34:29 +01:00
Michael Stapelberg
9a9ba1b859 ipc: implement GET_WORKSPACES message type
This is the foundation to use dzen2 or similar as a complete
replacement for the internal workspaces bar.

A testcase is included, more documentation about the IPC interface
will follow.
2010-03-11 15:58:39 +01:00
Michael Stapelberg
f7c8e76782 Select containers above or near the whole snapped width/height
This fixes ticket #100, and is best explained using a little example.
Consider the following layout:

+---+---+
|   | X |
+---+---+
|   X   |
+---+---+

Where X marks a window, so you have an empty container in the upper
left, the container on the bottom is snapped to the right. Before
this commit, nothing would happen when focusing "above". After
this commit, the upper window gets focused.
2010-03-11 00:15:34 +01:00
Michael Stapelberg
7a9755ad91 Add testcase for the last commit 2010-03-05 19:53:33 +01:00
Michael Stapelberg
8a9b57c874 Extend testcase for dock clients with wm_transient_for hint 2010-01-01 16:19:55 +01:00
Michael Stapelberg
245e29ef95 Expand testcase for urgency hint 2009-11-20 15:56:18 +01:00
Michael Stapelberg
ff3809f388 Add testcase for resizing of floating windows 2009-11-18 22:52:34 +01:00
Michael Stapelberg
0610c028d6 Add testcase for the urgency hint
Needs latest X11::XCB from git
2009-11-18 20:39:53 +01:00
Michael Stapelberg
f9d155341e Change testcases to work with the released version of X11::XCB 2009-10-26 20:04:37 +01:00
Michael Stapelberg
87ced0438a Add testcase for the mark/goto command 2009-10-07 21:50:23 +02:00
Michael Stapelberg
cf17e73293 Add a new test for moving clients to different workspaces (tiling and floating) 2009-10-01 17:18:11 +02:00
Michael Stapelberg
f5c0bfd181 More tests 2009-08-22 07:53:34 +02:00
Michael Stapelberg
32532792cd tests: Use hex color codes for background_color 2009-08-21 16:06:12 +02:00
Michael Stapelberg
4a83bd26f8 Implement tests in t/10-dock.t 2009-08-21 15:01:20 +02:00
Michael Stapelberg
01f06f11ba Use ArrayRefs instead of Rects where possible, add t/10-dock.t 2009-08-21 12:32:54 +02:00
Michael Stapelberg
a1e9f75fe5 Expand fullscreen test to setting the hint before mapping the window 2009-08-21 12:15:53 +02:00
Michael Stapelberg
992c531c4c Switch to default mode before running the test 2009-08-06 00:16:26 +02:00
Michael Stapelberg
bc4c321c1b Add testcase to test stacking mode for containers 2009-08-06 00:03:31 +02:00
Michael Stapelberg
aaca2346d8 Add testcase for checking if the focus stack is correct when mapping/unmapping floating clients 2009-08-05 21:54:24 +02:00
Michael Stapelberg
d9f8e2fa98 Add test for moving windows 2009-08-05 21:47:43 +02:00
Michael Stapelberg
0f414f8ade Add testcases for IPC and basic focus switching 2009-08-05 21:37:11 +02:00
Michael Stapelberg
6e77e9d3f2 Add testcase for floating windows, add sleep to 01-tile.t 2009-08-05 20:47:10 +02:00
Michael Stapelberg
730508057c use sleep with fractions, not usleep 2009-07-23 01:14:36 +02:00
Michael Stapelberg
dba1612655 Add test case for unmanaged windows (override_redirect => 1) 2009-07-16 14:29:18 +02:00
Michael Stapelberg
47041bdd73 Add testcases :-) 2009-07-16 13:43:43 +02:00