guard against plasmashell being properly dead and not showing the SNI
Summary:
when plasmashell is particularly dead and not even able to restart, the SNI
host may still be around when we check for it in the main.cpp as its
disappearance from dbus is tied to sockets closing and dbus' event loop
reacting to that. so there is a race potential that can cause the SNI
to not actually be visible on account of the SNI host (plasmashell)
being dead even though we expected SNI support to be available.
guard against this scenario by starting an automatic activation timer
when the notification service disappears. should it not reappear within
10 second we consider it dead and show the dialog automatically as the
user won't be seeing the SNI anymore
Possibly fixing
CCBUG: 383863
Test Plan:
- crash something so the sni appears
- kill plasma
- wait 10s
- dialog appears
- same again
- restart plasma before 10s have passed
- sni appears again in plasmashell
Reviewers: Plasma
Subscribers: davidedmundson, plasma-devel
Tags: Plasma
Differential Revision: https://phabricator.kde.org/D22553