]>
git.sur5r.net Git - i3/i3/log
Michael Stapelberg [Sun, 6 Mar 2011 20:48:49 +0000 (21:48 +0100)]
x: disable all events while re-stacking windows, prevents unwanted EnterNotifys
Michael Stapelberg [Sun, 6 Mar 2011 19:45:03 +0000 (20:45 +0100)]
Bugfix: use tree_render() instead of x_push_changes() to re-render and update the stack
Michael Stapelberg [Sun, 6 Mar 2011 14:45:42 +0000 (15:45 +0100)]
Implement the popup_during_fullscreen option, set default to leave_fullscreen
Fixes #333
Michael Stapelberg [Sun, 6 Mar 2011 13:15:46 +0000 (14:15 +0100)]
Obey minimum size when resizing floating windows
Fixes #285
Michael Stapelberg [Sun, 6 Mar 2011 12:35:07 +0000 (13:35 +0100)]
Bugfix: also stop searching for resize cons when reaching a floatingcon (Thanks julien)
Michael Stapelberg [Sun, 6 Mar 2011 01:38:21 +0000 (02:38 +0100)]
Use the combined geometry of children when setting a split container to floating (+testcase) (Thanks mseed)
Fixes #332
Michael Stapelberg [Sun, 6 Mar 2011 01:06:05 +0000 (02:06 +0100)]
Bugfix: don’t focus dock clients with new click handling code (Thanks mseed)
Michael Stapelberg [Sat, 5 Mar 2011 19:35:16 +0000 (20:35 +0100)]
document the different cases for click handling
Michael Stapelberg [Sat, 5 Mar 2011 19:23:29 +0000 (20:23 +0100)]
refactor the click handling completely
Also re-implements floating modifier on tiling cons.
Fixes: #288 and a lot of headache :)
Michael Stapelberg [Fri, 4 Mar 2011 14:21:18 +0000 (15:21 +0100)]
Bugfix: Focus workspace after closing one of multiple dock clients (+testcase) (Thanks mseed)
Michael Stapelberg [Thu, 3 Mar 2011 15:36:18 +0000 (16:36 +0100)]
Re-implement focus follows mouse for outputs
That is, moving your mouse pointer to a different workspace which does not have
any windows on it yet will correctly update the focus.
Michael Stapelberg [Thu, 3 Mar 2011 15:22:22 +0000 (16:22 +0100)]
Use the original geometry for floating windows
Michael Stapelberg [Thu, 3 Mar 2011 13:55:02 +0000 (14:55 +0100)]
Don’t create floating containers from whole workspaces when they are empty (Thanks mseed)
This fixes #327
Michael Stapelberg [Thu, 3 Mar 2011 13:30:13 +0000 (14:30 +0100)]
Bugfix: 'level up' needs to stop at the workspace con + testcase (Thanks mseed)
Michael Stapelberg [Thu, 3 Mar 2011 13:14:35 +0000 (14:14 +0100)]
fix invalid memory access in xcb_reply_contains_atom (Thanks ys)
Michael Stapelberg [Thu, 3 Mar 2011 13:03:06 +0000 (14:03 +0100)]
Bugfix: don’t focus the dockarea when closing a dock client
Michael Stapelberg [Thu, 3 Mar 2011 12:59:42 +0000 (13:59 +0100)]
Bugfix: don’t focus dock clients (Thanks mseed, mist)
Fixes #321 and #323
Michael Stapelberg [Mon, 28 Feb 2011 22:59:56 +0000 (23:59 +0100)]
Bugfix: Correctly fix the percent values for resizing when making a floating con tiling (Thanks mseed) (+testcase)
Michael Stapelberg [Mon, 28 Feb 2011 19:44:23 +0000 (20:44 +0100)]
Fix regression: Don’t add floating nodes twice when restoring layout (+testcase)
Michael Stapelberg [Mon, 28 Feb 2011 16:23:50 +0000 (17:23 +0100)]
Bugfix: Re-attach floating cons to the right container (Thanks mseed)
This fixes #315.
Fernando Tarlá Cardoso Lemos [Sun, 27 Feb 2011 23:23:54 +0000 (20:23 -0300)]
Don't leak this descriptor (thanks dothebart).
Note that fclose closes the file descriptor frees the stream.
Fernando Tarlá Cardoso Lemos [Sat, 26 Feb 2011 00:21:48 +0000 (21:21 -0300)]
Some assertions to make the static analyzer happy.
Assertions give hints to the static analyzer about code paths
where we make assumptions. Used the Clang Static Analyzer.
Fernando Tarlá Cardoso Lemos [Fri, 25 Feb 2011 23:31:26 +0000 (20:31 -0300)]
Very minor issues found with statical analysis.
The Clang Static Analyzer uncovered those issues:
- The variable "changed" in handlers.c is written to, but it's
never read since that specific write, so the write is not
necessary.
- In util.c, "tail" may be NULL. In that case, we shouldn't pass
it to strlen because strlen's behavior is not defined when s is
NULL.
- In util.c, "write_index" is incremented twice. It's never used
anymore after being incremented once, so the second increment is
not necessary.
Michael Stapelberg [Mon, 21 Feb 2011 19:00:56 +0000 (20:00 +0100)]
add proof-of-concept perl script to render the tree to SVG
This will be useful to generate examples for the documentation.
Michael Stapelberg [Mon, 21 Feb 2011 13:55:03 +0000 (14:55 +0100)]
tests: extend t/10-dock.t for top/bottom positioned dock clients by position/hint
Michael Stapelberg [Mon, 21 Feb 2011 13:27:32 +0000 (14:27 +0100)]
Implement support for top/bottom dock clients (according to _NET_WM_STRUT_PARTIAL or requested position)
Michael Stapelberg [Mon, 21 Feb 2011 11:21:02 +0000 (12:21 +0100)]
tests: add test for dock client + restart
Michael Stapelberg [Mon, 21 Feb 2011 11:20:55 +0000 (12:20 +0100)]
tests: fix t/16-nestedcons.t
Michael Stapelberg [Mon, 21 Feb 2011 02:13:27 +0000 (03:13 +0100)]
Bugfix: restore the original width/height with X11 border when restarting (Thanks Merovius)
Michael Stapelberg [Mon, 21 Feb 2011 02:01:55 +0000 (03:01 +0100)]
Fix dock client handling for inplace restarts
Michael Stapelberg [Mon, 21 Feb 2011 00:58:57 +0000 (01:58 +0100)]
bugfix: fix clicking on dock clients (Thanks mseed)
Michael Stapelberg [Mon, 21 Feb 2011 00:55:36 +0000 (01:55 +0100)]
refactor some places to use output_get_content()
Michael Stapelberg [Mon, 21 Feb 2011 00:43:39 +0000 (01:43 +0100)]
Bugfix: fix disabling RandR outputs
Michael Stapelberg [Mon, 21 Feb 2011 00:28:29 +0000 (01:28 +0100)]
Place dock clients on the output corresponding to their geometry request
Michael Stapelberg [Mon, 21 Feb 2011 00:12:22 +0000 (01:12 +0100)]
Bugfix: Correctly open workspaces on additional outputs
Michael Stapelberg [Sun, 20 Feb 2011 23:54:29 +0000 (00:54 +0100)]
Bugfix: in get_workspaces, only consider the CT_CON, not the CT_DOCKAREAs (Thanks fernandotcl)
Michael Stapelberg [Sun, 20 Feb 2011 23:40:35 +0000 (00:40 +0100)]
Fix fullscreen mode with dock clients
Michael Stapelberg [Sun, 20 Feb 2011 23:23:25 +0000 (00:23 +0100)]
tests: extend t/10-dock.t to make use of the tree
Michael Stapelberg [Sun, 20 Feb 2011 23:23:07 +0000 (00:23 +0100)]
bugfix: dock clients cannot be floating
Michael Stapelberg [Sun, 20 Feb 2011 22:50:01 +0000 (23:50 +0100)]
tests: don’t skip t/10-dock.t, make it work again
Michael Stapelberg [Sun, 20 Feb 2011 22:43:03 +0000 (23:43 +0100)]
Implement dock mode, update testsuite
Currently, dock clients are only possible at the top.
Fernando Tarlá Cardoso Lemos [Sun, 20 Feb 2011 13:44:58 +0000 (10:44 -0300)]
Support pkg-config if the modules are available.
Michael Stapelberg [Sun, 20 Feb 2011 01:11:03 +0000 (02:11 +0100)]
also change the cursor keys to the new move syntax
Michael Stapelberg [Sat, 19 Feb 2011 20:45:57 +0000 (21:45 +0100)]
partially update hacking-howto with an explanation of the moving code
Michael Stapelberg [Sat, 19 Feb 2011 19:11:47 +0000 (20:11 +0100)]
same fix, but for moving (search above the current con when moving is not possible in this direction)
Michael Stapelberg [Sat, 19 Feb 2011 18:50:09 +0000 (19:50 +0100)]
Skip containers which got only one child when looking for the next/previous one to focus
Michael Stapelberg [Sat, 19 Feb 2011 17:30:26 +0000 (18:30 +0100)]
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.
Michael Stapelberg [Tue, 15 Feb 2011 01:20:29 +0000 (02:20 +0100)]
implement TAILQ_SWAP (only for consecutive elements, order relevant) and use it
Michael Stapelberg [Mon, 14 Feb 2011 22:17:30 +0000 (23:17 +0100)]
add missing function documentation
Michael Stapelberg [Mon, 14 Feb 2011 22:05:20 +0000 (23:05 +0100)]
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]'.
Michael Stapelberg [Mon, 14 Feb 2011 17:08:36 +0000 (18:08 +0100)]
refactor code for removing children from a con
Let’s see how this callback stuff will work out. If it doesn’t work out well,
we will remove it.
Michael Stapelberg [Mon, 14 Feb 2011 15:43:41 +0000 (16:43 +0100)]
Automatically close empty parent cons when making their last child floating (Thanks mseed)
This fixes #313
Michael Stapelberg [Mon, 14 Feb 2011 15:35:48 +0000 (16:35 +0100)]
Bugfix: check ->layout, not ->type for L_STACKED
Michael Stapelberg [Mon, 14 Feb 2011 15:33:42 +0000 (16:33 +0100)]
Bugfix: Correctly check asprintf() return value
Fernando Tarlá Cardoso Lemos [Sat, 5 Feb 2011 16:23:02 +0000 (14:23 -0200)]
Fix libxcursor -> xcb cursors fallback.
Michael Stapelberg [Wed, 2 Feb 2011 16:56:29 +0000 (17:56 +0100)]
fix a rendering problem for split cons inside tabbed cons (Thanks julien)
This fixes #280.
Michael Stapelberg [Tue, 1 Feb 2011 17:18:25 +0000 (18:18 +0100)]
tests: add testcase for the focus when moving floating con to other ws problem
Michael Stapelberg [Tue, 1 Feb 2011 17:18:07 +0000 (18:18 +0100)]
tests: extend testcase to check for the last commit
Michael Stapelberg [Tue, 1 Feb 2011 16:53:15 +0000 (17:53 +0100)]
bugfix: don’t crash when moving windows out of a floating con (Thanks mseed)
Michael Stapelberg [Tue, 1 Feb 2011 16:17:50 +0000 (17:17 +0100)]
Bugfix: Correctly focus con when moving to another workspace (Thanks mseed)
This fixes #310.
Michael Stapelberg [Tue, 1 Feb 2011 15:59:02 +0000 (16:59 +0100)]
disable workspace-level move operations (not yet implemented) (Thanks mseed)
Michael Stapelberg [Tue, 1 Feb 2011 15:42:59 +0000 (16:42 +0100)]
Bugfix: When the container which was just closed is focused, we *do* need to focus another one (Thanks mseed)
Michael Stapelberg [Tue, 1 Feb 2011 15:08:47 +0000 (16:08 +0100)]
Don’t create a split container if no other cons are on a workspace (Thanks mseed)
This fixes #306.
Michael Stapelberg [Tue, 1 Feb 2011 14:43:59 +0000 (15:43 +0100)]
fix some compiler warnings
Fernando Tarlá Cardoso Lemos [Sat, 29 Jan 2011 16:32:44 +0000 (14:32 -0200)]
Fix the choice of the right containers for resizing.
Also fixes #311, which was an assertion failure that uncovered
this problem. Thanks mseed, Merovius.
Michael Stapelberg [Sat, 29 Jan 2011 17:30:43 +0000 (18:30 +0100)]
docs: add tree-*.png (for tree-migrating)
Michael Stapelberg [Sat, 29 Jan 2011 17:06:56 +0000 (18:06 +0100)]
docs/ipc: document that the highest bit is 1 for event replies
Fernando Tarlá Cardoso Lemos [Fri, 28 Jan 2011 21:58:41 +0000 (19:58 -0200)]
Don't mess with sizes when moving to other ws.
Michael Stapelberg [Sat, 29 Jan 2011 14:10:51 +0000 (15:10 +0100)]
add docs/tree-migrating
Michael Stapelberg [Thu, 27 May 2010 18:21:17 +0000 (20:21 +0200)]
Add documentation for external workspace bars
Michael Stapelberg [Fri, 28 Jan 2011 12:07:00 +0000 (13:07 +0100)]
docs/ipc: add reference to ThePub’s python library
Fernando Tarlá Cardoso Lemos [Fri, 28 Jan 2011 00:06:47 +0000 (22:06 -0200)]
Fix assertion when moving out of a floating container.
Fernando Tarlá Cardoso Lemos [Thu, 27 Jan 2011 23:09:48 +0000 (21:09 -0200)]
Don't mess with the focus if we're not killing.
If we're not killing the mapped window and we're not killing the
parent window either in tree_close, then there's no reason to try
to change the focus. This fixes focus issues when moving a
container around another container (move up, left, bottom, right).
Michael Stapelberg [Fri, 28 Jan 2011 00:21:38 +0000 (01:21 +0100)]
testcases: use the does_i3_live function
Michael Stapelberg [Fri, 28 Jan 2011 00:18:30 +0000 (01:18 +0100)]
fix typo in testcases/complete-run.pl
Michael Stapelberg [Fri, 28 Jan 2011 00:12:56 +0000 (01:12 +0100)]
implement make clean in testcases/
Michael Stapelberg [Fri, 28 Jan 2011 00:10:45 +0000 (01:10 +0100)]
tests: implement does_i3_live for regression tests
Michael Stapelberg [Thu, 27 Jan 2011 23:48:22 +0000 (00:48 +0100)]
disable sighandler for testsuite runs
Michael Stapelberg [Thu, 27 Jan 2011 23:47:49 +0000 (00:47 +0100)]
make the sighandler handle SIGABRT
Michael Stapelberg [Thu, 27 Jan 2011 23:42:55 +0000 (00:42 +0100)]
bugfix: initialize root variable earlier
Michael Stapelberg [Thu, 27 Jan 2011 23:41:53 +0000 (00:41 +0100)]
Bugfix: use the global root variable, don’t get the first one (Thanks quaec)
The case of an X11 server having multiple displays is handled correctly by the
code in src/mainx.c. However, due to some functions not being correctly
refactored and still getting the first screen (and also the first root window)
from the XCB connection, i3 was operating on the wrong root window.
Michael Stapelberg [Thu, 27 Jan 2011 23:31:26 +0000 (00:31 +0100)]
add a flag to disable the signalhandler
Fernando Tarlá Cardoso Lemos [Thu, 27 Jan 2011 22:58:49 +0000 (20:58 -0200)]
Don't mess with the percentages in tree_flatten.
Fernando Tarlá Cardoso Lemos [Thu, 27 Jan 2011 21:42:03 +0000 (19:42 -0200)]
Fix some resizing issues (thanks mseed).
Michael Stapelberg [Thu, 27 Jan 2011 22:25:36 +0000 (23:25 +0100)]
add a regression test for the floating move thing
Michael Stapelberg [Thu, 27 Jan 2011 16:23:29 +0000 (17:23 +0100)]
add a testcase for correct floating con reattaching
Michael Stapelberg [Thu, 27 Jan 2011 15:51:41 +0000 (16:51 +0100)]
bugfix: correctly move cons out of floating cons when the workspace has no other tiling cons (Thanks mseed)
Michael Stapelberg [Thu, 27 Jan 2011 15:51:16 +0000 (16:51 +0100)]
bugfix: don’t assume a workspace always has tiling cons when focusing (Thanks mseed)
Michael Stapelberg [Thu, 27 Jan 2011 15:26:19 +0000 (16:26 +0100)]
bugfix: resizing problem when resizing vertically on the top border (Thanks julien)
Michael Stapelberg [Thu, 27 Jan 2011 15:08:25 +0000 (16:08 +0100)]
refactor some places to use con_descend_focused instead of duplicating code
Michael Stapelberg [Thu, 27 Jan 2011 15:04:17 +0000 (16:04 +0100)]
re-insert floating cons next to the currently focused con of the appropriate workspace
Michael Stapelberg [Thu, 27 Jan 2011 14:53:14 +0000 (15:53 +0100)]
when re-inserting a floating con, start with a more fair percent value
Michael Stapelberg [Thu, 27 Jan 2011 14:40:02 +0000 (15:40 +0100)]
RandR: respect primary output
Fernando Tarlá Cardoso Lemos [Wed, 26 Jan 2011 00:49:23 +0000 (22:49 -0200)]
Fix the percentages when moving containers.
Fernando Tarlá Cardoso Lemos [Wed, 26 Jan 2011 00:23:18 +0000 (22:23 -0200)]
Fix floating mode according to the new requirements.
At all times any given non-leaf container should have the sum of
the percentages of its children == 1.0, otherwise we'll crash on
an assertion failure.
Fernando Tarlá Cardoso Lemos [Wed, 26 Jan 2011 00:14:04 +0000 (22:14 -0200)]
Fix the resize algorithm I broke earlier.
The reason it was broken was that it was ok for the sum of the
percentages to be something other than 1.0. Now this is no longer
the case, the sum of the percentages must always be 1.0 or an
assertion will fail when we render the containers.
Fernando Tarlá Cardoso Lemos [Wed, 26 Jan 2011 00:12:43 +0000 (22:12 -0200)]
This parameter is no longer needed.
The algorithm is now always the same, doesn't matter if we're
adding or removing a container to/from its parent.
Fernando Tarlá Cardoso Lemos [Tue, 25 Jan 2011 23:50:23 +0000 (21:50 -0200)]
A new logic to calculate the percentages.
It's slower, but this way we make sure that the resulting
percentages *ALWAYS* sum up to 1.0 (or as close to that as we get
with double math).
Fernando Tarlá Cardoso Lemos [Tue, 25 Jan 2011 23:49:22 +0000 (21:49 -0200)]
Only fix the percentages after we insert the container.
This is what floating.c does and it allows us to unify the logic that
calculates those percentages.
Fernando Tarlá Cardoso Lemos [Tue, 25 Jan 2011 23:47:37 +0000 (21:47 -0200)]
Crash when we get the percentages wrong.
Better to crash with an assertion than to get into an infinite loop.
We cold work around this, but there's a bug here and it's not a
rounding bug, so it's better not to conceal it.