Instead of having a bunch of handlers in various places messing with various settings, try to use declarative bindings where possible.
- Remove separate passive timer, instead re-use the pendingDelegateRemoval property which has its own timer. This way, when a device is unmounted, device notifier stays active until the notification has cleared, however, when the device is yanked out manually, it disappears right away
- Don't break binding on Plasmoid.active to ensure its state is always proper depending on whether a device or not is present (the linked bug)
- Create tooltip declaratively rather than imperatively
BUG: 362992
FIXED-IN: 5.7.0