Refactor Spectacle to run in single instance mode with KDBusService::Unique
Summary: Since Spectacle got DBus activation support in 09cd1188, it has been run in multiple instance mode. But it has been shaddowed by using qbus ee862d16 in the desktop file to mimic singleton behavior. This refactors Spectacle to run in true single instance mode using KDBusService::Unique. This is to allow Spectacle to have its executable in its Exec desktop Entry, to allow KWin to match the executable to the service file, itself to allow screenshots under Wayland without intermediate click. The listed bugs are fixed incidently except for 414739 where a simple fix was added in screenShotUpdated. BUG: 420477 BUG: 414739 CCBUG: 412186 Test Plan: Start spectacle, alternatively, from shortcut, command line. Take screenshots, from alternative ways. There is always at most one Spectacle window unless launched with `--new-instance`. Reviewers: davidre, ngraham, bport, davidedmundson, apol Reviewed By: davidre Subscribers: broulik, anthonyfieroni, #spectacle Tags: #spectacle Differential Revision: https://phabricator.kde.org/D29487
Loading