kwin/effects/cube
Igor Poboiko ca1b5ea107 [effects/cubeslide] Fix visual glitches with Blur / BackgroundContrast effect
Summary:
Bugs occurred because KWin was not very happy when windows were painted during CubeSlideEffect::paintScreen().
Another issue is that blur, although it was supposed to, did not work at all (haven't found appropriate bug on bugzilla).
As well as background contrast effect.

This patch does the following thing:

 - Adopted WindowForceBlur / WindowForceBackgroundContrast logic from SlideEffect, instead of panels/stickyWindows QSets (those become useless anyway)
 - Added shouldAnimate code, which determines whether a window should be animated with the cube (i.e. ordinary windows) or should stick (i.e. panels or pinned windows, if corresponding options are checked in the settings)
 - It paints an additional non-transformed screen, on which it paints only "sticky" windows. This is done because otherwise KWin would apply blur not behind the OSD, but on the same place on moving cube face.
 - (in addition) switched to new Qt5 connect syntax.

Reviewers: #kwin, zzag

Differential Revision: https://phabricator.kde.org/D15175

BUG: 361516
BUG: 362360
FIXED-IN: 5.15.0
2018-09-14 12:36:55 +03:00
..
data [effects] Change sphere to use shader traits variant 2016-01-25 14:11:54 +01:00
CMakeLists.txt [effects] Combine all shaders in resources 2016-02-01 08:42:30 +01:00
cube.cpp [effects/cube] Port to TimeLine 2018-06-30 10:52:42 +03:00
cube.h [effects/cube] Change type of the rotationDuration property to int 2018-07-02 12:46:38 +03:00
cube.kcfg [effects] Use arg="true" in the kcfg files 2017-04-15 10:03:34 +02:00
cube_config.cpp [effects] Use arg="true" in the kcfg files 2017-04-15 10:03:34 +02:00
cube_config.desktop SVN_SILENT made messages (.desktop file) - always resolve ours 2018-09-04 06:05:23 +02:00
cube_config.h Use Q_SLOTS and Q_SIGNALS instead of slots and signals 2013-07-24 09:46:54 +02:00
cube_config.ui KIntSpinBox -> QSpinBox in kwin/effects configs 2013-09-09 07:38:30 +02:00
cube_inside.h Use mgraesslin@kde.org for my mail address in Copyright and AboutData 2013-03-12 13:17:53 +01:00
cube_proxy.cpp Use mgraesslin@kde.org for my mail address in Copyright and AboutData 2013-03-12 13:17:53 +01:00
cube_proxy.h Use mgraesslin@kde.org for my mail address in Copyright and AboutData 2013-03-12 13:17:53 +01:00
cubeconfig.kcfgc Porting effects to Qt5/KF5: QStandardPaths 2013-08-13 17:56:04 -03:00
cubeslide.cpp [effects/cubeslide] Fix visual glitches with Blur / BackgroundContrast effect 2018-09-14 12:36:55 +03:00
cubeslide.h [effects/cubeslide] Fix visual glitches with Blur / BackgroundContrast effect 2018-09-14 12:36:55 +03:00
cubeslide.kcfg [effects] Use arg="true" in the kcfg files 2017-04-15 10:03:34 +02:00
cubeslide_config.cpp [effects] Use arg="true" in the kcfg files 2017-04-15 10:03:34 +02:00
cubeslide_config.desktop SVN_SILENT made messages (.desktop file) - always resolve ours 2018-07-23 05:24:40 +02:00
cubeslide_config.h Use Q_SLOTS and Q_SIGNALS instead of slots and signals 2013-07-24 09:46:54 +02:00
cubeslide_config.ui KIntSpinBox -> QSpinBox in kwin/effects configs 2013-09-09 07:38:30 +02:00
cubeslideconfig.kcfgc Use KConfigXT in Cube/CubeSlide effect 2012-09-14 10:39:27 +02:00