summaryrefslogtreecommitdiff
path: root/slideshow
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-03-08 10:04:17 +0000
committerCaolán McNamara <caolanm@redhat.com>2017-03-08 11:37:12 +0000
commit57b8a0c3178a0899f5a607e275b5ef8d7c986255 (patch)
treec9847168aef9e0fed6f3af1e6963ab1099f51877 /slideshow
parent01bf741a79241829b0d5c048e8f45e3cf6914d3e (diff)
show the last gif frame when the animation ends
Change-Id: I240d0a46cff905edababbd13fe7e58c9e4d0f0db
Diffstat (limited to 'slideshow')
-rw-r--r--slideshow/source/engine/shapes/intrinsicanimationactivity.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/slideshow/source/engine/shapes/intrinsicanimationactivity.cxx b/slideshow/source/engine/shapes/intrinsicanimationactivity.cxx
index e44f8320fbb3..15aca7471c0f 100644
--- a/slideshow/source/engine/shapes/intrinsicanimationactivity.cxx
+++ b/slideshow/source/engine/shapes/intrinsicanimationactivity.cxx
@@ -173,12 +173,16 @@ namespace slideshow
return false;
}
+ const ::std::size_t nNumFrames(maTimeouts.size());
+
// mnNumLoops == 0 means infinite looping
if( mnNumLoops != 0 &&
mnLoopCount >= mnNumLoops )
{
- // #i55294# After finishing the loops, display the first frame
- pDrawShape->setIntrinsicAnimationFrame( 0 );
+ // #i55294# After finishing the loops, display the last frame
+ // powerpoint 2013 and firefox etc show the last frame when
+ // the animation ends
+ pDrawShape->setIntrinsicAnimationFrame(nNumFrames - 1);
maContext.mpSubsettableShapeManager->notifyShapeUpdate( pDrawShape );
end();
@@ -187,7 +191,6 @@ namespace slideshow
}
::std::size_t nNewIndex = 0;
- const ::std::size_t nNumFrames(maTimeouts.size());
pDrawShape->setIntrinsicAnimationFrame( mnCurrIndex );