summaryrefslogtreecommitdiff
path: root/coreengine
diff options
context:
space:
mode:
Diffstat (limited to 'coreengine')
-rw-r--r--coreengine/animation.c7
-rw-r--r--coreengine/viewelement.c3
2 files changed, 6 insertions, 4 deletions
diff --git a/coreengine/animation.c b/coreengine/animation.c
index aea51a6..2e703ee 100644
--- a/coreengine/animation.c
+++ b/coreengine/animation.c
@@ -198,11 +198,12 @@ void cAnimation::Scroll(void) {
void cAnimation::Detach(void) {
if (waitOnWakeup) {
Wait();
- int delay = 100 + detachable->Delay();
- Sleep(delay);
+ int delay = 50 + detachable->Delay();
+ Sleep(delay);
} else {
int delay = detachable->Delay();
- Sleep(delay);
+ if (delay > 0)
+ Sleep(delay);
}
if (!Running()) return;
detachable->ParseDetached();
diff --git a/coreengine/viewelement.c b/coreengine/viewelement.c
index 4759b60..69377d0 100644
--- a/coreengine/viewelement.c
+++ b/coreengine/viewelement.c
@@ -463,7 +463,8 @@ bool cViewElement::Parse(bool forced) {
return true;
}
delete detacher;
- detacher = new cAnimation((cDetachable*)this, waitOnWakeup, startAnimation);
+ bool isAnimated = (FadeTime() > 0) || (ShiftTime() > 0);
+ detacher = new cAnimation((cDetachable*)this, waitOnWakeup, startAnimation && isAnimated);
detacher->Start();
startAnimation = false;
init = false;