diff options
author | Olivier Fourdan <fourdan@xfce.org> | 2019-01-10 08:59:48 +0100 |
---|---|---|
committer | Olivier Fourdan <fourdan@xfce.org> | 2019-01-10 09:06:04 +0100 |
commit | 3751c2c716714f84dd3d527b60f3543e96fac54e (patch) | |
tree | 3e7b838e24082f0ed79758e865175a470aad186b /src/events.c | |
parent | d0c4b9578c92b00fcdcf9d4bfec7b24b3b5c37be (diff) | |
download | xfwm4-3751c2c716714f84dd3d527b60f3543e96fac54e.tar.gz |
events: ignore client configure requests when maxized
Bug: 13954
Some clients tend to send us a configure request when transitioning to
maximized, which introduces a race condition because the window manager
will remove the maximized flag when the client resizes itself, now that
we allow for that since commit aee8b25a.
Ignore the configure request from the client when maximized or
fullscreen to work around such behavior from the client.
Signed-off-by: Olivier Fourdan <fourdan@xfce.org>
Diffstat (limited to 'src/events.c')
-rw-r--r-- | src/events.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/events.c b/src/events.c index ccd820d2b..ecc15737f 100644 --- a/src/events.c +++ b/src/events.c @@ -1360,10 +1360,14 @@ handleConfigureRequest (DisplayInfo *display_info, XConfigureRequestEvent * ev) ev->value_mask &= ~(CWSibling | CWStackMode); } } + if (c) { TRACE ("window \"%s\" (0x%lx)", c->name, c->window); - if (FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MOVING_RESIZING)) + if (FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MOVING_RESIZING) + || FLAG_TEST (c->flags, CLIENT_FLAG_FULLSCREEN) + || (FLAG_TEST_ALL (c->flags, CLIENT_FLAG_MAXIMIZED) + && (c->screen_info->params->borderless_maximize))) { /* Sorry, but it's not the right time for configure request */ return EVENT_FILTER_REMOVE; |