From df3439920c8464295b6f15128e2b62bc1eed8f43 Mon Sep 17 00:00:00 2001 From: Michele Calgaro Date: Fri, 17 Nov 2023 18:56:13 +0900 Subject: Fix unwanted window resizing. This resolves issue TDE/tde#57. Some applications (like xfce4-terminal) try to manage their sizes by requesting the window manager a different size. The WM responds by resizing the window and the application tries once again to adjust its own size. This can lead to a repeated loop of request-resize which results in the application window to either shrink to the minimum allowed size or expand to the display size. Signed-off-by: Michele Calgaro (cherry picked from commit a9bd5b50e9b77b8b360dd3620013a320733139aa) --- twin/client.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'twin/client.cpp') diff --git a/twin/client.cpp b/twin/client.cpp index 74bee8535..d76dda619 100644 --- a/twin/client.cpp +++ b/twin/client.cpp @@ -128,6 +128,9 @@ Client::Client( Workspace *ws ) autoRaiseTimer = 0; shadeHoverTimer = 0; + configureRequestTimer = new TQTimer(this); + connect(configureRequestTimer, TQT_SIGNAL(timeout()), TQT_SLOT(configureRequestTimeout())); + shadowDelayTimer = new TQTimer(this); opacityCache = &activeOpacityCache; shadowAfterClient = NULL; @@ -969,6 +972,12 @@ void Client::setShade( ShadeMode mode ) updateWindowRules(); } +void Client::configureRequestTimeout() + { + moveResizeMode = false; + sendSyntheticConfigureNotify(); + } + void Client::shadeHover() { setShade( ShadeHover ); -- cgit v1.2.1