diff --git a/clients/oxygen/oxygenclient.cpp b/clients/oxygen/oxygenclient.cpp index a323df96b6..a2dd30ed4f 100644 --- a/clients/oxygen/oxygenclient.cpp +++ b/clients/oxygen/oxygenclient.cpp @@ -174,7 +174,7 @@ namespace Oxygen glowAnimation().data()->setDuration( configuration_.animationsDuration() ); titleAnimationData_.data()->setDuration( configuration_.animationsDuration() ); itemData_.animation().data()->setDuration( configuration_.animationsDuration() ); - itemData_.setAnimationsEnabled( configuration_.useAnimations() ); + itemData_.setAnimationsEnabled( useAnimations() ); // reset title transitions titleAnimationData_.data()->reset(); diff --git a/clients/oxygen/oxygenclient.h b/clients/oxygen/oxygenclient.h index 7636392784..6ad9b211d6 100644 --- a/clients/oxygen/oxygenclient.h +++ b/clients/oxygen/oxygenclient.h @@ -36,8 +36,10 @@ #include "lib/helper.h" #include -#include -#include +#include +#include +#include + namespace Oxygen { @@ -76,6 +78,16 @@ namespace Oxygen virtual bool isMaximized( void ) const { return maximizeMode()==MaximizeFull && !options()->moveResizeMaximizedWindows(); } + + //! true if animations are used + /*! this combines OxygenConfiguration and KGlobalSettings */ + bool useAnimations( void ) const + { + return + configuration().useAnimations() && + KGlobalSettings::graphicEffectsLevel() >= KGlobalSettings::SimpleAnimationEffects; + } + //! true if glow is animated bool glowIsAnimated( void ) const { return glowAnimation_.data()->isRunning(); } @@ -289,13 +301,13 @@ namespace Oxygen //! return true when activity change are animated bool animateActiveChange( void ) const - { return ( configuration().useAnimations() && !isPreview() ); } + { return ( useAnimations() && !isPreview() ); } //! return true when activity change are animated bool animateTitleChange( void ) const { return - configuration().useAnimations() && + useAnimations() && configuration().animateTitleChange() && !configuration().drawTitleOutline() && !configuration().hideTitleBar() &&