On Tue, Oct 10, 2006 at 06:30:05PM +0200, Hannes Mayr wrote: > Hannes Mayr wrote: > >strk wrote: > >> > >>IIRC some renderers needed the window to exist before they could be > >>created. I think cairo is one of these. > > > >The window and the renderer are created in the same function, so this > >shouldn't be a problem anymore. > > Ok, I take back my last statement... I found this nice comment in > Player.cpp where Gui::Init is called: > > // Initialize gui (we need argc/argv for this) > // note that this will also initialize the renderer > // which is *required* during movie loading > _gui->init(argc, &argv); > > Any comments on this if in the current code the renderer is still needed > during movie loading? IIRC some time ago there was a discussion about > render calls while parsing. Is this still up-to-date or were there some > changes in the meantime?
Unfortunately this is still an issue. We all hope Udo will help finally removing renderer calls during parsing by using an on-display caching mechanism. So far, the renderer is used to generate bitmap caches. > If it's absolute necessary to have the renderer created before the > parser starts it could be a solution to have an extra function to > retrieve the movie size, so the renderer and the gui already know about > the initial movie size. > > For example: > get_movie_size(&width,&height) > _gui->init(argc, &argv, width, height) > load_movie() This was the original implementation, but since we are usually getting the movie from a stream, it was simpler to avoid calls to that get_movie_info functions, which would have triggered a separate stream creation (that often mean an additional tcp socket + a zlib decompression) --strk; _______________________________________________ Gnash-dev mailing list Gnash-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnash-dev