Commit Graph

1121 Commits

Author SHA1 Message Date
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
131a2f8765 debugging: implement a NOP command which just spits out its argument
You can use this in testcases to mark specific sections:
  $i3->command('nop before trying to crash')->recv;
leads to the following output in the i3 logfile:
  -------------------------------------------------
    NOP: before trying to crash
  -------------------------------------------------
2010-11-20 18:40:25 +01:00
Michael Stapelberg
576de246d8 Bugfix: when no windows to focus, return the workspace instead of NULL 2010-11-20 18:38:24 +01:00
Fernando Tarlá Cardoso Lemos
5ebb3b4832 Port the IPC socket creation code from -next. 2010-11-15 14:00:48 +01:00
Fernando Tarlá Cardoso Lemos
bfa12a5819 Port the path resolution and config loading code from -next. 2010-11-15 14:00:46 +01:00
Michael Stapelberg
c0c7d04264 When in tabbed mode, nail the orientation to horizontal
This is intuitive for the user as he can use the left/right keys to switch.
Also, we need to nail the orientation because you can be in either vertical or
horizontal mode when you enter the tabbed layout (like with the stacking
layout).
2010-11-15 13:55:10 +01:00
Fernando Tarlá Cardoso Lemos
8048cb2e12 Render the tabbed mode correctly. 2010-11-15 12:27:16 +01:00
Fernando Tarlá Cardoso Lemos
ea1e9b20be Get rid of the remaining hardcoded height. 2010-11-15 12:25:06 +01:00
Fernando Tarlá Cardoso Lemos
69f29b2b8e Use the configured font to draw the decorations. 2010-11-15 12:24:16 +01:00
Michael Stapelberg
cbd53e8a7f bugfix: check if the client leader is a managed window (Thanks fernandotcl) 2010-11-14 23:55:53 +01:00
Michael Stapelberg
76c07900c2 take into account x11 border_width settings (fixes uxterm border issue) 2010-11-14 23:44:13 +01:00
Michael Stapelberg
39b378b0a4 don’t allow useless splits, change orientation of existing split container instead 2010-11-14 23:18:39 +01:00
Michael Stapelberg
e8b5a802e2 Bugfix: only set clients to floating which have a leader that is not their own window (Thanks fernandotcl) 2010-11-14 22:49:05 +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
d401703135 Bugfix: use rectangles instead of a polygon to avoid strange rendering errors
With the polygon, when using pidgin, having the buddy list in the middle of the
screen, 200 px width, full screen high, then opening the manage accounts
window, the decorations of the buddy list were visible on the accounts window.
2010-11-14 21:17:27 +01:00
Michael Stapelberg
33eb00d6ae automatically set windows with client_leader to floating 2010-11-14 20:15:51 +01:00
Michael Stapelberg
055bd18142 Bugfix: after the first UnmapNotify, unignore the event 2010-11-14 20:15:12 +01:00
Michael Stapelberg
d760a1c7b2 Bugfix: don’t kill parent when currently in tree_close() for a child of this parent 2010-11-14 20:14:09 +01:00
Michael Stapelberg
f0efb3737e don’t remove floating container twice (it’s already removed in con_detach) 2010-11-14 20:11:46 +01:00
Michael Stapelberg
5d7344af8a resize/unmap container x11 windows on demand (makes background images visible again) 2010-11-14 18:52:40 +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
945632ddcb Implement setting the WM_NAME of i3 container windows for debugging 2010-11-14 16:41:46 +01:00
Michael Stapelberg
e85bb09017 set withdrawn/normal state when unmapping/mapping (for xprop/java) 2010-11-14 13:53:47 +01:00
Michael Stapelberg
a415d56048 parser: return a proper JSON reply on parse errors 2010-11-14 01:45:05 +01:00
Michael Stapelberg
7c6f2dbfc6 Rendering fixes for stacking mode 2010-11-13 22:39:59 +01:00
Fernando Tarlá Cardoso Lemos
e6d1f181fd Info about client.background for the user guide. 2010-11-13 20:08:19 +01:00
Michael Stapelberg
4cd6dd0303 port fernando’s custom background color patch 2010-11-13 20:07:49 +01:00
Fernando Tarlá Cardoso Lemos
53b98fdc7e Paint the window decorations using the theme. 2010-11-13 19:17:08 +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
ad9be5402a Implement support for WM_CLIENT_LEADER 2010-11-12 23:46:03 +01:00
Baptiste Daroussin
1bb6906c56 Fix build on freebsd (uint32_t unknown if stdint.h not
included)
2010-11-12 23:11:36 +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
0723876429 only re-position floating clients mapped to (0, 0), add pixels for decoration 2010-11-12 20:55:43 +01:00
Michael Stapelberg
57e602a97c respect position in geometry of floating windows 2010-11-12 20:55:26 +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
0e264cb5c4 implement different border styles
Wow, that actually was easy :).
2010-11-12 19:37:43 +01:00
Michael Stapelberg
66dc8883fd make borders around every container configurable for debugging 2010-11-12 19:37:32 +01:00
Michael Stapelberg
d248f35267 include border style in ipc tree dump 2010-11-12 19:16:38 +01:00
Michael Stapelberg
ea4e3e7682 parser: bugfix: initialize match when parsing new command 2010-11-12 19:07:48 +01:00
Michael Stapelberg
6eb7f2a01d lexer/parser: implement 'border' command 2010-11-12 18:41:54 +01:00
Michael Stapelberg
c6c084faa5 don’t close workspaces which are still visible (multi-monitor) 2010-11-12 17:34:13 +01:00