fix: add stack update on focus change

Enable the stack update again for focus changes on non-focusable views.
This commit is contained in:
Armin Preiml 2018-07-03 15:03:00 +02:00
parent 742c66d93f
commit e6d613ca2e
2 changed files with 6 additions and 6 deletions

View File

@ -236,7 +236,7 @@ error_session:
## Wayland protocol implementation ## Wayland protocol implementation
Each protocol generally lives in a file with the same name, usually containing Each protocol generally lives in a file with the same name, usually containing
at leats one struct for each interface in the protocol. For instance, at least one struct for each interface in the protocol. For instance,
`xdg_shell` lives in `types/wlr_xdg_shell.h` and has a `wlr_xdg_surface` struct. `xdg_shell` lives in `types/wlr_xdg_shell.h` and has a `wlr_xdg_surface` struct.
### Globals ### Globals

View File

@ -228,13 +228,13 @@ static void xwm_send_focus_window(struct wlr_xwm *xwm,
// if the surface doesn't allow the focus request, we will send him // if the surface doesn't allow the focus request, we will send him
// only the take focus event. It will get the focus by itself. // only the take focus event. It will get the focus by itself.
xwm_send_wm_message(xsurface, &message_data, XCB_EVENT_MASK_NO_EVENT); xwm_send_wm_message(xsurface, &message_data, XCB_EVENT_MASK_NO_EVENT);
return;
} }
else {
xwm_send_wm_message(xsurface, &message_data, XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT);
xwm_send_wm_message(xsurface, &message_data, XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT); xcb_set_input_focus(xwm->xcb_conn, XCB_INPUT_FOCUS_POINTER_ROOT,
xsurface->window_id, XCB_CURRENT_TIME);
xcb_set_input_focus(xwm->xcb_conn, XCB_INPUT_FOCUS_POINTER_ROOT, }
xsurface->window_id, XCB_CURRENT_TIME);
uint32_t values[1]; uint32_t values[1];
values[0] = XCB_STACK_MODE_ABOVE; values[0] = XCB_STACK_MODE_ABOVE;