Michael Stapelberg
070a18e598
i3bar: update manpage for the i3bar-protocol
...
fixes #739
2012-08-12 19:26:04 +02:00
Michael Stapelberg
f94edd9fc3
i3bar-protocol: add example (illustration-only!) shell script, clarify {"version":1} header
2012-08-12 18:47:24 +02:00
Michael Stapelberg
e53405c216
i3bar: be less strict about the {"version":1} JSON header
2012-08-12 18:40:15 +02:00
Michael Stapelberg
dbe406641f
use errx() instead of err() for custom error message
2012-08-12 18:34:03 +02:00
Michael Stapelberg
68a23b9577
Bugfix: only honor _NET_ACTIVE_WINDOW for visible windows (+test) (Thanks Tucos)
...
fixes #774
2012-08-12 16:08:53 +02:00
Michael Stapelberg
1e49f1b08a
Implement i3 --moreversion
...
From the code:
Connects to i3 to find out the currently running version. Useful since it
might be different from the version compiled into this binary (maybe the
user didn’t correctly install i3 or forgot te restart it).
Here is an example output:
$ ./i3 --moreversion
Binary i3 version: 4.2-202-gb8e782c (2012-08-12, branch "next") © 2009-2012 Michael Stapelberg and contributors
Running i3 version: 4.2-202-gb8e782c (2012-08-12, branch "next") (pid 14804)
The i3 binary you just called: /home/michael/i3/i3
RUNNING BINARY DIFFERENT FROM BINARY ON DISK!
The i3 binary you are running: /home/michael/i3/i3
$ i3 restart
2012-08-12 15:05:28 - Additional arguments passed. Sending them as a command to i3.
IPC: received EOF instead of reply
$ ./i3 --moreversion
Binary i3 version: 4.2-202-gb8e782c (2012-08-12, branch "next") © 2009-2012 Michael Stapelberg and contributors
Running i3 version: 4.2-202-gb8e782c (2012-08-12, branch "next") (pid 14804)
The i3 binary you just called: /home/michael/i3/i3
The i3 binary you are running: /home/michael/i3/i3
2012-08-12 15:10:13 +02:00
Michael Stapelberg
b8e782c983
root_atom_contents: handle CARDINAL atoms such as I3_PID
2012-08-12 14:30:24 +02:00
Michael Stapelberg
394b395455
set I3_PID atom on the root window
2012-08-12 13:51:47 +02:00
Michael Stapelberg
b01d45e027
complete-run: handle bailouts
2012-08-12 13:46:54 +02:00
Michael Stapelberg
884627ef20
use I3__FILE__ for DLOG, leave __FILE__ as is
...
See also commit 0e752070ac
, which broke
source code listings in gdb unless you cd into i3/src. This should give
us best of both :-).
2012-08-12 12:19:47 +02:00
Michael Stapelberg
dd743f3b55
add testcase for previous bugfix (floating window size)
2012-08-12 00:36:44 +02:00
Philipp Middendorf
6225a8983d
Bugfix: Properly resize transient floating windows with a decoration
...
fixes #770
2012-08-12 00:36:26 +02:00
Michael Stapelberg
ae88accf6f
testworker: handle EAGAIN
...
Hopefully this fixes the case where a testworker would die and leave the
whole testsuite run hanging in the air, never completing.
2012-08-12 00:22:17 +02:00
Michael Stapelberg
d92626bc62
complete-run: enable autoflush (useful for debugging)
...
I used the following command to find hanging workers:
sort latest/complete-run.log|cut -f 2 -d ' '|uniq -c|grep -v '^[ \t]*2'
2012-08-12 00:20:52 +02:00
Michael Stapelberg
91786c3801
typo: s/transiert/transient/
2012-08-11 22:53:40 +02:00
Julius Plenz
70ec3867fe
clean up zero-byte logfile on immediate exit
...
Otherwise, a zero-byte log file stays behind after every call to `i3
--get-socketpath`. Also, replace "return" calls with more explicit "exit"
calls.
Before:
$ ls -ld /tmp/i3* | wc -l; \
repeat 10 i3 --get-socketpath >/dev/null; \
ls -ld /tmp/i3* | wc -l
1
11
Now:
$ ls -ld /tmp/i3* | wc -l; \
repeat 10 i3 --get-socketpath >/dev/null; \
ls -ld /tmp/i3* | wc -l
1
1
Signed-off-by: Julius Plenz <julius@plenz.com>
2012-08-11 02:23:03 +02:00
Valentin Haenel
da924aae6f
Bugfix: bump copyright in asciidoc-git.conf
2012-08-10 23:27:23 +02:00
Michael Stapelberg
6ba0944430
scratchpad: fix moving scratchpad window
...
From the source:
When starting i3 initially (and after each change to the connected
outputs), this function fixes the resolution of the __i3
pseudo-output. When that resolution is not set to a function which
shares a common divisor with every active output’s resolution,
floating point calculation errors will lead to the scratchpad window
moving when shown repeatedly.
fixes #632
2012-08-08 18:45:40 +02:00
Michael Stapelberg
3cdc5c5369
update .gitignore (Thanks SardemFF7)
2012-08-07 10:03:37 +02:00
Michael Stapelberg
95cdfe5cb6
makefile: remove the old loglevels.tmp and loglevels.h on 'make clean'
2012-08-07 10:03:10 +02:00
Michael Stapelberg
0e752070ac
explicitly set filenames to $(basename __FILE__)
...
This makes the debug log a bit more readable, especially since commit
48f1e383ca
2012-08-07 09:55:52 +02:00
Michael Stapelberg
fa4894fbaa
Support _NET_ACTIVE_WINDOW ClientMessages
...
Since we advertise _NET_ACTIVE_WINDOW support (but only set the
corresponding atom currently), it makes sense to also support the
ClientMessage. Apps such as Gajim use it to set focus to the roster
window when clicking on the tray icon for example.
fixes #767
2012-08-07 09:50:47 +02:00
Michael Stapelberg
122130d868
handlers.c: don’t call x_push_changes(croot), tree_render() already does
2012-08-07 09:50:25 +02:00
Michael Stapelberg
1a62c398ac
Bugfix: Attach con to nc before calling con_border_style_rect()
2012-08-07 01:13:37 +02:00
Philipp Middendorf
9d9a1d9d29
Bugfix: Add deco_height only when in "normal" border mode.
...
Also, use con_border_style_rect instead of hard-coded values to
determine the border size.
2012-08-07 01:05:16 +02:00
Michael Stapelberg
506b7f4004
Bugfix for previous commit: Don’t crash with dock windows
2012-08-06 03:11:11 +02:00
Axel Wagner
57effd65b2
Make horizontal edge-borders hidable too
2012-08-06 03:03:00 +02:00
Michael Stapelberg
1b2d222449
Properly report errors in 'focus parent' (Thanks eeemsi)
...
Also, make X11 errors debug log level only. They are harmless usually.
fixes #762
2012-08-05 20:57:20 +02:00
Michael Stapelberg
afc16953b9
correctly store last_split_layout when we are dealing with a workspace-level layout change (Thanks aksr)
...
fixes #763
2012-08-05 20:52:42 +02:00
Iakov Davydov
f27735f620
create hide_edge_borders option
2012-08-05 20:26:15 +02:00
Michael Stapelberg
48f1e383ca
makefile: canonicalize path when compiling
...
Compilers store the path with which they were called in the debug
symbols. Therefore, this will make backtraces show something like
../i3-4.2/src/main.c instead of src/main.c.
See also http://stackoverflow.com/questions/6473561/
2012-08-05 17:00:24 +02:00
Michael Stapelberg
952e5b6059
pre-compile all.h, saves quite some build time
...
before:
$ time CC=clang make -j16
CC=clang make -j16 6,04s user 0,86s system 468% cpu 1,471 total
CC=clang make -j16 6,05s user 0,87s system 468% cpu 1,477 total
CC=clang make -j16 6,15s user 0,86s system 464% cpu 1,510 total
CC=clang make -j16 6,05s user 0,93s system 467% cpu 1,493 total
CC=clang make -j16 6,10s user 0,84s system 461% cpu 1,507 total
$ time CC=gcc make -j16
CC=gcc make -j16 9,91s user 1,43s system 508% cpu 2,231 total
CC=gcc make -j16 10,02s user 1,37s system 500% cpu 2,275 total
CC=gcc make -j16 9,80s user 1,60s system 507% cpu 2,245 total
CC=gcc make -j16 10,02s user 1,44s system 506% cpu 2,264 total
CC=gcc make -j16 9,99s user 1,45s system 505% cpu 2,261 total
after:
$ time CC=clang make -j16
CC=clang make -j16 3,41s user 0,83s system 375% cpu 1,131 total
CC=clang make -j16 3,29s user 0,90s system 373% cpu 1,122 total
CC=clang make -j16 3,35s user 0,77s system 369% cpu 1,116 total
CC=clang make -j16 3,36s user 0,78s system 374% cpu 1,105 total
CC=clang make -j16 3,46s user 0,75s system 373% cpu 1,126 total
$ time CC=gcc make -j16
CC=gcc make -j16 10,74s user 1,44s system 494% cpu 2,462 total
CC=gcc make -j16 10,68s user 1,54s system 497% cpu 2,453 total
CC=gcc make -j16 10,60s user 1,60s system 488% cpu 2,499 total
CC=gcc make -j16 10,63s user 1,51s system 485% cpu 2,502 total
CC=gcc make -j16 10,70s user 1,51s system 497% cpu 2,453 total
Therefore, we enable pre-compiled headers only when CC=clang.
2012-08-05 16:44:11 +02:00
Michael Stapelberg
8a1c8115ca
fix a few warnings/places where the clang static analyzer complains
2012-08-05 16:34:38 +02:00
Michael Stapelberg
cab8e3c46f
log.h: include left-over slog() prototype
2012-08-05 15:59:45 +02:00
Michael Stapelberg
991a9de0d7
log.h: tell the compiler these logging functions use printf-like formats
...
This gives us additional warnings and is supported in gcc and clang.
2012-08-05 15:59:08 +02:00
Michael Stapelberg
d5b7146123
docs/ipc: make the reply sections consistent (they contain the reply type)
2012-08-05 14:42:12 +02:00
Michael Stapelberg
0e47d52c43
ipc: clarify the patch version for sth like 4.2
2012-08-05 14:39:45 +02:00
Michael Stapelberg
acdd5287a9
unbreak the build
2012-08-05 14:38:52 +02:00
Michael Stapelberg
78f5f2204d
ipc: implement GET_VERSION to find out the i3 version
...
This is useful for third-party scripts which require certain features
and want to error out cleanly when they are run with an old i3 version.
Additionally, i3 --version might be different from what’s actually
running (an old version of the binary), so i3-msg -t get_version will be
the best way to figure out the i3 version you are actually running from
this commit on.
2012-08-05 14:30:05 +02:00
Quentin Glidic
f80b877c6b
man/i3bar: Reference j4status
2012-08-05 14:01:20 +02:00
Michael Stapelberg
ac8b2f637f
cleanup i3 sync protocol messages
2012-08-04 16:34:57 +02:00
Michael Stapelberg
1d95d296a5
parser: remove debug messages
...
The new parser is proven by now (v4.2 was released 4 months ago), so
removing these messages will make the logfile more readable.
2012-08-04 16:31:57 +02:00
Michael Stapelberg
fb4ee17b05
Merge branch 'master' into next
2012-08-04 16:10:37 +02:00
Michael Stapelberg
c5cfe22511
Merge branch 'fix-coords'
2012-08-04 16:09:46 +02:00
Michael Stapelberg
74510c59c7
floating_fix_coordinates: properly deal with negative positions
2012-08-04 16:09:16 +02:00
Michael Stapelberg
d57d51da6d
Bugfix: Properly fix floating coordinates when disabling outputs (Thanks Tucos)
...
Since the content containers are not yet updated (they will be when
rendering), we need to use the output containers’s rects instead.
2012-08-04 16:09:16 +02:00
Michael Stapelberg
e867fd8105
Bugfix: fix floating coordinates when moving assigned workspaces
2012-08-04 16:09:10 +02:00
Michael Stapelberg
e36674c5b8
Fix a crash when the current output cannot be determined (Thanks Tucos)
...
This is only a cosmetical change though, the fix for the root cause can
be found in the commits following this one.
2012-08-04 15:19:11 +02:00
Michael Stapelberg
2f22fae119
i3-migrate-config-to-v4: use layout toggle split (Thanks eeemsi)
2012-08-04 12:46:37 +02:00
Michael Stapelberg
79083f3b34
ensure the layout is not L_DEFAULT anymore, even if last_split_layout is not initialized (Thanks eeemsi)
2012-08-04 03:43:12 +02:00