RFR: 8309621: [XWayland][Screencast] screen capture failure with sun.java2d.uiScale other than 1
Alexander Zvegintsev
azvegint at openjdk.org
Tue Oct 3 10:38:50 UTC 2023
The current implementation of screen capture with ScreenCast has some shortcomings in handling ui scale.
This changeset includes:
* sun.java2d.uiScale value is now taken into account
* screen data streams from ScreenCast are provided in native screen resolution regardless of the scale set in the system.
Now we take that into account and resize the image accordingly.
* We are now trying all available `restore_token`, since it is is tied to the display, but not to its resolution.
* Skips the gtk2 part of the ScreenCaptureGtkTest as it is not supported.
Following tests are no longer failing on Wayland:
java/awt/Robot/HiDPIScreenCapture/HiDPIRobotScreenCaptureTest.java
java/awt/Robot/HiDPIScreenCapture/ScreenCaptureGtkTest.java
java/awt/Robot/HiDPIScreenCapture/ScreenCaptureTest.java
Other testing also looks good, including manual testing with various scales set in the system(including fractional scaling).
-------------
Commit messages:
- initial
Changes: https://git.openjdk.org/jdk/pull/16027/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=16027&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8309621
Stats: 235 lines in 8 files changed: 168 ins; 48 del; 19 mod
Patch: https://git.openjdk.org/jdk/pull/16027.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/16027/head:pull/16027
PR: https://git.openjdk.org/jdk/pull/16027
More information about the client-libs-dev
mailing list