Subject: bug#6981: create-animated-image doesn't animate

From: Jason Rumney <[email-masked]>
Date: Mon, 06 Sep 2010 22:11:22 +0800

Juri Linkov <[email-masked]> writes:

> When looking at the attached animated image closer/farther to/from the screen,
> the face appears/disappears.  When looking with/without glasses, the face
> appears/disappears.  But when looking at it in Emacs, nothing changes.

Note the following limitation mentioned in the comment in image.c:

  /* Clear the part of the screen image that are not covered by
     the image from the GIF file.  Full animated GIF support
     requires more than can be done here (see the gif89 spec,
     disposal methods).  Let's simply assume that the part
     not covered by a sub-image is in the frame's background color.  */

The following seems to show the image animation with this limitation
(the black bars of the first frame disappear rather than remaining in
the transparent background of following frames):

(setq img (create-animated-image "~/oii.gif"))
(insert-image img)
(image-animate-start img)

The last line seems to be neccesary, even though create-animated-image
starts the animation itself. Other changes to the buffer contents seem
to stop the animation so that line needs to be evaluated again.