In some cases, the out transition is false-triggered because we don't
react to changes in the keep-above and the full screen state.
Details
Details
- Reviewers
davidedmundson - Group Reviewers
KWin - Commits
- R108:ab5d66dc0f1a: [effects/diminactive] Fix false-triggering of the out animation
- Set the keep-above state on a window;
- Click on the desktop;
- (the window didn't "flicker")
Diff Detail
Diff Detail
- Repository
- R108 KWin
- Branch
- effects-diminactive-false-trigger
- Lint
Lint OK - Unit
No Unit Test Coverage - Build Status
Buildable 3980 Build 3998: arc lint + arc unit
effects/diminactive/diminactive.cpp | ||
---|---|---|
86–91 | could this become updateActiveWindow(effects->activeWindow()); |
effects/diminactive/diminactive.cpp | ||
---|---|---|
86–91 | I was thinking about something similar. We could split canDimWindow: bool canDimWindow(const EffectWindow *w) { if (m_activeWindow == w) { return false; } // check window group return isDimWindow(w); } bool isDimWindow(const EffectWindow *w) { if (!m_dimKeepAbove && w->w->keepAbove()) { return fasel; } // other checks return w->isNormalWindow() || ...; } And use isDimWindow here, in reconfigure, and in updateActiveWindow. By doing that, we won't need all those ugly m_activeWindow = nullptr; |
effects/diminactive/diminactive.cpp | ||
---|---|---|
86–91 | But, yeah, it could. I'll update this on push. |