diff options
| author | louis <louis.braun@gmx.de> | 2016-07-30 18:22:57 +0200 |
|---|---|---|
| committer | louis <louis.braun@gmx.de> | 2016-07-30 18:22:57 +0200 |
| commit | a2f9e616ee125650dace9653855081a6e2a16507 (patch) | |
| tree | 03d70b0c15e1c0b18063a2fd92d990906c85d328 /coreengine | |
| parent | 88982c3230e0ce91ce343ca2747ce246c3ea795f (diff) | |
| download | vdr-plugin-skindesigner-a2f9e616ee125650dace9653855081a6e2a16507.tar.gz vdr-plugin-skindesigner-a2f9e616ee125650dace9653855081a6e2a16507.tar.bz2 | |
fixed shiftout of viewelements which were not drawn at shiftin
Diffstat (limited to 'coreengine')
| -rw-r--r-- | coreengine/animation.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/coreengine/animation.c b/coreengine/animation.c index 65fb587..558f386 100644 --- a/coreengine/animation.c +++ b/coreengine/animation.c @@ -328,8 +328,13 @@ void cShifter::Init(void) { stepYFast = (float)(end.Y() - start.Y()) * distanceFast / 100.0f / (float)stepsFast; stepYSlow = (float)(end.Y() - start.Y()) * (100.0f - distanceFast) / 100.0f / (float)(steps-stepsFast); } - x = start.X(); - y = start.Y(); + if (shiftin) { + x = start.X(); + y = start.Y(); + } else { + x = end.X(); + y = end.Y(); + } } void cShifter::Reactivate(void) { @@ -337,6 +342,9 @@ void cShifter::Reactivate(void) { finished = false; shiftin = false; step = 0; + if (start.X() == 0 && start.Y() == 0 && end.X() == 0 && end.Y() == 0) { + Init(); + } } void cShifter::SetInitial(void) { |
