Hi, Alexander.
I am not sure that an assumption that we should not make a screen shot if the x and y are negative is correct. I guess that we should take a screenshot of the intersection of the requested area and the display.

Can you also check this comment in the TranslucentJAppletTest.java:
106 // unfortunately, robot.getPixelColor() doesn't work for some unknown reason
 107         // Color newColor2 = r.getPixelColor(200, 200);

On 23.07.15 19:37, Alexander Zvegintsev wrote:
Hello,

please review the fix
http://cr.openjdk.java.net/~azvegint/jdk/9/8014212/00
for the issue
https://bugs.openjdk.java.net/browse/JDK-8014212

This fix trying to use gdk_pixbuf_get_from_drawable () [0] to capture screenshot(basic image data handling could be found here[1]).
If it fails then we come back to our old method.
Translucency support[1] is also covered by this fix, but there is another issue with toFront() call which blocks passing of a JCK test.

P.S. On Solaris 11 windows appears with animation, thus sleep() call was added to work around this.

[0] https://developer.gnome.org/gdk2/stable/gdk2-Pixbufs.html#gdk-pixbuf-get-from-drawable [1] https://developer.gnome.org/gdk-pixbuf/stable/gdk-pixbuf-The-GdkPixbuf-Structure.html#image-data [2] https://bugs.openjdk.java.net/browse/JDK-7043845 Robot should be able take screenshots with translucent windows

--
Thanks,

Alexander.


--
Best regards, Sergey.

Reply via email to