Added assignment type 'A_NO_FOCUS' (#1416)
Any assignment with type 'A_NO_FOCUS' will cause the matched window to not be focused by i3 when it is managed.
This commit is contained in:
parent
d689827613
commit
e155447932
|
@ -460,6 +460,7 @@ struct Assignment {
|
||||||
*
|
*
|
||||||
* A_COMMAND = run the specified command for the matching window
|
* A_COMMAND = run the specified command for the matching window
|
||||||
* A_TO_WORKSPACE = assign the matching window to the specified workspace
|
* A_TO_WORKSPACE = assign the matching window to the specified workspace
|
||||||
|
* A_NO_FOCUS = don't focus matched window when it is managed
|
||||||
*
|
*
|
||||||
* While the type is a bitmask, only one value can be set at a time. It is
|
* While the type is a bitmask, only one value can be set at a time. It is
|
||||||
* a bitmask to allow filtering for multiple types, for example in the
|
* a bitmask to allow filtering for multiple types, for example in the
|
||||||
|
@ -469,7 +470,8 @@ struct Assignment {
|
||||||
enum {
|
enum {
|
||||||
A_ANY = 0,
|
A_ANY = 0,
|
||||||
A_COMMAND = (1 << 0),
|
A_COMMAND = (1 << 0),
|
||||||
A_TO_WORKSPACE = (1 << 1)
|
A_TO_WORKSPACE = (1 << 1),
|
||||||
|
A_NO_FOCUS = (1 << 2)
|
||||||
} type;
|
} type;
|
||||||
|
|
||||||
/** the criteria to check if a window matches */
|
/** the criteria to check if a window matches */
|
||||||
|
|
|
@ -512,9 +512,11 @@ void manage_window(xcb_window_t window, xcb_get_window_attributes_cookie_t cooki
|
||||||
/* Defer setting focus after the 'new' event has been sent to ensure the
|
/* Defer setting focus after the 'new' event has been sent to ensure the
|
||||||
* proper window event sequence. */
|
* proper window event sequence. */
|
||||||
if (set_focus && !nc->window->doesnt_accept_focus && nc->mapped) {
|
if (set_focus && !nc->window->doesnt_accept_focus && nc->mapped) {
|
||||||
|
if (assignment_for(cwindow, A_NO_FOCUS) == NULL) {
|
||||||
DLOG("Now setting focus.\n");
|
DLOG("Now setting focus.\n");
|
||||||
con_focus(nc);
|
con_focus(nc);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
tree_render();
|
tree_render();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue