Summary: | Minimal overlap placement method does not take recency of activation into account | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Natalie Clarius <natalie_clarius> |
Component: | core | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED UNMAINTAINED | ||
Severity: | minor | CC: | natalie_clarius, nate |
Priority: | NOR | Keywords: | usability |
Version First Reported In: | 5.23.5 | ||
Target Milestone: | --- | ||
Platform: | Arch Linux | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Natalie Clarius
2022-01-18 04:04:36 UTC
> (https://invent.kde.org/plasma/kwin/-/blob/master/src/placement.cpp#L198 ?) correctly , the search does not take window's stacking/last-activated rank into account in computing the overlap, but rather will traverse the screen from left to right and top to bottom and sum up the potential overlaps with all windows equally. However, there is apparently already a penalty for windows set as keep above: https://invent.kde.org/plasma/kwin/-/blob/master/src/placement.cpp#L262 No, it traverses the windows in the stacking order. https://invent.kde.org/plasma/kwin/-/blob/8f941e52508ed16f28ee23e10e4515eedb4696bb/src/placement.cpp#L248 Note that there are effectively two stacking orders - visual stacking order (workspace()->stackingOrder()) and unconstrained stacking order (workspace::unconstrained_stacking_order). The most recently raised window will be the last one in workspace::unconstrained_stacking_order. workspace()->stackingOrder() is the same as workspace::unconstrained_stacking_order but with stacking order constraints applied, e.g. a dialog should always be above its parent, etc This bug was reported against an outdated version of KWin. We have made many changes since the. If the issue persists in newer versions can you reopen the bug report updating the version number. |