SafeEyes
SafeEyes copied to clipboard
PluginManager: retry loading trayicon plugin when service is missing
Description
Fixes https://github.com/slgobinath/SafeEyes/issues/636.
This PR implements the retry logic mentioned there. When the trayicon plugin detects that there is no SNI DBus service running, it will retry after a few seconds. This circumvents issues where SafeEyes is started on autostart, before the SNI service is running.
If the SNI service is still not found after multiple retries, the plugin shows the dialog with the instructions, like before.
This PR is best reviewed commit by commit - the first commit implements some refactoring needed for the second one, but should not have functional changes.