]>
git.sur5r.net Git - i3/i3/log
Michael Stapelberg [Sat, 24 Sep 2011 14:38:31 +0000 (15:38 +0100)]
tests: refactor t/58-wm_take_focus to use wait_for_event
Michael Stapelberg [Sat, 24 Sep 2011 14:11:37 +0000 (15:11 +0100)]
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.
Michael Stapelberg [Sat, 24 Sep 2011 12:13:26 +0000 (13:13 +0100)]
tests: complete-run: remove debugging messages
Michael Stapelberg [Sat, 24 Sep 2011 12:13:09 +0000 (13:13 +0100)]
tests: complete-run: display time i3 took for starting up
Michael Stapelberg [Sat, 24 Sep 2011 12:09:20 +0000 (13:09 +0100)]
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.
Michael Stapelberg [Sat, 24 Sep 2011 12:08:02 +0000 (13:08 +0100)]
tests: use wait_for_{map,unmap} to eliminate more sleep()s
Michael Stapelberg [Sat, 24 Sep 2011 12:07:05 +0000 (13:07 +0100)]
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
Michael Stapelberg [Fri, 23 Sep 2011 19:37:45 +0000 (20:37 +0100)]
tests: implement sync_with_i3 and use it instead of sleep()
Also use open_standard_window() in a few more places where appropriate
Michael Stapelberg [Thu, 22 Sep 2011 21:11:11 +0000 (22:11 +0100)]
lib/i3test.pm: reformat exports list
Michael Stapelberg [Thu, 22 Sep 2011 21:08:42 +0000 (22:08 +0100)]
Implement the I3_SYNC client protocol
This is mainly useful for the testsuite. The tests can wait until i3 processed
all X11 events and then continue. This eliminates sleep() calls which leads to
a more robust and faster testsuite.
Michael Stapelberg [Thu, 22 Sep 2011 19:30:24 +0000 (20:30 +0100)]
lib/i3test.pm: Don’t sleep(0.25), but wait until the window was mapped
This makes it faster and less racey
Michael Stapelberg [Thu, 22 Sep 2011 22:11:14 +0000 (23:11 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Thu, 22 Sep 2011 22:11:11 +0000 (23:11 +0100)]
Merge branch 'fix-dragging-fullscreen'
Yves Fischer [Thu, 22 Sep 2011 20:22:37 +0000 (22:22 +0200)]
Skip dragging of floating cons in fullscreen mode
Michael Stapelberg [Thu, 22 Sep 2011 19:11:44 +0000 (20:11 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Thu, 22 Sep 2011 19:10:59 +0000 (20:10 +0100)]
Merge branch 'fix-close-focus'
Michael Stapelberg [Wed, 21 Sep 2011 22:28:01 +0000 (23:28 +0100)]
Bugfix: Correctly revert focus to other floating windows when closing a floating window
Uncovered by the testsuite \o/
Michael Stapelberg [Tue, 20 Sep 2011 21:37:08 +0000 (22:37 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Tue, 20 Sep 2011 21:37:00 +0000 (22:37 +0100)]
Merge branch 'fix-variables-cfg'
Michael Stapelberg [Tue, 20 Sep 2011 21:36:23 +0000 (22:36 +0100)]
Bugfix: use bufcopy instead of buf when boundary checking (Thanks thomasba)
Also replace the useless (bufcopy + (next - bufcopy)) with next
Michael Stapelberg [Tue, 20 Sep 2011 20:42:51 +0000 (21:42 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Tue, 20 Sep 2011 20:42:48 +0000 (21:42 +0100)]
Merge branch 'fix-variables-cfg'
Michael Stapelberg [Tue, 20 Sep 2011 20:42:26 +0000 (21:42 +0100)]
A bit more boundary-checking when replacing variables.
Makes valgrind happy
Michael Stapelberg [Tue, 20 Sep 2011 20:42:09 +0000 (21:42 +0100)]
Bugfix: Correctly split key/value when parsing variables (Thanks xeen)
Michael Stapelberg [Mon, 19 Sep 2011 22:21:38 +0000 (23:21 +0100)]
update docs/multi-monitor to include the output names and refer to the force_xinerama config directive
Michael Stapelberg [Mon, 19 Sep 2011 22:18:40 +0000 (23:18 +0100)]
mention the force_xinerama configfile directive in the userguide
Michael Walle [Mon, 19 Sep 2011 20:43:25 +0000 (22:43 +0200)]
Add force_xinerama configuration option
The configuration option does the same as the commandline parameter, except
it can be easily set by the user (e.g. you are using KDM and can't start a
session through ~/.xsession).
Signed-off-by: Michael Walle <michael@walle.cc>
Michael Stapelberg [Mon, 19 Sep 2011 18:20:18 +0000 (19:20 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Mon, 19 Sep 2011 18:20:16 +0000 (19:20 +0100)]
Merge branch 'fix-i3bar-x11'
Michael Stapelberg [Mon, 19 Sep 2011 18:17:25 +0000 (19:17 +0100)]
i3bar: Bugfix: Check if the X11 connection is unavailable
This fixes the condition where the i3 socket for some reason did not produce an
error, but the X server exited (earlier than i3?) and the left-over i3bar
process would consume 100% CPU.
How to reproduce the problem:
1) Start ./testcases/Xdummy :8
2) Start DISPLAY=:8 i3bar -s <socket path to i3 on :0>
3) Kill the Xdummy
Michael Stapelberg [Sun, 18 Sep 2011 16:44:00 +0000 (17:44 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Sun, 18 Sep 2011 16:43:57 +0000 (17:43 +0100)]
Merge branch 'fix-focus'
Michael Stapelberg [Sun, 18 Sep 2011 16:43:02 +0000 (17:43 +0100)]
Bugfix: Only change focus in tree_close() when the container was focused before
Fixes: #441
I’m not sure if that’s really all there is to it. Seems a bit too simple :).
We’ll see if I missed some corner cases in the next few days…
Michael Stapelberg [Sun, 18 Sep 2011 16:02:52 +0000 (17:02 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Sun, 18 Sep 2011 16:02:49 +0000 (17:02 +0100)]
Merge branch 'fix-floating-move'
Michael Stapelberg [Sun, 18 Sep 2011 16:00:29 +0000 (17:00 +0100)]
Bugfix: Avoid out of bounds coordinates when moving floating windows (Thanks eeemsi)
This commit makes the coordinates proportional when moving floating windows.
That is, if you have a window at the bottom of your 1920 px monitor and move it
to your 800 px monitor, it will be at the bottom of the 800 px monitor (and not
out of bounds).
Michael Stapelberg [Sun, 18 Sep 2011 15:10:05 +0000 (16:10 +0100)]
Merge branch 'role-criterion' into next
Michael Stapelberg [Sun, 18 Sep 2011 15:06:52 +0000 (16:06 +0100)]
docs/userguide: document the window_role criterion
Michael Stapelberg [Sun, 18 Sep 2011 15:05:54 +0000 (16:05 +0100)]
t/65-for_window: add tests for window_role
Michael Stapelberg [Sun, 18 Sep 2011 15:05:10 +0000 (16:05 +0100)]
Implement the window_role criterion (checks WM_WINDOW_ROLE)
Closes: #446
This is handy for matching specific windows of a multi-window application, for
example only Pidgin’s buddy list window.
Michael Stapelberg [Sun, 18 Sep 2011 14:35:04 +0000 (15:35 +0100)]
tests: also make launch_with_config() log to LOGPATH
Michael Stapelberg [Sun, 18 Sep 2011 13:39:33 +0000 (14:39 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Sun, 18 Sep 2011 13:39:30 +0000 (14:39 +0100)]
Merge branch 'fix-output-focus'
Michael Stapelberg [Sun, 18 Sep 2011 13:38:39 +0000 (14:38 +0100)]
Bugfix: Use con_orientation(). Fixes switching between different outputs
Fixes: #518
For stacking containers, direct access using con->orientation is wrong, we need
to use con_orientation().
Michael Stapelberg [Sun, 18 Sep 2011 12:58:08 +0000 (13:58 +0100)]
Merge branch 'i3-input-fmt' into next
Michael Stapelberg [Sun, 18 Sep 2011 12:57:39 +0000 (13:57 +0100)]
i3-input: update manpage
Michael Stapelberg [Sun, 18 Sep 2011 12:51:11 +0000 (13:51 +0100)]
i3-input: implement -F (format) option, deprecate -p (prefix)
This introduces the '-F format' parameter, which takes a format and replaces %s
in it with the user input. An example: The user should enter the target
workspace name. The appropriate i3-input invocation looks like this:
i3-input -F 'workspace "%s"' -P 'Switch to workspace: '
Michael Stapelberg [Sun, 18 Sep 2011 12:21:45 +0000 (13:21 +0100)]
i3-input: add missing \n in --help
Michael Stapelberg [Sun, 18 Sep 2011 12:20:59 +0000 (13:20 +0100)]
i3-input: reformat main.c
Michael Stapelberg [Sat, 17 Sep 2011 23:40:42 +0000 (00:40 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Sat, 17 Sep 2011 23:40:39 +0000 (00:40 +0100)]
Merge branch 'fix-floating-move'
Peter Bui [Mon, 12 Sep 2011 00:14:20 +0000 (20:14 -0400)]
fix-bug-515: always adjust floating position when moving to another output
Floating con position needs to be adjusted when moving to another
output, regardless of whether or not the target workspace is visible.
Michael Stapelberg [Sat, 17 Sep 2011 19:55:13 +0000 (20:55 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Sat, 17 Sep 2011 19:55:10 +0000 (20:55 +0100)]
Merge branch 'fix-warp-same'
Michael Stapelberg [Sat, 17 Sep 2011 19:53:24 +0000 (20:53 +0100)]
Bugfix: Don’t warp the pointer if it already is on the target output (Thanks cls, pnutzh4x0r)
My testcase was putting a floating window on the left output, but overlapping a
little to the right output. Then switch to a workspace on the right output.
Michael Stapelberg [Sat, 17 Sep 2011 18:29:52 +0000 (19:29 +0100)]
Merge branch 'floating-focus' into next
Michael Stapelberg [Sat, 17 Sep 2011 18:29:23 +0000 (19:29 +0100)]
tests: extend t/35-floating-focus to use focus left/right on floating windows
Michael Stapelberg [Sat, 17 Sep 2011 18:29:06 +0000 (19:29 +0100)]
Remove obsolete code for floating focus
Michael Stapelberg [Sat, 17 Sep 2011 18:28:41 +0000 (19:28 +0100)]
Implement focus switching (focus left/right) for floating windows
Fixes: #475
Michael Stapelberg [Sat, 17 Sep 2011 16:55:36 +0000 (17:55 +0100)]
Also make compilation possible on systems with libev 3
From the source:
We need ev >= 4 for the following code. Since it is not *that* important
(it only makes sure that there are no i3-nagbar instances left behind) we
still support old systems with libev 3.
Michael Stapelberg [Sat, 17 Sep 2011 16:49:12 +0000 (17:49 +0100)]
document the dependency on libev >=4.0 for ev_cleanup (Thanks phnom)
libev 4.00 was released 2010-10-25, so nearly a year ago.
Michael Stapelberg [Sat, 17 Sep 2011 13:13:05 +0000 (14:13 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Sat, 17 Sep 2011 13:12:47 +0000 (14:12 +0100)]
Merge branch 'fix-float-size'
Michael Stapelberg [Sat, 17 Sep 2011 13:12:16 +0000 (14:12 +0100)]
Tests: fix floating size, add a test to check floating size when starting in tiling
Michael Stapelberg [Sat, 17 Sep 2011 13:11:55 +0000 (14:11 +0100)]
Send the correct X11 border_width in faked ConfigureNotifys
Michael Stapelberg [Sat, 17 Sep 2011 13:11:01 +0000 (14:11 +0100)]
Bugfix: Honor the X11 window border in ConfigureRequests
Michael Stapelberg [Sat, 17 Sep 2011 13:10:35 +0000 (14:10 +0100)]
Bugfix: Honor the X11 window border when calculating dimensions for floating windows
Michael Stapelberg [Sat, 17 Sep 2011 13:09:57 +0000 (14:09 +0100)]
Bugfix: Don’t use top border height twice when calculating dimensions for floating windows
Michael Stapelberg [Wed, 14 Sep 2011 22:16:23 +0000 (23:16 +0100)]
fix build in 'next' (Thanks thomasba)
Michael Stapelberg [Wed, 14 Sep 2011 22:00:02 +0000 (23:00 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Wed, 14 Sep 2011 21:59:59 +0000 (22:59 +0100)]
Merge branch 'fix-floating-confreq'
Michael Stapelberg [Wed, 14 Sep 2011 21:59:19 +0000 (22:59 +0100)]
Bugfix: Correctly handle ConfigureRequests for floating windows in multi-monitor setups (Thanks thomasba)
Fixes #519
Michael Stapelberg [Wed, 14 Sep 2011 21:58:51 +0000 (22:58 +0100)]
Bugfix: Don’t fix floating coordinates when reassigning (fixes flickering)
This fixes flickering when moving floating windows between different monitors.
Michael Stapelberg [Sun, 11 Sep 2011 22:42:12 +0000 (23:42 +0100)]
Merge branch 'fix-reload-assignments' into next
Michael Stapelberg [Sun, 11 Sep 2011 22:41:46 +0000 (23:41 +0100)]
Bugfix: Correctly free old assignments when reloading
Fixes #516
Michael Stapelberg [Sun, 11 Sep 2011 22:31:06 +0000 (23:31 +0100)]
re-indent load_configuration()
Michael Stapelberg [Sun, 11 Sep 2011 22:19:59 +0000 (23:19 +0100)]
update changelog (no, not releasing anytime soon)
Michael Stapelberg [Sun, 11 Sep 2011 21:54:41 +0000 (22:54 +0100)]
Same bugfix as
2a215fd , but for assignments with invalid criteria
Michael Stapelberg [Sun, 11 Sep 2011 21:52:44 +0000 (22:52 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Sun, 11 Sep 2011 21:52:41 +0000 (22:52 +0100)]
Merge branch 'fix-empty-criteria'
Michael Stapelberg [Sun, 11 Sep 2011 21:51:59 +0000 (22:51 +0100)]
Bugfix: Ignore for_window commands with empty (invalid) criteria (+test) (Thanks aksr)
Michael Stapelberg [Sun, 11 Sep 2011 21:27:31 +0000 (22:27 +0100)]
finally remove the deprecated 'screen' keyword from cfgparse.l
Michael Stapelberg [Sun, 11 Sep 2011 21:15:51 +0000 (22:15 +0100)]
Merge branch 'new-assign' into next
Michael Stapelberg [Sun, 11 Sep 2011 21:15:14 +0000 (22:15 +0100)]
docs/userguide: fix the for_window syntax
Michael Stapelberg [Sun, 11 Sep 2011 21:15:05 +0000 (22:15 +0100)]
docs/userguide: document the new assign syntax
Michael Stapelberg [Sun, 11 Sep 2011 21:01:36 +0000 (22:01 +0100)]
make the old assign syntax trigger an i3-nagbar warning (it’s deprecated), adjust test
Michael Stapelberg [Sun, 11 Sep 2011 20:54:13 +0000 (21:54 +0100)]
Introduce a new syntax for the 'assign' command:
Instead of using a quoted string to specify the class / title, the assign
command now uses criteria, just like the for_window command or the command
scopes.
An example comes here:
# Assign all Chromium windows (including popups) to workspace 1: www
assign [class="^Chromium$"] → 1: www
# Make the main browser window borderless
for_window [class="^Chromium$" title=" - Chromium$"] border none
This gives you more control over the matching process due to various reasons:
1) Criteria work case-sensitive by default. Use the (?i) option if you want a
case-insensitive match, like this:
assign [class="(?i)^ChroMIUM$"] → 1
2) class and instance of WM_CLASS can now be matched separately. For example,
when starting urxvt -name irssi, xprop will report this:
WM_CLASS(STRING) = "irssi", "URxvt"
The first part of this is the instance ("irssi"), the second part is the
class ("URxvt").
An appropriate assignment looks like this:
assign [class="^URxvt$" instance="irssi"] → 2
3) You can now freely use a forward slash (/) in all strings since that is no
longer used to separate class from title (in-band signaling is bad, mhkay?).
Michael Stapelberg [Sun, 11 Sep 2011 20:49:35 +0000 (21:49 +0100)]
Kill left-over i3-nagbar processes on 'exit'
Michael Stapelberg [Sun, 11 Sep 2011 20:17:13 +0000 (21:17 +0100)]
docs/userguide: provide an example of case-insensitive matching with PCRE (Thanks stfn)
Michael Stapelberg [Sun, 11 Sep 2011 20:16:45 +0000 (21:16 +0100)]
Make the old 'assign' case-insensitive again (+test) (Thanks aksr)
Michael Stapelberg [Sun, 11 Sep 2011 10:41:29 +0000 (11:41 +0100)]
Merge branch 'pcre' into next
Michael Stapelberg [Sun, 11 Sep 2011 10:40:51 +0000 (11:40 +0100)]
pcre: enable UCP, UTF-8 (if available), extend t/19-match
Michael Stapelberg [Sun, 11 Sep 2011 10:10:09 +0000 (11:10 +0100)]
mention PCRE in docs/userguide
Michael Stapelberg [Sat, 10 Sep 2011 22:56:15 +0000 (23:56 +0100)]
debian: add libpcre3-dev as build-dependency
Michael Stapelberg [Sat, 10 Sep 2011 22:55:49 +0000 (23:55 +0100)]
document the new dependency on libpcre in the DEPENDS file
Michael Stapelberg [Sat, 10 Sep 2011 22:53:11 +0000 (23:53 +0100)]
Implement support for PCRE regular expressions for all criteria (for_window, commands, assignments)
Michael Stapelberg [Sat, 10 Sep 2011 22:52:39 +0000 (23:52 +0100)]
extend t/19-match to also test regular expressions
Michael Stapelberg [Mon, 5 Sep 2011 20:55:31 +0000 (22:55 +0200)]
i3-msg: include newline at the end of the reply
Michael Stapelberg [Mon, 5 Sep 2011 20:36:45 +0000 (22:36 +0200)]
Merge branch 'clean-resize' into next
Michael Stapelberg [Mon, 5 Sep 2011 20:36:04 +0000 (22:36 +0200)]
Restrict 'resize' command to left/right for horizontal cons, up/down for vertical cons
This makes the interface much clearer and avoids confusion about which key to
press in which situation.