aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Lübking <thomas.luebking@gmail.com>2012-10-21 15:42:30 (GMT)
committerThomas Lübking <thomas.luebking@gmail.com>2012-11-01 20:01:09 (GMT)
commit992fae00acf14d6c5ae3bc427e51eb32a9c0c32c (patch)
tree64a52eabd8de37612bba6f7a28e9f14b58c9d5dc
parentba80606b1e0b6f09b69344a514b595404fc82f33 (diff)
update deco borders on shade before aligning tabs
BUG: 308633 FIXED-IN: 4.9.3
-rw-r--r--kwin/client.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/kwin/client.cpp b/kwin/client.cpp
index 7b2f029..152095b 100644
--- a/kwin/client.cpp
+++ b/kwin/client.cpp
@@ -1070,6 +1070,11 @@ void Client::setShade(ShadeMode mode)
ShadeMode was_shade_mode = shade_mode;
shade_mode = mode;
+ // Decorations may turn off some borders when shaded
+ // this has to happen _before_ the tab alignment since it will restrict the minimum geometry
+ if (decoration)
+ decoration->borders(border_left, border_right, border_top, border_bottom);
+
// Update states of all other windows in this group
if (tabGroup())
tabGroup()->updateStates(this, TabGroup::Shaded);
@@ -1090,9 +1095,6 @@ void Client::setShade(ShadeMode mode)
assert(decoration != NULL); // noborder windows can't be shaded
GeometryUpdatesBlocker blocker(this);
- // Decorations may turn off some borders when shaded
- if (decoration)
- decoration->borders(border_left, border_right, border_top, border_bottom);
// TODO: All this unmapping, resizing etc. feels too much duplicated from elsewhere
if (isShade()) {