The Java 1.1 imaging APIs were designed to be asynchronous, for loading images over slow networks. The design is very complicated and hard to implement. In 1.2 BufferedImages seem to have replaced Images. So, for example, Component.createImage() is declared to return an Image, but actually returns a BufferedImage. This makes the APIs synchronous -- which should make them much simpler to implement.
We should do the same in our AWT implementation. This will involve the following: - removing all uses of ImageObserver, except when reporting errors in image loading, and when reporting a new frame in animated gifs - replacing GtkImage with BufferedImage - merging GtkImagePainter into GdkGraphics2D - making the switch to using GdkGraphics2D exclusively -- Summary: Image APIs should use BufferedImage exclusively Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: AWT AssignedTo: fitzsim at redhat dot com ReportedBy: fitzsim at redhat dot com CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20630