Bug 306263 - Animations in Translucency Effect are not working
Summary: Animations in Translucency Effect are not working
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: effects-various (show other bugs)
Version: 4.9.1
Platform: unspecified Linux
: NOR normal
Target Milestone: 4.9.2
Assignee: KWin default assignee
URL: https://git.reviewboard.kde.org/r/106...
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-04 19:31 UTC by Martin Flöser
Modified: 2012-09-07 05:40 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In: 4.9.2
Sentry Crash Report:
mgraesslin: ReviewRequest+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Flöser 2012-09-04 19:31:06 UTC
There is supposed to be a timeline animation when a window starts/end move resize mode or goes to inactive. But those are not working.

The reason is quite simple: the time is added in the prePaintWindow call and not in the prePaintScreen which means the effect reaches the state already in the first or second frame (which might explain the huge default duration of 800 msec).
Comment 1 Thomas Lübking 2012-09-04 19:41:20 UTC
Also see bug #306262
Comment 2 Martin Flöser 2012-09-07 05:40:21 UTC
Git commit e2af7a52edbaf14746300a113c88c24bbcd7112f by Martin Gräßlin.
Committed on 05/09/2012 at 21:35.
Pushed by graesslin into branch 'KDE/4.9'.

Remove animations from Translucency effect

The effect should have had two animations:
* on move resize
* on active/inactive change

But the timeline was adjusted in the prePaintWindow call and the timeline
is effect global and not per window. Which means that for each window the
same time is added. So instead of adding time t each frame t*n with n
being the number of windows got added. So in most cases the animation
ended in the first or second frame which means its not visible.

Through git blame I was able to track down that this incorrect behavior
was introduced in 2008. An animation broken for more than four years
without anybody noticing is probably not required. Because of that it's
dropped from the effect. As this includes quite some code and performance
improvements it goes into the release branch.

A better solution could be implemented, but that should be for 4.10.
FIXED-IN: 4.9.2
REVIEW: 106335

M  +6    -50   kwin/effects/translucency/translucency.cpp
M  +0    -14   kwin/effects/translucency/translucency.h
M  +0    -5    kwin/effects/translucency/translucency_config.cpp
M  +225  -264  kwin/effects/translucency/translucency_config.ui

http://commits.kde.org/kde-workspace/e2af7a52edbaf14746300a113c88c24bbcd7112f