Commit Graph

2897 Commits

Author SHA1 Message Date
Michael Stapelberg 29fb09ae74 Merge branch 'msg' into next 2011-10-02 19:21:27 +01:00
Michael Stapelberg b755397687 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
2011-10-02 19:20:43 +01:00
Michael Stapelberg 4243a4053e Cleanup i3 --help 2011-10-02 18:55:15 +01:00
Michael Stapelberg 046cf99585 Move ipc_send_message and ipc_recv_message to libi3
Make i3-msg and src/ipc.c use it
2011-10-02 18:33:36 +01:00
Michael Stapelberg ff86852453 i3-msg: use smalloc, sstrdup from libi3 2011-10-02 18:11:01 +01:00
Michael Stapelberg 501dc36b98 move sstrdup, scalloc, smalloc, srealloc to libi3, improve error messages 2011-10-02 18:09:30 +01:00
Michael Stapelberg 8f5dd749c3 Include libi3.h (Thanks fernandotcl) 2011-10-02 16:41:26 +01:00
Michael Stapelberg e3ba716d42 Makefile: include libi3/ in 'dist' 2011-10-02 16:36:49 +01:00
Michael Stapelberg 1f7cb178f9 Merge branch 'get-socketpath' into next 2011-10-02 16:13:23 +01:00
Michael Stapelberg 23796ea900 Implement i3 --get-socketpath, useful for IPC scripts
In order to not depend on X11 just for getting the socket paths, scripts or
other programs can now use i3 --get-socketpath. Since i3 must be present on the
computer anyways, this saves one dependency :).
2011-10-02 16:12:10 +01:00
Michael Stapelberg 6af8b0941c i3-msg: use socket_path_from_x11 from libi3 2011-10-02 16:11:55 +01:00
Michael Stapelberg 094c26556e Introduce libi3, an *internal* library to eliminate code duplication 2011-10-02 16:11:30 +01:00
Michael Stapelberg 4f6e58e250 Makefiles: prefix compilation messages (for parallel builds) 2011-10-02 16:04:18 +01:00
Michael Stapelberg e73812802c makefile: make SUBDIRS constant 2011-10-02 16:03:09 +01:00
Michael Stapelberg 679bceccc4 remove obsolete comment 2011-10-02 13:18:12 +01:00
Michael Stapelberg 3537f2d4ca Merge branch 'master' into next 2011-10-02 12:57:27 +01:00
Michael Stapelberg 454cc746d7 Merge branch 'userguide-mark' 2011-10-02 12:57:25 +01:00
Michael Walle ba7b325469 userguide: fix typo
Signed-off-by: Michael Walle <michael@walle.cc>
2011-10-02 12:57:16 +01:00
Michael Stapelberg 0482dc7546 Merge branch 'master' into next 2011-10-01 17:44:46 +01:00
Michael Stapelberg 1f472b0962 Merge branch 'cloexec-errorlog' 2011-10-01 17:44:43 +01:00
Michael Walle 8adcf3e5d1 set close-on-exec flag on errorlogfile
Make sure the file descriptor is closed within the child after forking.

Signed-off-by: Michael Walle <michael@walle.cc>
2011-10-01 17:44:22 +01:00
Michael Stapelberg 3629934b0a Check for PCRE version and disable PCRE_UCP for <= 8.10 2011-09-30 20:31:32 +01:00
Michael Stapelberg c0d198bbc9 Include i3-sensible-* in 'make dist' 2011-09-29 21:04:39 +01:00
Michael Stapelberg db33da2258 Merge branch 'master' into next 2011-09-26 20:12:07 +01:00
Michael Stapelberg 6ce2f4d394 Merge branch 'fix-focus-ipc' 2011-09-26 20:12:03 +01:00
Michael Stapelberg abaa8c2356 Bugfix: IPC: Correctly dump the 'focus' array 2011-09-26 20:11:47 +01:00
Michael Stapelberg 683bfa58d5 tests: Use AnyEvent::I3’s get_marks (requires AE::I3 >=0.08)
We also don’t bother with timeouts anymore. It’s expected to run the tests with
a sufficiently recent version of i3. The tests will just hang if it doesn’t
work.
2011-09-26 19:36:27 +01:00
Michael Stapelberg 18691b6838 Merge branch 'nagbar-wrap' into next 2011-09-25 18:47:23 +01:00
Michael Stapelberg 6420b2b102 Introduce the i3-sensible-{pager,editor,terminal} scripts
The former two provide fallbacks in case $PAGER or $EDITOR is not set (which
might be more common than you think, because they have to be set in
~/.xsession, not in the shell configuration!) while the latter tries to launch
a terminal emulator. The scripts are most prominently used in i3-nagbar, which
alerts the user when the configuration is broken for some reason. Also,
i3-sensible-terminal is used in the default configuration.

This commit does not rely on the shell supporting ${PAGER:-less} anymore, which
is not the case for 'fish'.
2011-09-25 18:46:37 +01:00
Michael Stapelberg 1675499f15 docs/testsuite: a few corrections by fernandotcl 2011-09-25 14:23:47 +01:00
Michael Stapelberg 0e8eb5747a s/This adds up quickly/Delays add up quickly (Thanks mxf) 2011-09-24 20:11:23 +01:00
Michael Stapelberg efec744747 Merge branch 'testsuite' into next 2011-09-24 20:10:21 +01:00
Michael Stapelberg d174ff16ed Add docs/testsuite 2011-09-24 20:10:01 +01:00
Michael Stapelberg 1eb011aae1 tests: make sure to leave no tempfiles behind 2011-09-24 16:28:21 +01:00
Michael Stapelberg 10a9d2a439 tests: Bugfix: 11-goto.t: use mktemp for generating a random mark, not base64
The base64 string could contain / and + which is treated specially since we
implemented PCRE support :)
2011-09-24 15:56:43 +01:00
Michael Stapelberg 761dac5514 tests: lib/i3test: Use //= instead of unless exists $args{key} (Thanks mxf) 2011-09-24 15:44:42 +01:00
Michael Stapelberg 378611c11c tests: refactor t/58-wm_take_focus to use wait_for_event 2011-09-24 15:38:31 +01:00
Michael Stapelberg de5286da59 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.
2011-09-24 15:11:37 +01:00
Michael Stapelberg c3eb9f6c45 tests: complete-run: remove debugging messages 2011-09-24 13:13:26 +01:00
Michael Stapelberg 1a438f12ed tests: complete-run: display time i3 took for starting up 2011-09-24 13:13:09 +01:00
Michael Stapelberg e244a75801 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.
2011-09-24 13:09:20 +01:00
Michael Stapelberg 4da5b7e784 tests: use wait_for_{map,unmap} to eliminate more sleep()s 2011-09-24 13:08:02 +01:00
Michael Stapelberg 4821b13cae 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
2011-09-24 13:07:05 +01:00
Michael Stapelberg 38a9eabff1 tests: implement sync_with_i3 and use it instead of sleep()
Also use open_standard_window() in a few more places where appropriate
2011-09-24 11:15:08 +01:00
Michael Stapelberg 3167e9ad2d lib/i3test.pm: reformat exports list 2011-09-22 23:13:13 +01:00
Michael Stapelberg 1481cd95c9 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.
2011-09-22 23:13:12 +01:00
Michael Stapelberg 83560c85d8 lib/i3test.pm: Don’t sleep(0.25), but wait until the window was mapped
This makes it faster and less racey
2011-09-22 23:13:12 +01:00
Michael Stapelberg daebe28b09 Merge branch 'master' into next 2011-09-22 23:11:14 +01:00
Michael Stapelberg 30dea1fda6 Merge branch 'fix-dragging-fullscreen' 2011-09-22 23:11:11 +01:00
Yves Fischer 0c367f9e4c Skip dragging of floating cons in fullscreen mode 2011-09-22 23:10:48 +01:00