Bug 473888 - Spectacle does not capture the screen correctly when using fractional scaling with a value less than 100%
Summary: Spectacle does not capture the screen correctly when using fractional scaling...
Status: RESOLVED FIXED
Alias: None
Product: Spectacle
Classification: Applications
Component: General (show other bugs)
Version: 23.08.0
Platform: Manjaro Linux
: NOR normal
Target Milestone: ---
Assignee: Noah Davis
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-08-29 10:17 UTC by Chema
Modified: 2023-09-15 18:53 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 24.02.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chema 2023-08-29 10:17:39 UTC
This bug is a derivation of bug 462860 as there is a case that keeps failing.

When fractional scaling is used and this is set to a value less than 100%, using Spectacle to capture the screen produces a strange effect, part of it is resized and some is not, and of course the capture Spectacle does is not correct, nor is the editing of notes in this case.

You can see this error in the following two videos:

https://drive.google.com/file/d/1oNMH3jLnxXK7ePg8glF6iXBGb4vmYca-/view?usp=sharing

https://drive.google.com/file/d/1FJ2aGCJcmKC8p7RMaKtD0md6IxRHQl6d/view?usp=drivesdk

My system:

Operating System: Manjaro Linux 
KDE Plasma Version: 5.27.7
KDE Frameworks Version: 5.109.0
Qt Version: 5.15.10
Kernel Version: 6.4.12-lqx1-2-lqx (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 5800H with Radeon Graphics
Memory: 62,2 GiB of RAM
Graphics Processor: AMD Radeon Graphics
Manufacturer: Micro Computer (HK) Tech Limited
Product Name: UM580

Spectacle version: 23.08.0
Comment 1 Bug Janitor Service 2023-09-14 04:57:13 UTC
A possibly relevant merge request was started @ https://invent.kde.org/graphics/spectacle/-/merge_requests/264
Comment 2 Noah Davis 2023-09-14 22:20:43 UTC
Git commit 8df6051d8df630ee45c8c1f0e97124c518bec51f by Noah Davis.
Committed on 14/09/2023 at 06:59.
Pushed by ndavis into branch 'master'.

Fix rectangle screenshots with less than 100% UI scale

Fixes it by just doing a normal all screens grab instead of trying to
get an image for each screen and then trying to position and scale them
all correctly for the given platform. This should also be a bit more
efficient.

Also lays some of the ground work for rectangle video recording by
making SelectionEditor send a rectangle and export actions instead of an
image and export actions.
Related: bug 462860
FIXED-IN: 23.12.0

D  +0    -68   src/CanvasImage.h
M  +31   -72   src/Gui/Annotations/AnnotationDocument.cpp
M  +4    -13   src/Gui/Annotations/AnnotationDocument.h
M  +1    -7    src/Gui/SelectionEditor.cpp
M  +2    -0    src/Gui/SelectionEditor.h
M  +2    -3    src/Platforms/Platform.h
M  +9    -100  src/Platforms/PlatformKWin.cpp
M  +3    -26   src/Platforms/PlatformKWin.h
M  +6    -13   src/Platforms/PlatformXcb.cpp
M  +1    -1    src/Platforms/PlatformXcb.h
M  +9    -16   src/SpectacleCore.cpp
M  +0    -1    src/SpectacleCore.h

https://invent.kde.org/graphics/spectacle/-/commit/8df6051d8df630ee45c8c1f0e97124c518bec51f