diff options
author | louis <louis.braun@gmx.de> | 2016-05-27 12:13:39 +0200 |
---|---|---|
committer | louis <louis.braun@gmx.de> | 2016-05-27 12:13:39 +0200 |
commit | ed8273883ec9066f6ac8867e54895656b983c9dd (patch) | |
tree | c78936ccbb0d36555dbbdade6baa345783c79855 | |
parent | aa8370363abde2ee024d1023a948b528dc512985 (diff) | |
download | vdr-plugin-skindesigner-ed8273883ec9066f6ac8867e54895656b983c9dd.tar.gz vdr-plugin-skindesigner-ed8273883ec9066f6ac8867e54895656b983c9dd.tar.bz2 |
fixed ending of animations
-rw-r--r-- | coreengine/animation.c | 6 | ||||
-rw-r--r-- | coreengine/viewelement.c | 20 | ||||
-rw-r--r-- | coreengine/viewelement.h | 1 |
3 files changed, 14 insertions, 13 deletions
diff --git a/coreengine/animation.c b/coreengine/animation.c index a477eaf..be9b95f 100644 --- a/coreengine/animation.c +++ b/coreengine/animation.c @@ -224,11 +224,11 @@ void cAnimation::Detach(void) { if (delay > 0) Sleep(delay); } - if (!Running()) return; + //if (!Running()) return; detachable->ParseDetached(); - if (!Running()) return; + //if (!Running()) return; detachable->RenderDetached(); - if (!Running()) return; + //if (!Running()) return; if (!doAnimation) detachable->Flush(false); if (!Running()) return; diff --git a/coreengine/viewelement.c b/coreengine/viewelement.c index eaa9814..89fb69d 100644 --- a/coreengine/viewelement.c +++ b/coreengine/viewelement.c @@ -299,10 +299,7 @@ void cViewElement::Clear(bool forceClearBackground) { } void cViewElement::Hide(void) { - delete shifter; - shifter = NULL; - delete fader; - fader = NULL; + StopAnimation(); for (cAreaNode *node = areaNodes.First(); node; node = areaNodes.Next(node)) { sdOsd->Lock(); node->Hide(); @@ -328,12 +325,7 @@ void cViewElement::WakeUp(void) { } void cViewElement::Close(void) { - delete detacher; - detacher = NULL; - delete fader; - fader = NULL; - delete shifter; - shifter = NULL; + StopAnimation(); StopScrolling(); for (cAreaNode *node = areaNodes.First(); node; node = areaNodes.Next(node)) { node->StopBlinkers(); @@ -581,3 +573,11 @@ cPoint cViewElement::ShiftStart(cRect &shiftbox) { return start; } +void cViewElement::StopAnimation(void) { + delete detacher; + detacher = NULL; + delete shifter; + shifter = NULL; + delete fader; + fader = NULL; +}
\ No newline at end of file diff --git a/coreengine/viewelement.h b/coreengine/viewelement.h index fb5e7dd..fa7c4cc 100644 --- a/coreengine/viewelement.h +++ b/coreengine/viewelement.h @@ -43,6 +43,7 @@ protected: void InheritTokenContainerDeep(void); virtual bool DoScroll(void) { return true; }; cPoint ShiftStart(cRect &shiftbox); + void StopAnimation(void); public: cViewElement(void); cViewElement(const cViewElement &other); |