When two or more clients are tabbed together and their common window is resized (or maximized, or semi-maximized), they ungroup and cannot be tabbed together anymore. Besides, task manager is not able to restore clients if they were minimized. Reproducible: Always
I tested more throughoutly and it turns out that it is (only) reproducible with maximized or semi-maximized (to the left or right) windows that get automatically grouped (via the kwin rule).
MAJOR ISSUE! State flags are enum State { Minimized = 1<<0, Maximized = 1<<1, Shaded = 1<<2, Geometry = 1<<3, Desktop = 1<<4, Activity = 1<<5, Layer = 1<<6, QuickTile = 1<<7, All = 0xffffffff }; States parameter is (correctly) (0x2|0x8) for Maximized|Geometry BUT int(states) is 130 (instead of 10 = 2+8, as it should be) and the check for the geometry flag consequently fails. This is shadowed for regular unmaximizations since there's also a pure geometry change (size restorage) which comes as (0x8) and correctly leads to (&Geometry) == true This does NOT seem to be a namespace/Type issue because neither KWin::TabGroup::Geometry nor (States)Geometry fixes it
"all-clear" the updateblocker simply eats updates which simply need to be stored until updates are unlocked (the "wrong" flag results from the actually passed Maximized|QuickTile - no idea why it prints (2|8) - since 130 is 2|7
Git commit 9630055f2b64463fce886765a1cd2a32125f99aa by Thomas Lübking. Committed on 31/05/2012 at 10:20. Pushed by luebking into branch 'master'. cache blocked tabgroup state updates and do not check group breaking issues not being part of the updated states FIXED-IN: 4.9 REVIEW: 105114 M +11 -3 kwin/tabgroup.cpp M +2 -1 kwin/tabgroup.h http://commits.kde.org/kde-workspace/9630055f2b64463fce886765a1cd2a32125f99aa