Fix more "user after destroy" problems
Created by: rhertzog
Explicitly drop our widget from the panel before destroying it
to ensure that nobody is using it when we are calling destroy()
on it.
Drop the calls to Main.panel.menuManager.removeMenu()
and
this.panelWidget.actor.destroy
as they both happen already
automatically when we destroy our panelWidget. And since we did
not reset this.panelWidget.actor
to null, it would try to
access it to call destroy()
on it.
Move the GLib.source_remove()
call in the same file as
its counterparts GLib.timeout_add_seconds()
call for better
encapsulation of the logic.