Can reproduce on both X11 and Wayland sessions.
STEPS TO REPRODUCE
1. open Spectacle by pressing printscreen key
2. make sure 'Quit after manual Save or Copy' option is checked
3. save the screenshot (Spectacle closes and Plasma shows a notification)
4. open Spectacle again while the notification is visible
5. wait for the notification to disappear
Spectacle closes when the notification disappears
Spectacle remains open when the notification disappears
Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.24.80
KDE Frameworks Version: 5.91.0
Qt Version: 5.15.3
Graphics Platform: Wayland
A possibly relevant merge request was started @ https://invent.kde.org/graphics/spectacle/-/merge_requests/210
Git commit fc2d625144536b53e5f3e671341b4a5651857cf2 by Noah Davis.
Committed on 04/03/2023 at 18:24.
Pushed by ndavis into branch 'master'.
Use QEventLoopLocker to keep Spectacle alive for notifications
Stopped using setQuitOnLastWindowClosed(false) because setting it true
or false depending on the situation was too complex. Now we just create
a QEventLoopLocker when we make a notification and destroy the event
loop locker, which also automatically quits the application, when the
notification is destroyed. To close the windows, we use
SpectacleWindow::closeAll() instead of making them hidden. This
automatically closes Spectacle when the QEventLoopLocker has not been
Related: bug 466143
M +12 -8 src/Gui/SpectacleWindow.cpp
M +5 -0 src/Gui/SpectacleWindow.h
M +6 -17 src/SpectacleCore.cpp
M +1 -0 src/SpectacleCore.h