Open steelman opened 3 years ago
Random guess where the dialog comes from: https://github.com/awesomeWM/awesome/blob/fda950d186efdc43a64c4300a27a5e19a55c2bd7/property.c#L122-L123
Possible fix:
diff --git a/objects/client.c b/objects/client.c
index f3754a1ec..b4952faf2 100644
--- a/objects/client.c
+++ b/objects/client.c
@@ -1965,6 +1965,10 @@ client_manage(xcb_window_t w, xcb_get_geometry_reply_t *wgeom, xcb_get_window_at
c->size_hints_honor = true;
luaA_object_emit_signal(L, -1, "property::size_hints_honor", 0);
+ /* Then check clients hints (must check _NET_WM_WINDOW_TYPE before
+ * WM_TRANSIENT_FOR in client_update_properties()) */
+ ewmh_client_check_hints(c);
+
/* update all properties */
client_update_properties(L, -1, c);
@@ -1976,9 +1980,6 @@ client_manage(xcb_window_t w, xcb_get_geometry_reply_t *wgeom, xcb_get_window_at
/* Put the window in normal state. */
xwindow_set_state(c->window, XCB_ICCCM_WM_STATE_NORMAL);
- /* Then check clients hints */
- ewmh_client_check_hints(c);
-
/* Push client in stack */
stack_client_push(c);
awesome v4.3 (Too long) • Compiled against Lua 5.3.3 (running with Lua 5.3) • D-Bus support: ✔ • execinfo support: ✔ • xcb-randr version: 1.6 • LGI version: 0.9.2
How to reproduce the issue:
Run LibreCAD or FreeCAD or probably any other Qt application which shows a splash window using Qt::SplashScreen.
Actual result:
The splash window is displayed with a title bar.
Expected result:
The splash window is displayed with a title bar.
Additional observations
LibreOffice shows a splash window without a title bar.
FreeCAD and LibreCAD splash windows trigger
property::type
signal withtype
set todialog
.xprop(1)
output for FreeCAD splash windowI suspect that
c->has_NET_WM_WINDOW_TYPE
inproperty_update_wm_transient_for()
is false (but why?) and client type is set toWINDOW_TYPE_DIALOG
.