This method can be used to get the animationTime in case a configuration
class generated through KConfigXT is used. In general the configuration
stores the magic value 0 for a property "duration". This magic value
indicates that a hard-coded default value should be used.
So the common logic to test the stored value for 0 and then either pass
the stored value or the default value to animationTime is encapsulated
in this method in a generic way.
A MyEffect can use it in the following way:
animationTime<MyEffectConfig>(200);
BUG: 310646
FIXED-IN: 4.10
REVIEW: 107460
The CompositingType enum turns into flags and two new values are
introduced: OpenGL1Compositing and OpenGL2Compositing.
Those new values are or-ed to OpenGLCompositing so that a simple check
for the flag OpenGLCompositing works in case of one of those two new
values. To make the generic check for OpenGL compositing easier a method
in EffectsHandler is introduced to just check for this.
The scenes now return either OpenGL1Compositing or OpenGL2Compositing
depending on which Scene implementation. None returns OpenGLCompositing.
The supportInformation is extended to also read the properties
on all effects. In addition each effect can be queried just for
itself through D-Bus, e.g.:
qdbus org.kde.kwin /KWin supportInformationForEffect kwin4_effect_blur
All effects are extended to provide their configured and read
settings through properties. In some cases also important
runtime information is exposed.
REVIEW: 105977
BUG: 305338
FIXED-IN: 4.9.1
Effects can specify their minimum requirements in their
desktop file:
* OpenGL
* OpenGL 2 (GLSL required)
* Shaders (either ARB or OpenGL 2)
The configuration module uses this information in combination
with which backend KWin is currently using. So if e.g. OpenGL
is used and an effect requires OpenGL 2 a detailed error
message can be showed that OpenGL 2 is required.
BUG: 209213
FIXED-IN: 4.9.0
REVIEW: 104847
Each effect is able to declare itself as currently being active,
that is transforming windows or painting or screen or doing anything
during the current rendered frame.
This change eliminates the hottest path inside KWin identified by
callgrind.
REVIEW: 102449
The KWin::TimeLine class was only a small wrapper around QTimeLine
without adding anything to QTimeLine what is not present in QTimeLine.
The initial idea was to make it possible to provide more curve shapes.
This is now obsoleted by Qt shipping more useful curves with QTimeLine.
So let's clean up a little bit and use QTimeLine directly instead of
the small wrapper.
All effects are adjusted to use QTimeLine directly.
svn path=/trunk/KDE/kdebase/workspace/; revision=1213663
The following changes were in SVN, but were removed from git:
M wallpapers/Air/metadata.desktop
M wallpapers/Autumn/metadata.desktop
M wallpapers/Blue_Wood/metadata.desktop
M wallpapers/Grass/metadata.desktop
M wallpapers/Hanami/metadata.desktop
M wallpapers/Horos/metadata.desktop
M wallpapers/Media_Life/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Quadros/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1191511
The following changes were in SVN, but were removed from git:
M wallpapers/Aghi/metadata.desktop
M wallpapers/Air/metadata.desktop
M wallpapers/Autumn/metadata.desktop
M wallpapers/Blue_Wood/metadata.desktop
M wallpapers/Ethais/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Grass/metadata.desktop
M wallpapers/Hanami/metadata.desktop
M wallpapers/Media_Life/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Quadros/metadata.desktop
M wallpapers/Red_Leaf/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1177799
The following changes were in SVN, but were removed from git:
M wallpapers/Blue_Wood/metadata.desktop
M wallpapers/Ethais/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Grass/metadata.desktop
M wallpapers/Media_Life/metadata.desktop
M wallpapers/Quadros/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1098905
The following changes were in SVN, but were removed from git:
M wallpapers/Aghi/metadata.desktop
M wallpapers/Code_Poets_Dream/metadata.desktop
M wallpapers/Curls_on_Green/metadata.desktop
M wallpapers/Ethais/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Media_Life/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Quadros/metadata.desktop
M wallpapers/Red_Leaf/metadata.desktop
M wallpapers/Spring_Sunray/metadata.desktop
M wallpapers/The_Rings_of_Saturn/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1097842
The following changes were in SVN, but were removed from git:
M wallpapers/Aghi/metadata.desktop
M wallpapers/Air/metadata.desktop
M wallpapers/Code_Poets_Dream/metadata.desktop
M wallpapers/Curls_on_Green/metadata.desktop
M wallpapers/Ethais/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Media_Life/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Quadros/metadata.desktop
M wallpapers/Red_Leaf/metadata.desktop
M wallpapers/Spring_Sunray/metadata.desktop
M wallpapers/The_Rings_of_Saturn/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1085566
The following changes were in SVN, but were removed from git:
M wallpapers/Aghi/metadata.desktop
M wallpapers/Air/metadata.desktop
M wallpapers/Code_Poets_Dream/metadata.desktop
M wallpapers/Curls_on_Green/metadata.desktop
M wallpapers/Ethais/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Media_Life/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Quadros/metadata.desktop
M wallpapers/Spring_Sunray/metadata.desktop
M wallpapers/The_Rings_of_Saturn/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1068486
The following changes were in SVN, but were removed from git:
M wallpapers/Aghi/metadata.desktop
M wallpapers/Air/metadata.desktop
M wallpapers/Curls_on_Green/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Media_Life/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Quadros/metadata.desktop
M wallpapers/Red_Leaf/metadata.desktop
M wallpapers/Spring_Sunray/metadata.desktop
M wallpapers/The_Rings_of_Saturn/metadata.desktop
M wallpapers/There_is_Rain_on_the_Table/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1068118
The following changes were in SVN, but were removed from git:
M wallpapers/Aghi/metadata.desktop
M wallpapers/Air/metadata.desktop
M wallpapers/Code_Poets_Dream/metadata.desktop
M wallpapers/Curls_on_Green/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Media_Life/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Red_Leaf/metadata.desktop
M wallpapers/Spring_Sunray/metadata.desktop
M wallpapers/The_Rings_of_Saturn/metadata.desktop
M wallpapers/There_is_Rain_on_the_Table/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1040506
The following changes were in SVN, but were removed from git:
M wallpapers/Evening/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1024781
The following changes were in SVN, but were removed from git:
M wallpapers/Aghi/metadata.desktop
M wallpapers/Air/metadata.desktop
M wallpapers/Atra_Dot/metadata.desktop
M wallpapers/Code_Poets_Dream/metadata.desktop
M wallpapers/Curls_on_Green/metadata.desktop
M wallpapers/EOS/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Red_Leaf/metadata.desktop
M wallpapers/Spring_Sunray/metadata.desktop
M wallpapers/The_Rings_of_Saturn/metadata.desktop
M wallpapers/There_is_Rain_on_the_Table/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1014621
The following changes were in SVN, but were removed from git:
M wallpapers/Air/metadata.desktop
M wallpapers/Code_Poets_Dream/metadata.desktop
M wallpapers/Curls_on_Green/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Red_Leaf/metadata.desktop
M wallpapers/The_Rings_of_Saturn/metadata.desktop
M wallpapers/There_is_Rain_on_the_Table/metadata.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=1011290
The following changes were in SVN, but were removed from git:
M wallpapers/Air/metadata.desktop
M wallpapers/Code_Poets_Dream/metadata.desktop
M wallpapers/Curls_on_Green/metadata.desktop
M wallpapers/Evening/metadata.desktop
M wallpapers/Fields_of_Peace/metadata.desktop
M wallpapers/Finally_Summer_in_Germany/metadata.desktop
M wallpapers/Fresh_Morning/metadata.desktop
M wallpapers/Plasmalicious/metadata.desktop
M wallpapers/Red_Leaf/metadata.desktop
M wallpapers/There_is_Rain_on_the_Table/metadata.desktop