diff options
author | Olivier Fourdan <fourdan@xfce.org> | 2020-12-17 20:18:11 +0100 |
---|---|---|
committer | Olivier Fourdan <fourdan@xfce.org> | 2020-12-17 20:18:11 +0100 |
commit | 9b77e0719a1478a106835448793a4d1ae20309dc (patch) | |
tree | c1ce26f04c9a1509981f5d5af3b459d2dd70b32c /src/netwm.c | |
parent | e1cbe04b306334afc9aad873eac18f773df344c2 (diff) | |
download | xfwm4-9b77e0719a1478a106835448793a4d1ae20309dc.tar.gz |
netwm: Mark splashscreen as transient for groups
KDE applications such as Krita place their splashscreen window above
other windows, but may display a dialog at startup, and that dialog
would end up underneath the splashscreen.
Make the splashscreen windows transient for groups, so that if another
window from the same applications is eventually mapped, the splashscreen
will be sent back automatically at the same layer as the application and
will not hide it.
Signed-off-by: Olivier Fourdan <fourdan@xfce.org>
Fixes: https://gitlab.xfce.org/xfce/xfwm4/-/issues/470
Diffstat (limited to 'src/netwm.c')
-rw-r--r-- | src/netwm.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/netwm.c b/src/netwm.c index 031f746c8..7c9838fc5 100644 --- a/src/netwm.c +++ b/src/netwm.c @@ -1332,6 +1332,14 @@ clientWindowType (Client * c) XFWM_FLAG_HAS_BORDER | XFWM_FLAG_HAS_HIDE | XFWM_FLAG_HAS_MENU | XFWM_FLAG_HAS_MOVE | XFWM_FLAG_HAS_RESIZE); + /* Treat SPLASHSCREEN as transient for group to work around + * broken apps placing splashscreens above and then complaining + * it hides their dialogs, sigh. + */ + if ((c->transient_for == None) || (!clientGetTransient (c))) + { + c->transient_for = c->screen_info->xroot; + } } else if (c->type_atom == display_info->atoms[NET_WM_WINDOW_TYPE_NOTIFICATION]) { |