GNOME Bugzilla – Bug 122334
Use of GIF file for "loading tab" icon
Last modified: 2004-12-22 21:47:04 UTC
Galeon (and also Epiphany) distribute a GIF file named galeon-tab-loading.gif and epiphany-tab-loading.png respectively. While the patent on the LZW algorithm has expired in the USA, it is still in force in Europe and Japan. The GNU Project (and GNOME by extension) has a policy on the use of GIF files (at http://www.gnu.org/philosophy/gif.html). The policy is: don't. The simplest solution would be to replace the GIF file with another animated file format, such as MNG. However my understanding is that GdkPixbuf does not currently support MNG files. I have spoken with Sven Neumann and it seems that this is the case. Mozilla does support MNG, however. Another solution would be to use a series of .PNG files in the same way as the old Galeon 1.2 spinner themes, or to have a series of frames in a single image like a roll of photographic negatives. But then you need to do some nasty stuff with timeouts in order to get the animation working. I've created some sample files at: http://jodrell.net/files/tab-loading.png and http://jodrell.net/files/tab-loading.mng that you might find useful.
> The policy is: don't. Actually that is not quite right: "Decoding GIFs is a different issue. The Unisys and IBM patents are both written in such a way that they do not apply to a program which can only uncompress LZW format and cannot compress. Therefore we can and will include support for displaying GIF files in GNU software." This basically says it is fine to display GIF's, the patent only covers the compression algorithm, therefore I don't see the problem.
The very next paragraph is: "Given this situation, we could still include GIF files in our web pages if we wanted to. Many other people would be happy to generate them for us, and we would not be sued for having GIF files on our server. But we feel that if we can't distribute the software to enable people to generate GIF files properly, then we should not have other people run such software for us. Besides, if we can't provide software in GNU to generate GIF files, we have to recommend an alternative. We ourselves should use the alternative that we recommend." I don't really want to get into a philosophical debate, but I do think that by using a GIF image in Galeon we're condoning the use of software patents. Anyway, I think GIF is an obsolete technology anyway :) If we switched to a PNG based format then that opens up lots of cool things like alpha blending. And users could drop in their own sexy animation.
> Anyway, I think GIF is an obsolete technology anyway Really? Show me another widely supported format that implements animated images, and BTW mozilla doesn't: http://bugzilla.mozilla.org/show_bug.cgi?id=18574 Doing anything other than removing the LZW compression is IMO hacking around the limitations of the gtk toolkit.
Forgive me. MNG is supported by my Mozilla: http://jodrell.net/files/mng-working-in-mozilla.png MNG support was once part of Mozilla but was disabled. But I think Ximian enabled it in their distribution. I'm not suggesting for a second that Gtk+ should remove support for GIF. I agree with the GNU page that we should support GIF images, since GIF *readers* are not patent-encumbered, but I also agree that "if we can't provide software in GNU [or GNOME] to generate GIF files, we have to recommend an alternative. We ourselves should use the alternative that we recommend." All I'm suggesting is that we find a way to display the "tab loading" animation in a way that doesn't require a GIF file.
In an ideal world we wouldn't use a gif, but there are few factors that mean we arn't going to fix this: 1) We aren't actually breaking any patents 2) It makes no sense to spend a lot of time working around gtk's problems (the fact it can't load mng files) 3) The GNU page talks a lot about the alternatives, but the arn't any suitable for this case. (also Galeon is not part of the official Gnome desktop, epiphany on the other hand is, so if you can persuade them to change their image then we may follow)
I do not consider this an epiphany bug. If gtk provide only gif support for animation, then the problem need to be solved in gtk. I dont think there are patent issue anymore, gif sucks but mng has a lot of problems too (from what gtk people say). Basically, feel free to submit a bug to gtk about support a better format, once that's done we will certainly use it.