aboutsummaryrefslogtreecommitdiff
path: root/xwayland
diff options
context:
space:
mode:
authorTony Crisci <tony@dubstepdish.com>2017-10-25 20:40:55 -0400
committerTony Crisci <tony@dubstepdish.com>2017-10-25 20:40:55 -0400
commit7914f4bda9aa2ea9e57ac36ec0d49e8a2c49d182 (patch)
tree952cab45344ede8ffa469342c69ee5134f87456d /xwayland
parentd6a1e6fd79c7fbd961e1eeaa9df63377e519de3e (diff)
xwm: dont focus override redirect windows
Diffstat (limited to 'xwayland')
-rw-r--r--xwayland/xwm.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/xwayland/xwm.c b/xwayland/xwm.c
index 27d8bff9..90f2f21c 100644
--- a/xwayland/xwm.c
+++ b/xwayland/xwm.c
@@ -96,6 +96,10 @@ static void xwm_set_net_active_window(struct wlr_xwm *xwm,
static void xwm_send_focus_window(struct wlr_xwm *xwm,
struct wlr_xwayland_surface *surface) {
if (surface) {
+ if (surface->override_redirect) {
+ return;
+ }
+
xcb_client_message_event_t client_message;
client_message.response_type = XCB_CLIENT_MESSAGE;
client_message.format = 32;
@@ -124,7 +128,8 @@ static void xwm_send_focus_window(struct wlr_xwm *xwm,
void xwm_surface_activate(struct wlr_xwm *xwm,
struct wlr_xwayland_surface *xsurface) {
- if (xwm->focus_surface == xsurface) {
+ if (xwm->focus_surface == xsurface ||
+ (xsurface && xsurface->override_redirect)) {
return;
}