From 0b2fd6a8c86fbf1da57babbfb78d7276a739243a Mon Sep 17 00:00:00 2001 From: David Maciejak Date: Wed, 8 Mar 2023 19:37:48 +0800 Subject: [PATCH] WINGs: handle fixed size windows According to the EWMH specs, windows can indicate that they are non-resizable by setting minheight = maxheight and minwidth = maxwidth in the ICCCM WM_NORMAL_HINTS property. That should be for example the case for WPrefs app which is not resizable. Window Maker currently is overwriting that flag in src/window.c for apps that are exposing GNUstepHints instead. This patch is making sure the apps created with WINGs is removing the WMResizableWindowMask to hide the resizebar. --- WINGs/wwindow.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/WINGs/wwindow.c b/WINGs/wwindow.c index 4a27f437..bf004840 100644 --- a/WINGs/wwindow.c +++ b/WINGs/wwindow.c @@ -395,7 +395,11 @@ static void setWindowMakerHints(WMWindow * win) memset(&attribs, 0, sizeof(GNUstepWMAttributes)); attribs.flags = GSWindowStyleAttr | GSWindowLevelAttr | GSExtraFlagsAttr; + + if (win->minSize.width == win->maxSize.width && win->minSize.height == win->maxSize.height) + win->flags.style &= ~WMResizableWindowMask; attribs.window_style = win->flags.style; + attribs.window_level = win->level; if (win->flags.documentEdited) attribs.extra_flags = GSDocumentEditedFlag; -- 2.11.4.GIT