
Calling Mainloop.source_remove() on the timeout ID will not reset it, and we're already removing the timeout by returning GLib.SOURCE_REMOVE in the callback.
Calling Mainloop.source_remove() on the timeout ID will not reset it, and we're already removing the timeout by returning GLib.SOURCE_REMOVE in the callback.