<AWT Dev> [9] Review request for 8014212: Robot captures black screen

Alexander Zvegintsev alexander.zvegintsev at oracle.com
Tue Jul 28 12:49:52 UTC 2015


Hello Sergey,

please see the updated version
http://cr.openjdk.java.net/~azvegint/jdk/9/8014212/02/
GetPrimitiveArrayCritical() is used instead of manual array allocation.

Thanks,

Alexander.

On 07/27/2015 08:35 PM, Alexander Zvegintsev wrote:
> Please see the updated version:
> http://cr.openjdk.java.net/~azvegint/jdk/9/8014212/01/
>
> robot makes shot of intersection of provided rectangle with root 
> window. Old robot implementation works for negative x and y,
> but may return garbage outside of root window behavior, so it was 
> updated too.
>
> ShapeNotSetSometimes reduced iteration count to prevent killing by 
> jtreg for timeout.
>
> TranslucentJAppletTest updated to use getPixelColor() directly.
> Thanks,
>
> Alexander.
> On 07/24/2015 07:08 AM, Sergey Bylokhov wrote:
>> 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.
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20150728/59d2bd37/attachment.html>


More information about the awt-dev mailing list