On 29 Mar 2003, Jason Hildebrand wrote: > On Sat, 2003-03-29 at 08:13, Martin Sevior wrote: > > > Can someone on the Nautilus or gnome-components-list tell how I should > > signal AbiWord that the Nautilus view has closed? Otherwise we have a > > Frame with attached timers left hanging limbo waiting for it's gdk window > > to go stale. > > I briefly investigated this a couple of weeks ago when playing with the Vim > control. I noticed that when I would click "Back" from viewing the Vim control, > Vim's menus and toolbar buttons would not go away, even though the Vim control > was long gone. > > It appears from the libbonoboui source that calling > bonobo_ui_component_unset_container() should do the trick, but I don't > know for sure. I attempted this within the control's destroy callback: > > uic = bonobo_control_get_ui_component (BONOBO_CONTROL (control)); > if( uic != CORBA_OBJECT_NIL ) > bonobo_ui_component_unset_container (uic, NULL); > > But it had no effect. Perhaps the "destroy" event is too late, anyways -- this > should be in "deactivate". However, a quick browse through the Nautilus code > revealed that Nautilus never calls bonobo_control_frame_control_deactivate(). > Perhaps it needs to call this to give the control a chance to unmerge and shut > down. >
I've tried overriding destroy functions in the abiwidget control and connecting to the "destroy" and "delete_event" events. Nothing ever seems to get called. Reading through the EOG code implies that merely overiding the destroy functions should work. But it didn't for me. I'll look into the nautilus-adapter code to see if there is some clue as to what signal it gives the control when it disconnects. Thanks for your help Jason. Martin
