kwin/effects/presentwindows
Vlad Zagorodniy e9ab34854d [effects] Ignore previous state of WindowForceBlurRole
Summary:
Currently, effects like Maximize, Slide Back have problems with setting
WindowForceBlurRole. They store previous state of WindowForceBlurRole.
This is wrong. Instead they should either ignore previous state of
WindowForceBlur or refcount forced role.

There's no need for refcounting right now. For example, if several effects
force blur or background contrast, they are most likely in a conflict.
Please notice that the Desktop Grid effect uses the Present Windows
effect only to calculate transformations.

Some other problems with the code that sets WindowForceBlurRole:
* Maximize effect stores previous state of WindowForceBlurRole only
  for one window. It ignores the fact that there could be several
  active maximize animations;
* Desktop Grid/Present Windows/Slide back don't clean after themselves.
  So, after using those effects for good amount of times, memory usage
  will bump.

Test Plan:
* Enabled blur for Konsole
* Maximized Konsole
* Activated Present Windows
* Activated Desktop Grid
* Raised another window(to trigger Slide Back)

Reviewers: #kwin, fredrik

Reviewed By: fredrik

Subscribers: fredrik, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D13479
2018-06-19 15:23:41 +03:00
..
CMakeLists.txt Use SERVICE_TYPES parameter to kcoreaddons_desktop_to_json() 2015-12-09 23:42:45 +00:00
main.qml Don't hardcode Present Windows close button size 2014-08-11 12:27:21 +02:00
presentwindows.cpp [effects] Ignore previous state of WindowForceBlurRole 2018-06-19 15:23:41 +03:00
presentwindows.h [effects] Ignore previous state of WindowForceBlurRole 2018-06-19 15:23:41 +03:00
presentwindows.kcfg [effects] Use arg="true" in the kcfg files 2017-04-15 10:03:34 +02:00
presentwindows_config.cpp [effects] Use arg="true" in the kcfg files 2017-04-15 10:03:34 +02:00
presentwindows_config.desktop SVN_SILENT made messages (.desktop file) - always resolve ours 2015-04-07 13:20:00 +00:00
presentwindows_config.h [kwin/effects] Use generated dbus interface to reconfigure effects 2014-03-25 15:49:19 +01:00
presentwindows_config.ui Use KShortcutsEditor directly instead of subclass 2013-09-09 06:57:06 +02:00
presentwindows_proxy.cpp recreate presentwindows grids from desktopgrid 2015-09-14 21:01:01 +02:00
presentwindows_proxy.h recreate presentwindows grids from desktopgrid 2015-09-14 21:01:01 +02:00
presentwindowsconfig.kcfgc Use KConfigXT in PresentWindows Effect 2012-09-14 10:39:28 +02:00