On Tue, 2008-01-29 at 08:27 +0000, Ross Burton wrote: > On Mon, 2008-01-28 at 19:13 -0500, Kashyap Ashwin wrote: > > In the above program, if I call clutter.main(), telepathy simply > > refuses to run. > > > > My theory is that both clutter.main() and gobject.MainLoop() > > eventually get a new gobject main loop, but the path is different. I > > have a feeling this is somehow due to some ugly Python problem, but if > > you have a clue on why this happens, please let me know. > > The clutter loop is a glib main loop, yes. Try removing clutter.main() > and just using a gobject main loop. I'm not exactly an expert in the > clutter main loop details (hopefully Emmanuele will reply too) but that > might work.
yes: you just spin a main loop, and it will "just work"(tm). if you are not running the clutter main loop, though, but you are still controlling the stage with clutter (that is: you are not embedding the stage window inside another windowing environment like gtk+) then you will have to intercept the CLUTTER_DELETE event (using a handler for the ::event or the ::captured-event signals), stop *your* main loop there and return True - otherwise clutter will assume that its main loop is the one that's spinning, and will try and stop it, causing an assertion failure (this is done as a sanity check). this is also the case when running another main loop implementation with GMainLoop support, like POE in Perl and twisted in Python. caveat: this happens with clutter trunk, not with the stable branch; in the stable branch you cannot do that and you either embed clutter inside gtk+ and spin the gtk+ main loop, or you simply don't use another main loop. in any case: why isn't telepathy able to use the current main loop? I guess d-bus can use the gtk+ main loop, so I don't understand why it shouldn't be working with clutter's main loop as well. ciao, Emmanuele. -- Emmanuele Bassi, OpenedHand Ltd. Unit R, Homesdale Business Centre 216-218 Homesdale Rd., Bromley - BR12QZ http://www.o-hand.com -- To unsubscribe send a mail to [EMAIL PROTECTED]
