]>
git.sur5r.net Git - i3/i3/log
Michael Stapelberg [Thu, 20 Oct 2011 17:47:09 +0000 (18:47 +0100)]
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.
Michael Stapelberg [Wed, 19 Oct 2011 21:58:19 +0000 (22:58 +0100)]
Make i3bar get its config from i3 via IPC
In order to not duplicate configuration options and make stuff confusing, we
dropped the commandline flags (except for socket_path and bar_id). This means
that you *have to* specify bar_id when starting i3bar. The best way is to let
i3 start i3bar, which it will do automatically for every bar {} configuration
block it finds.
Michael Stapelberg [Wed, 19 Oct 2011 18:57:39 +0000 (19:57 +0100)]
Create different IDs for each bar (+test)
Michael Stapelberg [Tue, 18 Oct 2011 21:16:04 +0000 (22:16 +0100)]
Implement parsing bar {} config blocks
Michael Stapelberg [Tue, 18 Oct 2011 21:15:48 +0000 (22:15 +0100)]
tests: add a test to check that bar configs are parsed correctly
Michael Stapelberg [Tue, 18 Oct 2011 21:12:46 +0000 (22:12 +0100)]
ipc: when requesting the bar config without a payload, return an array of available bar IDs
Michael Stapelberg [Tue, 18 Oct 2011 21:11:44 +0000 (22:11 +0100)]
Bugfix: Correctly close the colors map in the IPC bar config reply
Michael Stapelberg [Tue, 18 Oct 2011 21:11:27 +0000 (22:11 +0100)]
Make the barconfig list a TAILQ
Michael Stapelberg [Wed, 12 Oct 2011 22:23:09 +0000 (23:23 +0100)]
add an IPC request to get the bar configuration (by ID)
Michael Stapelberg [Wed, 12 Oct 2011 21:52:55 +0000 (22:52 +0100)]
add a data structure for 'bar' configuration
Michael Stapelberg [Wed, 12 Oct 2011 21:29:39 +0000 (22:29 +0100)]
reformat include/config.h
Peter Bui [Fri, 14 Oct 2011 15:36:32 +0000 (11:36 -0400)]
Focus new window only if it is on a visible workspace on the current focused output.
Michael Stapelberg [Tue, 18 Oct 2011 17:47:07 +0000 (18:47 +0100)]
Bugfix: Fix segfault when starting i3 (Thanks pnutzh4x0r)
Michael Stapelberg [Tue, 18 Oct 2011 17:32:47 +0000 (18:32 +0100)]
log: use localtime_r instead of localtime
localtime_r does not have the side-effect of behaving like it called tzset(),
in particular it will save one stat(/etc/localtime) syscall. This is not a big
deal, but it makes the strace output cleaner and thus more useful :).
Michael Stapelberg [Mon, 17 Oct 2011 22:35:19 +0000 (23:35 +0100)]
Merge branch 'workspace_baf' into next
Michael Stapelberg [Mon, 17 Oct 2011 22:34:29 +0000 (23:34 +0100)]
tests: add t/176-workspace-baf for the workspace back_and_forth feature
Michael Stapelberg [Mon, 17 Oct 2011 22:17:56 +0000 (23:17 +0100)]
Implement 'workspace back_and_forth' (Patch by Michael Walle)
Michael Stapelberg [Sat, 15 Oct 2011 22:32:04 +0000 (23:32 +0100)]
docs/Makefile: use $(ASCIIDOC), add asciidoc 'latest git docs' config
Michael Stapelberg [Sat, 15 Oct 2011 21:36:03 +0000 (22:36 +0100)]
debian: use debian/i3-wm.manpages instead of manuall installing manpages
Michael Stapelberg [Sat, 15 Oct 2011 15:56:47 +0000 (16:56 +0100)]
Bugfix: Use _exit in forking to avoid calling the libev cleanup handler (Thanks xeen)
Michael Stapelberg [Sat, 15 Oct 2011 15:56:32 +0000 (16:56 +0100)]
Don’t call ev_destroy_loop with ev < 4 in atexit (Thanks xeen)
Maik Fischer [Tue, 11 Oct 2011 12:13:42 +0000 (13:13 +0100)]
i3test.pm: use strict; use warnings; and fix related bugs
Michael Stapelberg [Mon, 10 Oct 2011 20:56:43 +0000 (21:56 +0100)]
testcases/makefile: add modeline, add testsuite-* and latest to 'clean' target
Michael Stapelberg [Mon, 10 Oct 2011 15:00:34 +0000 (16:00 +0100)]
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.
Michael Stapelberg [Mon, 10 Oct 2011 14:54:23 +0000 (15:54 +0100)]
Merge branch 'startup-notification' into next
Michael Stapelberg [Mon, 10 Oct 2011 14:53:57 +0000 (15:53 +0100)]
Change the root window cursor to 'watch' during startups
Michael Stapelberg [Mon, 10 Oct 2011 14:35:38 +0000 (15:35 +0100)]
debian: update debian/control with new build-dep libstartup-notification0-dev
Michael Stapelberg [Mon, 10 Oct 2011 14:34:47 +0000 (15:34 +0100)]
add libstartup-notification to DEPENDS
Michael Stapelberg [Mon, 10 Oct 2011 14:30:07 +0000 (15:30 +0100)]
startup: delete the startup sequence upon completion, make the timeout complete it
Michael Stapelberg [Mon, 10 Oct 2011 14:21:08 +0000 (15:21 +0100)]
Move the includes after the include guard, no need to include these files more than once
Michael Stapelberg [Mon, 10 Oct 2011 12:50:03 +0000 (13:50 +0100)]
Implement timeouts for startup notifications
Michael Stapelberg [Mon, 10 Oct 2011 12:30:52 +0000 (13:30 +0100)]
support _NET_STARTUP_ID on the client leader window
(necessary for GIMP, geeqie, …)
Michael Stapelberg [Mon, 10 Oct 2011 11:48:43 +0000 (12:48 +0100)]
Get the _NET_STARTUP_ID in manage_window, get the corresponding workspace
Michael Stapelberg [Mon, 10 Oct 2011 11:48:19 +0000 (12:48 +0100)]
test: set the _NET_STARTUP_ID before mapping the window
Michael Stapelberg [Mon, 10 Oct 2011 11:47:56 +0000 (12:47 +0100)]
Keep track of startup notifications in a TAILQ, save workspace
Michael Stapelberg [Mon, 10 Oct 2011 10:36:21 +0000 (11:36 +0100)]
implement a startup monitor, move code to src/startup.c
Michael Stapelberg [Sun, 9 Oct 2011 23:24:29 +0000 (00:24 +0100)]
add testcase for the startup notification protocol
Michael Stapelberg [Sun, 9 Oct 2011 21:15:21 +0000 (22:15 +0100)]
make handle_client_message not return anything
The function returned an int for historical reasons.
Michael Stapelberg [Sun, 9 Oct 2011 19:18:38 +0000 (20:18 +0100)]
save the last timestamp received by X11 in last_timestamp
We need it for startup notifications (to generate a unique id)
Conflicts:
include/i3.h
src/main.c
Michael Stapelberg [Sun, 9 Oct 2011 17:21:59 +0000 (18:21 +0100)]
Implement support for startup notifications
This only sets up startup notifications for the 'exec' commands and directives.
Monitoring startups follows later.
Michael Stapelberg [Sun, 9 Oct 2011 17:19:31 +0000 (18:19 +0100)]
Make conn_screen available outside of main()
Will be used in other parts of the code for startup notification
Michael Stapelberg [Mon, 10 Oct 2011 14:09:39 +0000 (15:09 +0100)]
i3bar: Bugfix: Add tray icon padding when calculating text position (Thanks Bacardi55)
Raphael Kubo da Costa [Sun, 9 Oct 2011 22:30:08 +0000 (19:30 -0300)]
Use $(MAKE) instead of hardcoding `make' in the Makefiles.
When one is using gmake or anything other than make itself, the same
command should be used in the Makefiles too.
Raphael Kubo da Costa [Sun, 9 Oct 2011 21:35:58 +0000 (18:35 -0300)]
common.mk: Silence some remaining pkg-config calls.
Some pkg-config calls still didn't redirect stderr to /dev/null, causing
the gnome-config error messages to be printed.
Michael Stapelberg [Mon, 10 Oct 2011 10:37:43 +0000 (11:37 +0100)]
i3bar: include xcb_compat.h for older XCB versions (Thanks motif)
Michael Stapelberg [Sun, 9 Oct 2011 17:35:58 +0000 (18:35 +0100)]
makefile: redirect stderr to /dev/null when invoking pkg-config
This silences an error about gnome-config not being installed (pkg-config seems
to use gnome-config as a fall-back on some systems).
Michael Stapelberg [Sun, 9 Oct 2011 17:25:00 +0000 (18:25 +0100)]
remove left-over type definition for mode_info
Michael Stapelberg [Sun, 9 Oct 2011 17:24:06 +0000 (18:24 +0100)]
Bugfix: Don’t use a blank after comma in ldflags_for_lib calls (Thanks Raphael)
'-l foo' instead of '-lfoo' is a problem on FreeBSD.
Michael Stapelberg [Sun, 9 Oct 2011 13:45:58 +0000 (14:45 +0100)]
Merge branch 'i3bar-cleanup' into next
Michael Stapelberg [Sun, 9 Oct 2011 13:45:34 +0000 (14:45 +0100)]
log WM_NAME (non-utf-8 window titles)
Michael Stapelberg [Sun, 9 Oct 2011 13:45:23 +0000 (14:45 +0100)]
i3bar: set WM_CLASS and WM_NAME
Michael Stapelberg [Sun, 9 Oct 2011 13:28:20 +0000 (14:28 +0100)]
i3bar: add modelines to all files
Michael Stapelberg [Sun, 9 Oct 2011 12:52:05 +0000 (13:52 +0100)]
Merge branch 'i3bar-tray-size' into next
Michael Stapelberg [Sun, 9 Oct 2011 12:50:46 +0000 (13:50 +0100)]
i3bar: handle ConfigureRequests for tray children (fixes gtk3 size issue)
Thanks to yvesf for this simple python test script:
from gi.repository import Gtk as gtk
def cb(*a):
print a
def si_popup(*a):
print a
status_icon = gtk.StatusIcon()
status_icon.set_from_stock(gtk.STOCK_OPEN)
status_icon.connect("activate", cb)
gtk.main()
Michael Stapelberg [Sun, 9 Oct 2011 12:50:39 +0000 (13:50 +0100)]
i3bar: add modeline to src/xcb.c
Michael Stapelberg [Sun, 9 Oct 2011 12:40:15 +0000 (13:40 +0100)]
Move fake_configure_notify to libi3
Michael Stapelberg [Sun, 9 Oct 2011 12:05:29 +0000 (13:05 +0100)]
Bugfix: make i3bar depend on libi3
Michael Stapelberg [Sat, 8 Oct 2011 21:01:41 +0000 (22:01 +0100)]
Merge remote-tracking branch 'mxf/merge' into next
Maik Fischer [Sat, 8 Oct 2011 19:58:37 +0000 (20:58 +0100)]
testcases: add Makefile.PL to automatically install deps via CPAN
Michael Stapelberg [Sat, 8 Oct 2011 18:12:28 +0000 (19:12 +0100)]
Fix 'make dist'
Michael Stapelberg [Sat, 8 Oct 2011 14:18:04 +0000 (15:18 +0100)]
remove obsolete CMDMODE and TODO files, update LICENSE
Michael Stapelberg [Sat, 8 Oct 2011 13:38:50 +0000 (14:38 +0100)]
tests: rename files (00x-*.t is basic stuff, >=100-*.t are tests using IPC)
Michael Stapelberg [Sat, 8 Oct 2011 13:30:31 +0000 (14:30 +0100)]
testsuite: delete obsolete makefile
Michael Stapelberg [Sat, 8 Oct 2011 12:01:43 +0000 (13:01 +0100)]
debian: add testsuite.html to i3-wm.docs
Michael Stapelberg [Thu, 6 Oct 2011 06:58:39 +0000 (07:58 +0100)]
docs/testsuite: s/more ugly/uglier (Thanks fernandotcl)
Michael Stapelberg [Wed, 5 Oct 2011 23:08:06 +0000 (00:08 +0100)]
Merge branch 'testsuite' into next
Michael Stapelberg [Wed, 5 Oct 2011 22:52:19 +0000 (23:52 +0100)]
complete-run: eliminate dependency on EV
Michael Stapelberg [Wed, 5 Oct 2011 22:29:58 +0000 (23:29 +0100)]
complete-run: explicitly state why we need to overwrite SIGCHLD
Michael Stapelberg [Wed, 5 Oct 2011 22:21:36 +0000 (23:21 +0100)]
tests: eliminate List::MoreUtils
Michael Stapelberg [Wed, 5 Oct 2011 22:21:23 +0000 (23:21 +0100)]
tests: eliminate Try::Tiny
Michael Stapelberg [Wed, 5 Oct 2011 22:17:09 +0000 (23:17 +0100)]
tests: Eliminate IO::Scalar
Michael Stapelberg [Wed, 5 Oct 2011 19:48:34 +0000 (20:48 +0100)]
tests: remove unused Proc::Background
Michael Stapelberg [Wed, 5 Oct 2011 19:46:47 +0000 (20:46 +0100)]
docs/testsuite: explain how socket activation works in i3
Michael Stapelberg [Tue, 4 Oct 2011 22:39:59 +0000 (23:39 +0100)]
Merge branch 'testsuite' into next
Michael Stapelberg [Tue, 4 Oct 2011 22:39:36 +0000 (23:39 +0100)]
tests: move i3test.pm from t/lib to lib/
Michael Stapelberg [Tue, 4 Oct 2011 22:36:57 +0000 (23:36 +0100)]
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.
Michael Stapelberg [Tue, 4 Oct 2011 22:36:43 +0000 (23:36 +0100)]
tests: don’t overwrite $timeout, kill timer when done
Michael Stapelberg [Tue, 4 Oct 2011 22:34:23 +0000 (23:34 +0100)]
tests: Convert all testcases to use the new launch_with_config API
It now returns a pid directly, not a Proc::Background object.
Michael Stapelberg [Tue, 4 Oct 2011 22:33:38 +0000 (23:33 +0100)]
tests: launch_with_config: use socket activation
Michael Stapelberg [Tue, 4 Oct 2011 22:31:33 +0000 (23:31 +0100)]
tests: SocketActivation: append to the logfile, more comments
Michael Stapelberg [Tue, 4 Oct 2011 22:31:06 +0000 (23:31 +0100)]
tests: SocketActivation: only close() and dup2() if fileno(socket) != 3
Michael Stapelberg [Tue, 4 Oct 2011 19:55:29 +0000 (20:55 +0100)]
tests: Refactor the socket activation into lib/SocketActivation.pm
Michael Stapelberg [Tue, 4 Oct 2011 19:10:11 +0000 (20:10 +0100)]
tests: re-order dependencies in complete-run, make clear which are shipped with Perl
Michael Stapelberg [Tue, 4 Oct 2011 19:05:12 +0000 (20:05 +0100)]
tests: remove unused dependency Proc::Background from complete-run
Michael Stapelberg [Tue, 4 Oct 2011 19:03:08 +0000 (20:03 +0100)]
tests: eliminate dependency on the DateTime module by using POSIX::strftime
Michael Stapelberg [Tue, 4 Oct 2011 18:58:17 +0000 (19:58 +0100)]
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.
Michael Stapelberg [Mon, 3 Oct 2011 20:54:36 +0000 (21:54 +0100)]
Bugfix: Warp pointer to the correct window when using the 'focus' command
Comment in the code makes the fix clear, I think.
Steps to reproduce the issue:
1) On the right monitor, open two terminals (h-split workspace)
2) 'i3 mark foo' on the right terminal
3) Focus the left terminal
4) Switch to the left monitor
5) i3 '[con_mark="foo"] focus'
6) the left window will contain the pointer (and is focused for a short period
of time, or even permanently due to race conditions)
Michael Stapelberg [Mon, 3 Oct 2011 18:31:12 +0000 (19:31 +0100)]
Merge branch 'master' into next
Michael Stapelberg [Mon, 3 Oct 2011 18:31:09 +0000 (19:31 +0100)]
Merge branch 'fix-i3bar-man'
Noe Rubinstein [Sun, 2 Oct 2011 22:54:24 +0000 (00:54 +0200)]
escape font name
The double-dash gets scrambled by a2x otherwise
Michael Stapelberg [Sun, 2 Oct 2011 21:22:03 +0000 (22:22 +0100)]
Merge branch 'ws_next' into next
Michael Stapelberg [Sun, 2 Oct 2011 21:21:38 +0000 (22:21 +0100)]
Mention 'move workspace next/prev' in the userguide
Michael Stapelberg [Sun, 2 Oct 2011 21:18:21 +0000 (22:18 +0100)]
add a test for the 'move workspace next/prev' command
Noe Rubinstein [Sun, 2 Oct 2011 15:55:19 +0000 (17:55 +0200)]
add "move workspace next" and "move workspace prev"
some factorization would be better here, however I don't really know my
way around bison
Michael Stapelberg [Sun, 2 Oct 2011 21:03:16 +0000 (22:03 +0100)]
rename the internal function to _workspace_show, add a comment to workspace_show_by_name
Noe Rubinstein [Sun, 2 Oct 2011 15:54:23 +0000 (17:54 +0200)]
refactor workspace_show and friends
Michael Stapelberg [Sun, 2 Oct 2011 18:21:27 +0000 (19:21 +0100)]
Merge branch 'msg' into next
Michael Stapelberg [Sun, 2 Oct 2011 18:20:43 +0000 (19:20 +0100)]
Make i3 send arguments as command to a running i3 instance (like i3-msg)
From i3 --help:
If you pass plain text arguments, i3 will interpret them as a command
to send to a currently running i3 (like i3-msg). This allows you to
use nice and logical commands, such as:
i3 border none
i3 floating toggle
i3 kill window
Michael Stapelberg [Sun, 2 Oct 2011 17:55:15 +0000 (18:55 +0100)]
Cleanup i3 --help
Michael Stapelberg [Sun, 2 Oct 2011 17:33:10 +0000 (18:33 +0100)]
Move ipc_send_message and ipc_recv_message to libi3
Make i3-msg and src/ipc.c use it