<div dir="ltr">On 3 August 2013 02:26, Manuel Quiñones <span dir="ltr"><<a href="mailto:manuq@laptop.org" target="_blank">manuq@laptop.org</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
The problem is: how could the activity process wait for the datastore<br>
write to finish?  If the WnckWindow close is called [1], the activity<br>
process ends.  Unless you connect a callback to 'delete-event' [2] and<br>
handle the destroy() yourself [3] .  Which is what GTK activities do<br>
to store before closing.<br></blockquote><div><br></div><div>The shell currently does<br><br></div><div>activity.get_window().close()<br><br></div><div>We could<br></div><div><br>1 Add a close method to Activity directly. That would emit a close signal and call get_window().close() only if the signal didn't return True.<br>
2 Apisocket would connect to that signal, send the stop notification to the web activity and return True.<br></div><div>3 On stop the activity would first save state, then call activity.close().<br><br></div><div>I think it would be possible to implement something like delete-event too, but the implementation would be slightly more complicated (close becomes async). And anyway, API wise, just letting the activity close() itself seems cleaner to me.<br>
</div></div></div></div>