Bug 500202 - Spectacle: Window Under Cursor, with a delay, sometimes does not present a cross-hair (cursor) – no shot, the Spectacle window does not reappear
Summary: Spectacle: Window Under Cursor, with a delay, sometimes does not present a cr...
Status: REPORTED
Alias: None
Product: Spectacle
Classification: Applications
Component: General (other bugs)
Version First Reported In: 24.12.2
Platform: Other FreeBSD
: NOR minor
Target Milestone: ---
Assignee: Noah Davis
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2025-02-16 17:14 UTC by Graham Perrin
Modified: 2025-03-04 11:08 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Record of the upgrade session for boot environment 1500033-014-base-ports (78.21 KB, text/plain)
2025-02-28 18:31 UTC, Graham Perrin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Graham Perrin 2025-02-16 17:14:03 UTC
SUMMARY

If, for example, a VirtualBox guest window is in front when the countdown ends, then Spectacle will fail to take a shot. 

STEPS TO REPRODUCE

1. install VirtualBox, for example <https://www.freshports.org/emulators/virtualbox-ose-70/> 7.0.24

2. start a guest machine

3. run Spectacle, with the guest behind the Spectacle window

4. set a delay

5. click 'Window Under Cursor'

OBSERVED RESULT

6. in Task Manager, the countdown

EXPECTED RESULT

6. the countdown

7. a shot

SOFTWARE/OS VERSIONS

Operating System: FreeBSD 15.0
KDE Plasma Version: 6.2.5
KDE Frameworks Version: 6.10.0
Qt Version: 6.8.2
Kernel Version: 15.0-CURRENT (64-bit)
Graphics Platform: X11
Memory: 31.9 GiB of RAM
Graphics Processor: Quadro K1100M/PCIe/SSE2
Manufacturer: Hewlett-Packard
Product Name: HP ZBook 17 G2
System Version: A3009DD10203

grahamperrin:~ % pkg iinfo graphics/spectacle x11/kde$
spectacle-24.12.2_1
kde-6.2.5.24.12.2
grahamperrin:~ % freebsd-version -kru ; uname -aKU
15.0-CURRENT
15.0-CURRENT
15.0-CURRENT
FreeBSD mowa219-gjp4-zbook-freebsd 15.0-CURRENT FreeBSD 15.0-CURRENT main-n275472-c272abc5c6a7 GENERIC-NODEBUG amd64 1500032 1500032
grahamperrin:~ % pkg -v
2.0.6
grahamperrin:~ % pkg repos -el | sort -f
FreeBSD-base
FreeBSD-ports
local-current
grahamperrin:~ % pkg query '%o %v %At:%Av' spectacle
graphics/spectacle 24.12.2_1 FreeBSD_version:1500031
graphics/spectacle 24.12.2_1 build_timestamp:2025-02-13T08:41:09+0000
graphics/spectacle 24.12.2_1 built_by:poudriere-git-3.4.2
graphics/spectacle 24.12.2_1 port_checkout_unclean:no
graphics/spectacle 24.12.2_1 port_git_hash:2a21be70688
graphics/spectacle 24.12.2_1 ports_top_checkout_unclean:no
graphics/spectacle 24.12.2_1 ports_top_git_hash:9e15f4b0eb4
graphics/spectacle 24.12.2_1 repo_type:binary
graphics/spectacle 24.12.2_1 repository:FreeBSD-ports
grahamperrin:~ % pkg info spectacle
spectacle-24.12.2_1
Name           : spectacle
Version        : 24.12.2_1
Installed on   : Sat Feb 15 13:56:12 2025 GMT
Origin         : graphics/spectacle
Architecture   : FreeBSD:15:amd64
Prefix         : /usr/local
Categories     : kde-applications kde graphics
Licenses       : LGPL20
Maintainer     : kde@FreeBSD.org
WWW            : https://projects.kde.org/projects/kde/kdegraphics/spectacle
Comment        : KDE screen capture program
Options        :
        DOCS           : on
        PIPEWIRE       : on
Shared Libs required:
        libxkbcommon.so.0
        libxcb.so.1
        libxcb-xfixes.so.0
        libxcb-util.so.1
        libxcb-shm.so.0
        libxcb-shape.so.0
        libxcb-render.so.0
        libxcb-randr.so.0
        libxcb-image.so.0
        libxcb-cursor.so.0
        libwayland-cursor.so.0
        libwayland-client.so.0
        libthr.so.3
        libopencv_imgproc.so.409
        libopencv_core.so.409
        libm.so.5
        libgcc_s.so.1
        libcxxrt.so.1
        libc.so.7
        libc++.so.1
        libX11.so.6
        libQt6Xml.so.6
        libQt6Widgets.so.6
        libQt6WaylandClient.so.6
        libQt6QuickTemplates2.so.6
        libQt6QuickControls2.so.6
        libQt6Quick.so.6
        libQt6QmlWorkerScript.so.6
        libQt6QmlModels.so.6
        libQt6QmlMeta.so.6
        libQt6Qml.so.6
        libQt6PrintSupport.so.6
        libQt6OpenGL.so.6
        libQt6Network.so.6
        libQt6Multimedia.so.6
        libQt6Gui.so.6
        libQt6DBus.so.6
        libQt6Core.so.6
        libQt6Concurrent.so.6
        libOpenGL.so.0
        libLayerShellQtInterface.so.6
        libKirigamiPlatform.so.6
        libKPipeWireRecord.so.6
        libKPipeWire.so.6
        libKF6XmlGui.so.6
        libKF6WindowSystem.so.6
        libKF6WidgetsAddons.so.6
        libKF6StatusNotifierItem.so.6
        libKF6Solid.so.6
        libKF6Service.so.6
        libKF6PurposeWidgets.so.6
        libKF6Purpose.so.6
        libKF6PrisonScanner.so.6
        libKF6Notifications.so.6
        libKF6KIOWidgets.so.6
        libKF6KIOGui.so.6
        libKF6KIOCore.so.6
        libKF6JobWidgets.so.6
        libKF6I18n.so.6
        libKF6GuiAddons.so.6
        libKF6GlobalAccel.so.6
        libKF6DBusAddons.so.6
        libKF6Crash.so.6
        libKF6CoreAddons.so.6
        libKF6ConfigWidgets.so.6
        libKF6ConfigGui.so.6
        libKF6ConfigCore.so.6
        libKF6Completion.so.6
        libKF6ColorScheme.so.6
        libGLX.so.0
Annotations    :
        FreeBSD_version: 1500031
        build_timestamp: 2025-02-13T08:41:09+0000
        built_by       : poudriere-git-3.4.2
        port_checkout_unclean: no
        port_git_hash  : 2a21be70688
        ports_top_checkout_unclean: no
        ports_top_git_hash: 9e15f4b0eb4
        repo_type      : binary
        repository     : FreeBSD-ports
Flat size      : 5.45MiB
Description    :
The new screenshot capture utility, replaces KSnapshot
grahamperrin:~ % 

ADDITIONAL INFORMATION

UX regression, compared to spectacle-23.08.5_2 (with kde5-5.27.11.23.08.5_2) on FreeBSD. 

Workarounds are possible, but can this be fixed in KDE?

Thanks
Comment 1 Graham Perrin 2025-02-21 05:30:55 UTC
In bug 495692 comment 1, on Wayland, it's noted that the context menu disappears once the timer runs out.

In this bug, testing with Kate and X.Org: 

- the context menu remains
- no shot is taken. 

As far as I can tell: 

- in both bugs, timeout is NOT followed by appearance of a cross-hair pointer plus an additional delay (awaiting a click)
- an earlier version of Spectacle did not involve the cross-hair and the requirement to click after the countdown. 

grahamperrin:~ % pkg iinfo kate spectacle ^xorg$
kate-24.12.2
spectacle-24.12.2_1
xorg-7.7_3
grahamperrin:~ % uname -aKU
FreeBSD mowa219-gjp4-zbook-freebsd 15.0-CURRENT FreeBSD 15.0-CURRENT main-n275524-8dc0889f56dd GENERIC-NODEBUG amd64 1500032 1500032
grahamperrin:~ %
Comment 2 Graham Perrin 2025-02-28 18:31:15 UTC
Created attachment 178977 [details]
Record of the upgrade session for boot environment 1500033-014-base-ports

Not reproducible following a pkg upgrade routine, part of which involved: 

- deinstallation of spectacle-24.12.2_1
- installation of plasma6-spectacle-6.3.1.2

<https://www.freshports.org/graphics/spectacle/#history>

<https://www.freshports.org/graphics/plasma6-spectacle/#history>

(In reply to Graham Perrin from comment #1)

> As far as I can tell: 
> 
> - in both bugs, timeout is NOT followed by appearance of a cross-hair
> pointer plus an additional delay (awaiting a click)
> - an earlier version of Spectacle did not involve the cross-hair and the
> requirement to click after the countdown. 

With plasma6-spectacle-6.3.1.2, no cross-hair or delay. No requirement to click after the countdown.
Comment 3 Graham Perrin 2025-03-01 00:45:50 UTC
<https://invent.kde.org/graphics/spectacle/-/commit/1f5ecda5b254af3fd8684e60da92e353abad5b3c> (2024-11-26) on Plasma/6.3 and other branches (tagged v6.2.90 v6.2.91 v6.3.1.2 v6.3.2 v6.3.2.1) is linked from two changelogs: 

<https://kde.org/announcements/changelogs/plasma/6/6.3.0-6.3.1/#spectacle>
<https://kde.org/announcements/changelogs/plasma/6/6.3.1-6.3.2/#spectacle>

> Rename Window Under Cursor mode on Wayland
> 
> On X11, Window Under Cursor is just the window you're hovered over.
> On Wayland with KWin (our only supported wayland platform), you actually 
> click on a window to select it.

Bug 483632, Linux, X11, keyword qt6, was RESOLVED INTENTIONAL on 2024-03-17: 

> Spectacle shortcut "Capture win under cursor" shows crosshair

When I reported this bug for the port to FreeBSD on X11, the version was somewhat later – 24.12.2. 

If this bug 500202 can be resolved, I'd like to pinpoint the fix (the commit); and be certain that appearance of the crosshair is no longer intentional on X11.
Comment 4 Noah Davis 2025-03-01 01:44:52 UTC
(In reply to Graham Perrin from comment #3)
> If this bug 500202 can be resolved, I'd like to pinpoint the fix (the
> commit); and be certain that appearance of the crosshair is no longer
> intentional on X11.

It is intentional, unless you're using the XCB platform backend. That one is only available if you force it via an environment variable or if you're not using KWin.
Comment 5 Noah Davis 2025-03-01 01:46:31 UTC
Which means I need to correct the logic for picking the UI text again.
Comment 6 Graham Perrin 2025-03-04 11:08:15 UTC
Thanks, 

(In reply to Graham Perrin from comment #2)

> … Not reproducible following a pkg upgrade routine, …

Correction (sorry): it _is_ still reproducible, at least with Kate.