Ingo Bürk
f7907c11d7
Suppress no_focus for first window on a workspace.
...
With this patch, the no_focus directive will be ignored if the
to-be-opened window is the first on its workspace as there's no
reason the user would not want to focus it in this case.
This improves usability when, for example, using a tabbed
workspace_layout.
fixes #1987
2015-10-12 12:59:01 +02:00
Ingo Bürk
c7ca6e1b41
Migrate the move command to use typed numbers.
2015-09-28 14:21:44 +02:00
Michael Stapelberg
34b8a02a36
Merge pull request #1967 from Airblader/feature-easier-command-diff
...
Break list of commands in parser test
2015-09-28 08:25:58 +02:00
Michael Stapelberg
71afed725a
Merge pull request #1962 from Airblader/bug-move-to-output-criteria
...
Correctly handle command criteria for "move window to output".
2015-09-28 08:22:09 +02:00
Ingo Bürk
90a85c3f52
Break list of all commands into one line per command. This reduces the chances of merge conflicts when
...
introducing or removing commands and therefore increases maintainability (albeit by only a little).
2015-09-27 19:25:17 +02:00
Ingo Bürk
852a2853e3
Correctly handle command criteria for "move window to output".
2015-09-26 21:31:28 +02:00
Michael Stapelberg
c82e6a87dc
Merge pull request #1931 from Airblader/bug-1924
...
Improvements for sticky windows
2015-09-24 22:34:29 +02:00
Ingo Bürk
922afe1919
Keep a sticky window focused if it was the focused window on the source workspace.
...
fixes #1924
2015-09-24 22:10:17 +02:00
Michael Stapelberg
72b9909942
Merge pull request #1921 from tcatm/fix-no-randr-output
...
randr: use root window in case of no randr outputs
2015-09-21 10:17:21 +02:00
Ingo Bürk
034815b8fd
Set and unset individual atoms in _NET_WM_STATE instead of overwriting the entire list everytime. This allows independent management of multiple states.
...
fixes #1873
2015-09-17 09:13:12 +02:00
Nils Schneider
c87b256200
Revert "Add a timeout: delay_exit_on_zero_displays"
...
This reverts commit 2c77d7ceed
.
2015-09-14 22:34:05 +02:00
Michael Stapelberg
840ce51bfd
Extract workspace names from bindings before reordering.
...
fixes #1889
2015-09-14 09:28:42 +02:00
Ingo Bürk
1c4c3f06fa
Make sure sticky windows pop to the front if they get sticky while not being on a visible workspace.
...
This commit also reworks the way focusing sticky windows is prevented by not focusing them temporarily at all, but preventing the focus in the first place.
2015-09-13 20:40:20 +02:00
Ingo Bürk
23a1dadaae
Added tests for sticky windows.
2015-09-13 20:40:20 +02:00
Ingo Bürk
9866b00802
Implement new 'sticky' command to manually set, remove or toggle the sticky state on a window.
2015-09-13 20:40:20 +02:00
Ingo Bürk
2c338b6ae2
Handle _NET_WM_STATE_STICKY, but only for floating containers. If this atom is set, the floating window will always be automatically moved to the currently active workspace of the output that it is on. This is the equivalent of a sticky note stuck to the monitor.
...
We will respect this atom upon managing a window as well as when we receive a request that changes the sticky state.
fixes #1455
2015-09-13 20:40:20 +02:00
Ingo Bürk
5dbfb05c85
Use the EWMH support window rather than the root window as an input focus fallback.
...
If no other window is available on the active workspace, we now select the EWMH support window (used to indicate that an EWMH-compliant window manager is preent) as the focus window rather than the root window. The NET_WM_ACTIVE window will still be set to XCB_WINDOW_NONE to pretend that no window is actually focused.
This fixes the issue that when using the root window, a fallback mechanism in X11 takes effect which routes keyboard input to the window under the cursor, independent of whether that window has the input focus. Using the EWMH window instead, we can avoid this behavior. We cannot simply set it to XCB_WINDOW_NONE as this would discard all keyboard events, breaking keybindings.
fixes #1378
2015-09-13 20:29:02 +02:00
Michael Stapelberg
ef6f2f4365
Merge pull request #1893 from rr-/resize
...
Added cmd_size
2015-09-11 14:31:33 -07:00
rr-
23d16e1332
Support "resize set W H"
2015-09-11 23:12:07 +02:00
Ingo Bürk
f31e476b28
Let "focus" report success depending on whether a window was matched.
...
fixes #1809
2015-09-11 08:26:33 +02:00
Ingo Bürk
053020f2db
Support moving dock clients to another output.
...
This fixes #1883 where a race condition between i3 and i3bar caused two i3bar clients to be put onto the same output.
2015-09-05 21:30:55 +02:00
Michael Stapelberg
394161c479
Merge pull request #1877 from Airblader/feature-1872
...
Support _NET_WM_VISIBLE_NAME
2015-08-31 09:00:57 +02:00
Ingo Bürk
f44c87685b
Support _NET_WM_VISIBLE_NAME. As per specification this is necessary since we can display custom titles with title_format.
...
fixes #1872
2015-08-30 22:42:14 +02:00
Ingo Bürk
bbd83ef790
Added tests for special value __focused__.
...
relates to #1770
2015-08-29 00:43:55 +02:00
Michael Stapelberg
f76a2fdf68
layout restore: remove remaining criteria when swallowing window
...
fixes #1817
2015-08-06 21:35:34 +02:00
Michael Stapelberg
57438d270d
append_layout: load floating containers correctly
...
fixes #1739
fixes #1271
2015-08-05 22:40:58 +02:00
Michael Stapelberg
21d4b2319f
Properly clear the urgency hint when set by i3.
...
fixes #1825
2015-08-02 20:50:14 +02:00
hwangcc23
fc1477dfb5
Support config file line continuation
...
1. Allow to use the line continuation, which is indicated by \ before the new line character, in config files.
2. Add a new testcase "247-config-line-continuation.t" for
a). testing line continuation
b). making sure string escaping still works
c). testing line continuations within a string
b). testing line continuations with too many lines
2015-07-26 07:54:06 +08:00
Ingo Bürk
be406d036d
Implement new criterion 'workspace'.
...
If the match expression is a plain number (e.g., '99'), the number of a workspace will be compared strictly. Otherwise, the match expression is taken as a regular expression and compared against the workspace's name.
This allows all of the following:
for_window [workspace=5] ...
for_window [workspace="5:foo"] ...
for_window [workspace="foo"] ...
fixes #1769
2015-06-30 20:53:52 +02:00
Michael Stapelberg
8df7e4ecb9
Merge pull request #1747 from Airblader/feature-1723
...
Implement "title_format"
2015-06-29 00:24:59 -07:00
Ingo Bürk
55e8d06ee4
Added command directive 'title_format'.
...
This directive will be used to customize the window title.
2015-06-29 09:13:31 +02:00
Michael Hofmann
bad4203755
Configurable tray padding.
2015-06-28 00:14:37 +02:00
Michael Stapelberg
696d844ffa
Merge pull request #1697 from Airblader/feature-1695
...
Extend mouse commands on i3bar
2015-06-18 20:50:56 +02:00
Ingo Bürk
618b6744d5
Added testcase for #1695 .
2015-06-18 19:28:24 +02:00
Michael Stapelberg
4d25d6a5a6
Merge pull request #1752 from Airblader/feature-test-cleanups-1
...
Silence "masks earlier declaration in same scope" warnings
2015-06-13 14:39:19 +02:00
Ingo Bürk
73a84886d1
Silence "masks earlier declaration in same scope" warnings when executing tests.
2015-06-12 18:19:43 +02:00
Ingo Bürk
9571200baa
Remove dead documentation for non-existing feature "stack-limit".
2015-06-09 23:13:15 +02:00
Ingo Bürk
2b6f76852c
Implement i3's logic for maintaining a list of 'bindsym' directives and passing it to i3bar through the IPC.
2015-06-05 12:30:53 +02:00
Ingo Bürk
ab12d3fc74
Add new command skeleton 'bindsym <button> <command>' for 'bar' block.
2015-06-05 12:30:53 +02:00
Michael Stapelberg
6b505d8aca
Merge pull request #1733 from Airblader/feature-1732
...
Added a separate color directive for the binding mode indicator
2015-06-02 08:35:14 +02:00
Ingo Bürk
9b691bcca2
Introduce a config directive 'binding_mode' in the 'bar' config, pass it through the IPC and parse it in i3bar.
2015-05-31 16:49:09 +02:00
Ingo Bürk
1454975981
Added a testcases for #1056 to test whether hovering over a window decoration causes the corresponding window to be
...
focused.
2015-05-29 23:49:22 +02:00
Michael Stapelberg
da064cc08f
Merge pull request #1698 from Airblader/feature-1696
...
Added 'move position mouse'
2015-05-17 15:02:50 +02:00
Ingo Bürk
fbbe9cf2e8
Added testcases for 'move position mouse'
2015-05-14 13:04:58 -04:00
Michael Stapelberg
66a1fa7d46
Merge pull request #1638 from hwangcc23/fix-1489
...
Add a timeout: delay_exit_on_zero_displays
2015-05-05 00:43:43 -07:00
Deiz
f0f906a52e
Initialize workspace rect to the output's upon creation
...
The comment immediately following implied that this was the intended
behaviour. Not doing so means that compound commands that both move a
window to a new workspace as well as do something that depends on the
workspace's geometry (e.g. 'move position center' or 'floating enable'
on a tiled window) would use the workspace's calloc'd 0x0+0x0 geometry.
2015-04-28 15:09:58 -04:00
Tony Crisci
6cbe349774
Ignore InputHint when not in WM_HINTS
...
When InputHint is not in WM_HINTS (i.e., the flag is not set), treat the window
as if the InputHint was set (the default behavior). This means that i3 will
focus the window when it becomes managed.
fixes #1676
2015-04-25 22:43:46 -04:00
Ingo Bürk
cd0cf9d651
Added testcases for setting _NET_WM_STATE_HIDDEN on unfocused containers in tabbed/stacked containers.
2015-04-21 09:14:22 +02:00
Michael Stapelberg
67ec2333ee
Merge pull request #1665 from Airblader/feature-1658
...
Added criterion 'window_type'
2015-04-21 08:42:16 +02:00
Ingo Bürk
e4a86d4aef
Cleanup: delete comments that were accidentally copy-pasted and are incorrect for these test cases
2015-04-20 19:27:43 +02:00