Commit Graph

5954 Commits

Author SHA1 Message Date
Ingo Bürk 018922dcc4 Allow "modifier none" in i3bar to disable the modifier.
This allows "modifier none" (and "modifier off") for the bar config
in order to disable the modifier key altogether. This is useful
for users who use a different approach to hiding / showing the bar,
e.g., a custom keybind that involved multiple keys or scripts.

fixes #2208
2016-02-11 20:51:05 +01:00
Michael Stapelberg e2d1f0f567 Merge pull request #2203 from Airblader/bug-2202
Ensure that the "border" command uses logical pixels.
2016-02-10 22:04:07 +01:00
Michael Stapelberg 5735e2de10 Merge pull request #2204 from romanblanco/st
Added st to i3-sensible-terminal
2016-02-10 22:02:51 +01:00
Roman Blanco 658e5597d2 Added st to i3-sensible-terminal 2016-02-09 22:33:37 +01:00
Ingo Bürk 6cbff6bfd4 Ensure that the "border" command uses logical pixels.
Until now, only the config directive for borders (new_window,
new_float) respected the DPI setting (using logical_px). This
patch makes sure we also do so for runtime "border" commands.

fixes #2202
2016-02-09 21:03:44 +01:00
Michael Stapelberg 1e23e55c5e Merge pull request #2197 from norrland/next
Update i3-sensible-terminal
2016-02-07 14:55:21 +01:00
Michael Stapelberg 0ff65ab79f Merge pull request #2196 from Airblader/feature-2165
Remove _NET_WM_STATE on withdrawn windows.
2016-02-07 14:54:34 +01:00
norrland 5601096c5e Update i3-sensible-terminal 2016-02-07 14:40:00 +01:00
Ingo Bürk ad95038c5e Remove _NET_WM_STATE on withdrawn windows.
According to the spec, _NET_WM_STATE must be removed when the window is
withdrawn, much like _NET_WM_DESKTOP.

fixes #2165
2016-02-07 12:08:50 +01:00
Michael Stapelberg fbfbdb8e12 travis: check spelling of binaries and manpages, use docker
We now build a docker base container based on debian sid (where the very
latest packages are available). That base container is updated once a
month, or whenever travis-build.Dockerfile or debian/control change, but
re-used for subsequent travis runs. While the initial build might take
up to 15 minutes, subsequent builds typically run in a minute or two.

All the different steps that we run on travis are now factored into
separate scripts in the travis/ directory.

Switching to docker should also help with issue #2174.
2016-02-06 10:36:43 +01:00
Michael Stapelberg 065ce6b8fc Merge pull request #2190 from jolange/userguide
Userguide: "hiding vertical borders" -> "hiding outer borders"
2016-02-05 09:30:21 +01:00
Johannes Lange 0c57abe8e5 "hiding vertical borders" -> "hiding outer borders"
This option can be used to hide horizontal or horizontal+vertical
borders since 57effd6
2016-02-04 20:01:24 +01:00
Michael Stapelberg 63cb5b2439 Merge pull request #2186 from brianmillar/next
Added Neovim to i3-sensible-editor
2016-02-01 08:24:36 +01:00
Brian Millar bb4e1c8cd1 Added Neovim to i3-sensible-editor 2016-02-01 01:18:41 +00:00
Michael Stapelberg 026fadf72d Merge pull request #2185 from nicklan/next
Fix issue #2184.  don't send atom, but raw code
2016-01-31 22:22:04 +01:00
Nick Lanham 8f2d066dc6 Fix issue #2184. don't send atom, but raw code
XEMBED messages aren't atoms, but just codes, so i3bar should just send
XEMBED_EMBEDDED_NOTIFY rather than indexing the atom array.
2016-01-31 12:21:47 -08:00
Michael Stapelberg b565676fb7 Merge pull request #2183 from jolange/hacking_update
changed old `cfgparse.y` reference to `config_parser.c`
2016-01-31 16:22:21 +01:00
Johannes Lange 1c7b25f25a changed old "cfgparse.y" reference to "config_parser.c" 2016-01-30 13:44:05 +01:00
Michael Stapelberg de42f9aef3 Merge pull request #2177 from dcoppa/next
Remove commented-out code and fix i3-nagbar manpage
2016-01-26 01:06:27 -08:00
David Coppa 7a25d3f149 Fix i3-nagbar example. 2016-01-26 09:57:59 +01:00
David Coppa 1041572769 Remove commented-out code. 2016-01-26 09:55:24 +01:00
Michael Stapelberg df3320796b Merge pull request #2172 from Airblader/bug-net-wm-desktop-1
Don't ignore focus on _NET_WM_DESKTOP client messages.
2016-01-25 00:30:12 -08:00
Ingo Bürk 3c0ba081df Don't ignore focus on _NET_WM_DESKTOP client messages.
Ignoring the focus leads to a broken focus if the pointer is, e.g.,
over i3bar at the point in time the window is moved by the client
message. It also causes i3bar's workspace display to break.

Thanks to GermainZ for reporting.
2016-01-22 20:32:51 +01:00
Michael Stapelberg f9a47c2611 Merge pull request #2169 from Airblader/bug-2168
Don't grab the buttons on the root window.
2016-01-20 13:43:20 -08:00
Ingo Bürk 95b60b170e Don't grab the buttons on the root window.
We don't actually need to grab the buttons to fix #2097, but doing so
will cause a freeze due to unreleased events.

We partially revert 6f12f02 which avoids the freeze, but doesn't break
functionality.

relates to #2097
fixes #2168
2016-01-20 22:28:20 +01:00
Michael Stapelberg cfd07ab0e6 Merge pull request #2162 from Airblader/feature-2153
Handle the EWMH atom _NET_WM_DESKTOP.
2016-01-18 13:31:03 -08:00
Ingo Bürk 328035fb7e Handle the EWMH atom _NET_WM_DESKTOP.
We already claim _NET_WM_DESKTOP support in _NET_SUPPORTED since around 2009,
but haven't actually done anything with it. However, especially pagers like
gnome-panel rely on this property to be updated and many tools, like GTK, want
to use the corresponding client messages to make a window sticky, move it
around etc.

This patch implements full support according to the EWMH spec. This means:

* We set the property on all windows when managing it.
* We keep the property updated on all windows at all times.
* We read and respect the property upon managing a window if it was set before
  mapping the window.
* We react to client messages for it.
* We remove the property on withdrawn windows.

Note that the special value 0xFFFFFFFF, according to the spec, means that the
window shall be shown on all workspaces. We do this by making it sticky and
float it. This shows it on all workspaces at least on the output it is on.

Furthermore, the spec gives us the freedom to ignore _NET_WM_DESKTOP when
managing a window if we have good reason to. In our case, we give window
swallowing a higher priority since the user would likely expect that and we
want to keep placeholder windows only around for as long as we have to.
However, we do prioritize this property over, for example, startup
notifications.

fixes #2153
fixes #1507
fixes #938
2016-01-18 12:13:36 +01:00
Michael Stapelberg dfdf9bed94 Merge pull request #2164 from pra85/patch-1
Update license year range to 2016
2016-01-17 13:22:11 -08:00
Michael Stapelberg a761e018d5 Merge pull request #2161 from botovq/next
Add pledge support for OpenBSD
2016-01-17 13:21:56 -08:00
Theo Buehler a1d1f456a1 Add pledge(2) support for OpenBSD
pledges for i3:
"stdio rpath unix" for talking to the i3 socket usually in /tmp
"proc exec" for executing programs
"wpath cpath" are needed for the restart-in-place functionality

To make this work, @semarie pointed out that it is sufficient to ensure
that we get physical_mem_bytes only once, namely in init_logging().

pledges for i3-msg:
"stdio rpath unix" are needed for talking to the i3-socket

pledges for i3-nagbar
"rpath getpw" to find the home directory
"wpath cpath" to write the script
"proc exec" to execute the script
2016-01-17 18:49:00 +01:00
Prayag Verma e41dee32da Remove copyright year range from License 2016-01-17 16:25:54 +05:30
Michael Stapelberg 9a4dbf366b travis: use trusty (simpler config, faster builds) 2016-01-11 21:18:11 +01:00
Michael Stapelberg dd33cd36dd travis: build with AddressSanitizer enabled
This requires us to use a more recent compiler.
2016-01-11 20:59:26 +01:00
Michael Stapelberg 4c1ca3e29a Merge pull request #2156 from Airblader/feature-2154
Rename decoration_border to child_border.
2016-01-10 11:04:08 -08:00
Ingo Bürk 811ff07b8e Rename decoration_border to child_border.
fixes #2154
2016-01-09 16:47:33 -05:00
Michael Stapelberg f14a94031c tests: switch to xft fonts
See issue #2155 for details.
2016-01-09 17:22:45 +01:00
Michael Stapelberg 196e63e1bf testcases: report tests with AddressSanitizer/LeakSanitizer reports 2016-01-09 17:19:12 +01:00
Michael Stapelberg cb3cdb602a ASAN: trigger leak before exiting
This disables the default leak-check-on-exit behavior which reports a
bunch of leaks that are only leaks while exiting, at which point they
don’t matter, because the operating system will clean up the memory our
process used.
2016-01-09 17:18:05 +01:00
Michael Stapelberg 5a36d090c7 common.mk: add ASAN flag for AddressSanitizer
See https://github.com/google/sanitizers/wiki for details.
Compile with “make ASAN=1” to enable.
2016-01-09 17:15:33 +01:00
Michael Stapelberg 9b4efdc194 font: free errors 2016-01-09 17:07:23 +01:00
Michael Stapelberg 17c55792c6 fix memory leak: use xcb_disconnect() instead of free() 2016-01-09 17:06:58 +01:00
Michael Stapelberg 8bfc651dd1 i3bar: free font when exiting 2016-01-09 17:06:58 +01:00
Michael Stapelberg 5ca659853a i3bar: fix memory leak 2016-01-09 17:06:58 +01:00
Michael Stapelberg f511cc61c1 fix memory leak when swallowing windows 2016-01-09 17:06:58 +01:00
Michael Stapelberg 8d917497c2 manage.c: fix memory leak 2016-01-09 17:06:58 +01:00
Michael Stapelberg 8d4bf6c577 free dynamically allocated matches 2016-01-09 17:06:58 +01:00
Michael Stapelberg 436e4c17b3 free container matches when destroying containers 2016-01-09 17:06:58 +01:00
Michael Stapelberg 414be6290d tree_append_json: fix memory leaks 2016-01-09 17:06:58 +01:00
Michael Stapelberg f904511b7e con_get_tree_representation: fix memory leak 2016-01-09 17:06:58 +01:00
Michael Stapelberg feef3ea78a window.c: fix memory leak 2016-01-09 17:06:58 +01:00