On Sun, 2006-07-23 at 13:14 -0600, Tom Tromey wrote: > This seems pretty reasonable to me. > > How is the splash screen taken down? Do we need another native > function for that? Right, forgot that. Or rather, I was thinking we could close the window. However, there's one point I forgot about which is that the splash-screen displayer will need its own GUI thread. My current thinking here is that the load_splashscreen methods shouldn't return until the splash is taken down, since VM devs might have their own ideas on how they want to do threading. So my idea is to add a function: void cp_awt_splashscreen_shutdown() Which should cause the GUI thread to finish execution, and also free any data it might need, except the window and pixmap. This should be called by the AWT toolkit just before it starts its own GUI thread and resumes execution. The window and pixmap should be dealt with by the peers, who has the responsibility to destroy them. If the program doesn't use AWT, then the splashscreen will of course stay up perpetually, although I think that's probably the behaviour you'd expect. Since it's supposed to stay up until the first AWT window is opened, or until the user gets the splashscreen and closes it, an action which will activate the toolkit. > This type should probably be given a name starting with cp_. Yup. I'll post a revised prototype once I have a working one. /Sven