SUMMARY After making a video capture, if we click on the video recording link to open it with the default video player, if that player runs in Wayland mode, it opens without window management (no window controls, menus taking all the screen except the taskbar, impossible to minimize the video player). STEPS TO REPRODUCE 1. Set Haruna (or any Wayland-enabled video player) as default video player 2. Make sure to use a Wayland session. 3. Take a screen video capture with Spectacle 4. Click the link in Spectacle to open the screen recording OBSERVED RESULT The Wayland video player opens without a window titlebar. It's impossible to minimize the video player. EXPECTED RESULT The Wayland video player opens normally. SOFTWARE/OS VERSIONS Linux/KDE Plasma: KDE Plasma Version: 6.3.5 KDE Frameworks Version: 6.15.0 Qt Version: 6.9.1 ADDITIONAL INFORMATION This isn't Haruna specific and most likely isn't Spectacle specific.
When taking a screenshot and trying to open the file from Spectacle with ShowFoto, I get the same result. With XnView, it doesn't open. Log file entries: xnviewmp[4146927]: qt.qpa.wayland: No shell integration named "layer-shell" found xnviewmp[4146927]: qt.qpa.wayland: Loading shell integration failed. xnviewmp[4146927]: qt.qpa.wayland: Attempted to load the following shells ("layer-shell")
I can reliably reproduce this with Dragon Player. Operating System: Fedora Linux 42 KDE Plasma Version: 6.4.2 KDE Frameworks Version: 6.15.0 Qt Version: 6.9.1 Kernel Version: 6.15.4-200.fc42.x86_64 (64-bit) Graphics Platform: Wayland Processors: 8 × AMD Ryzen 7 PRO 3700U w/ Radeon Vega Mobile Gfx Memory: 16 GiB of RAM (13.5 GiB usable) Graphics Processor: AMD Radeon Vega 10 Graphics Manufacturer: LENOVO Product Name: 20NKS52L02 System Version: ThinkPad T495
A possibly relevant merge request was started @ https://invent.kde.org/plasma/spectacle/-/merge_requests/466
Git commit 4044ed8af9fa196cdda7aea1ef6f03e83dafe3fb by Nicolas Fella. Committed on 06/07/2025 at 12:00. Pushed by nicolasfella into branch 'master'. Don't use LayerShellQt::useLayerShell() This sets the QT_WAYLAND_SHELL_INTEGRATION environment variable to layer-shell. This propagates to all apps launched from Spectacle, for example when opening a recorded video. If the app uses Qt it will be severely broken. M +0 -4 src/SpectacleCore.cpp https://invent.kde.org/plasma/spectacle/-/commit/4044ed8af9fa196cdda7aea1ef6f03e83dafe3fb
Git commit e9125cf697d4aa4a53a271c6ce19b6b5b74f9d20 by Nicolas Fella. Committed on 06/07/2025 at 12:36. Pushed by nicolasfella into branch 'Plasma/6.4'. Don't use LayerShellQt::useLayerShell() This sets the QT_WAYLAND_SHELL_INTEGRATION environment variable to layer-shell. This propagates to all apps launched from Spectacle, for example when opening a recorded video. If the app uses Qt it will be severely broken. (cherry picked from commit 4044ed8af9fa196cdda7aea1ef6f03e83dafe3fb) M +0 -4 src/SpectacleCore.cpp https://invent.kde.org/plasma/spectacle/-/commit/e9125cf697d4aa4a53a271c6ce19b6b5b74f9d20