summaryrefslogtreecommitdiff
path: root/coreengine/view.c
diff options
context:
space:
mode:
Diffstat (limited to 'coreengine/view.c')
-rw-r--r--coreengine/view.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/coreengine/view.c b/coreengine/view.c
index 48cded7..ae7cee5 100644
--- a/coreengine/view.c
+++ b/coreengine/view.c
@@ -160,8 +160,6 @@ void cView::PreCache(void) {
for (int i=0; i < numViewElements; i++) {
if (!viewElements[i])
continue;
- if (FadeTime() > 0 || ShiftTime() > 0)
- viewElements[i]->SetAnimatedView();
viewElements[i]->SetContainer(contX, contY, attribs->Width(), attribs->Height());
viewElements[i]->Cache();
}
@@ -169,8 +167,6 @@ void cView::PreCache(void) {
for (int i=0; i < numViewElements; i++) {
if (!viewElementsHorizontal[i])
continue;
- if (FadeTime() > 0 || ShiftTime() > 0)
- viewElementsHorizontal[i]->SetAnimatedView();
viewElementsHorizontal[i]->SetContainer(contX, contY, attribs->Width(), attribs->Height());
viewElementsHorizontal[i]->Cache();
}
@@ -278,7 +274,15 @@ void cView::SetPosition(cPoint &position, cPoint &reference, bool force) {
}
}
-void cView::Flush(void) {
+void cView::RegisterAnimation(void) {
+ sdOsd.AddAnimation();
+}
+
+void cView::UnregisterAnimation(void) {
+ sdOsd.RemoveAnimation();
+}
+
+void cView::Flush(bool animFlush) {
if (init) {
init = false;
StartAnimation();
@@ -292,7 +296,10 @@ void cView::Flush(void) {
WakeViewElements();
menuInit = false;
}
- sdOsd.Flush();
+ if (animFlush)
+ sdOsd.AnimatedFlush();
+ else
+ sdOsd.Flush();
}
void cView::Debug(void) {