From eab1166dbcf29d29eb0325bc1361eef63a17b83d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20L=C3=BCbking?= Date: Tue, 19 Mar 2013 22:00:05 +0100 Subject: [PATCH] set / withdraw iconic state for shaded clients Should shaded windows be iconic? I don't know. Apparently nobody does. (google found me discussions but no conclusion) OpenBox, Metacity and Compiz set shaded Windows iconic, Sawfish and IceWM don't. Either way kwin presently sets shaded windows iconic when you map them (client.cpp, void Client::map(allowed_t)) so to remain consistent with ourselves and half of the other WMs i set it. Otherwise it should not be set when unshading a window (no justification but noteworthy: the bug reporter seems to intend to pause expensive painting when the window is iconic and in that regard it's oc better to have it for shaded windows) BUG: 317025 FIXED-IN: 4.11 REVIEW: 109593 --- client.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/client.cpp b/client.cpp index 1f4d232880..aab9dedd8a 100644 --- a/client.cpp +++ b/client.cpp @@ -982,6 +982,7 @@ void Client::setShade(ShadeMode mode) XUnmapWindow(display(), wrapper); XUnmapWindow(display(), client); XSelectInput(display(), wrapper, ClientWinMask | SubstructureNotifyMask); + exportMappingState(IconicState); plainResize(s); shade_geometry_change = false; if (was_shade_mode == ShadeHover) { @@ -1017,6 +1018,7 @@ void Client::setShade(ShadeMode mode) } XMapWindow(display(), wrapperId()); XMapWindow(display(), window()); + exportMappingState(NormalState); if (isActive()) workspace()->requestFocus(this); }