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.
First a signal is emitted when the user starts a move/resize operation.
During the move/resize operation each geometry change emits an update signal.
Last but not least a finish signal is emitted.
This eliminates the specific method for geometry updates in drawbound resize
mode.
The first signal used between EffectsHandler and Effects.
The signal is actually emitted by the EffectsHandlerImpl and only
the interested effects connect to this signal.
EffectsHandlerImpl itself is also notified by a signal from Workspace,
allowing to remove one of the many if (effects) checks.
Currently working:
* cube slide
* basic cube
* rotations
* reflections
Not working:
* Cube Inside effects
* Reflection plane (needs to be done in a shader)
* cube caps
* sphere/cylinder
* filled in areas in multi desktop
Used in cube animation for all sticky windows and in desktop grid for the add/remove desktops window.
svn path=/trunk/KDE/kdebase/workspace/; revision=1137489
The cube starts to rotate before the desktop switches due to active desktop border change. This gives the impression that you drag the cube by moving the window. Of course option is only useful when switching desktop on screen edge is enabled and so this feature is disabled by default.
svn path=/trunk/KDE/kdebase/workspace/; revision=1072640
That's a small hack to get the desktop switch on screen display to not rotate and by that useable when cube is used.
svn path=/trunk/KDE/kdebase/workspace/; revision=1034981
all code that used calcDesktopLayout() so the function could be removed.
Minor changes to the DesktopLayout class itself.
svn path=/trunk/KDE/kdebase/workspace/; revision=925930