On Thu, 4 May 2023 16:26:47 GMT, Alexander Zvegintsev <[email protected]> 
wrote:

> We need to relax the java.awt.Robot specification according to the latest 
> operating system trends. 
> This should at least cover the case of Wayland, which has changed many 
> familiar concepts in Linux.
> 
> https://bugs.openjdk.org/browse/JDK-8280982 [Wayland] [XWayland] 
> java.awt.Robot taking screenshots
> https://bugs.openjdk.org/browse/JDK-8280995 [XWayland] Robot.mouseMove does 
> not visually move mouse cursor
> https://bugs.openjdk.org/browse/JDK-8280990 [XWayland] XTest emulated mouse 
> click does not bring window to front.
> https://bugs.openjdk.org/browse/JDK-8280988 [XWayland] Click on title to 
> request focus test failures

I left a few comments inline.

src/java.desktop/share/classes/java/awt/Robot.java line 231:

> 229:      * @implNote the mouse pointer may not visually move on Linux systems
> 230:      *           using Wayland, while the subsequent mousePress and 
> mouseRelease
> 231:      *           can be delivered to the correct location

Since Wayland is an example, maybe say something more like this?

"...may not visually move on some platforms, such as Linux systems using 
Wayland..."

src/java.desktop/share/classes/java/awt/Robot.java line 431:

> 429:      * to capture screen content, and the required permissions are not 
> granted,
> 430:      * then a {@code SecurityException} may be thrown,
> 431:      * or the content of the returned {@code Color} is undefined.

Given that a `SecurityException` is only thrown on some platforms, is it worth 
throwing at all? Undefined colors can still occur, so I'm not sure I see much 
value in an exception. What do you envision that an application would do with 
the exception?

-------------

PR Review: https://git.openjdk.org/jdk/pull/13809#pullrequestreview-1420578775
PR Review Comment: https://git.openjdk.org/jdk/pull/13809#discussion_r1189868745
PR Review Comment: https://git.openjdk.org/jdk/pull/13809#discussion_r1189875492

Reply via email to