<AWT Dev> [10] JDK-8148344: Java robot keypress should be able to use extended key code characters as ? ? ?.

Shashidhara Veerabhadraiah shashidhara.veerabhadraiah at oracle.com
Fri Oct 27 05:10:17 UTC 2017


Thank you Semyon for the quick review.

 

Thanks and regards,

Shashi

 

From: Semyon Sadetsky 
Sent: Friday, October 27, 2017 10:38 AM
To: Shashidhara Veerabhadraiah <shashidhara.veerabhadraiah at oracle.com>; Sergey Bylokhov <sergey.bylokhov at oracle.com>; awt-dev at openjdk.java.net
Subject: Re: <AWT Dev> [10] JDK-8148344: Java robot keypress should be able to use extended key code characters as ? ? ?.

 

Hi Shashi,

The change looks good to me.

You need to get a CSR approved before the push.

--Semyon

On 10/26/2017 09:39 PM, Shashidhara Veerabhadraiah wrote:

Hi Sergey\Semyon, Please do the review for the below bug.

 

Thanks and regards,

Shashi

 

From: Shashidhara Veerabhadraiah 
Sent: Thursday, September 21, 2017 2:14 PM
To: Sergey Bylokhov HYPERLINK "mailto:sergey.bylokhov at oracle.com"<sergey.bylokhov at oracle.com>; Semyon Sadetsky HYPERLINK "mailto:semyon.sadetsky at oracle.com"<semyon.sadetsky at oracle.com>; HYPERLINK "mailto:awt-dev at openjdk.java.net"awt-dev at openjdk.java.net
Subject: Re: <AWT Dev> [10] JDK-8148344: Java robot keypress should be able to use extended key code characters as ? ? ?.

 

Hi All, Please find the updated webrev containing a new test that is added to test out the software changes that were made under this enhancement.

 

HYPERLINK "http://cr.openjdk.java.net/%7Esveerabhadra/8148344/webrev.02/"http://cr.openjdk.java.net/~sveerabhadra/8148344/webrev.02/

 

Thanks and regards,

Shashi

 

From: Shashidhara Veerabhadraiah 
Sent: Thursday, September 21, 2017 11:37 AM
To: Sergey Bylokhov <HYPERLINK "mailto:sergey.bylokhov at oracle.com"sergey.bylokhov at oracle.com>; Semyon Sadetsky <HYPERLINK "mailto:semyon.sadetsky at oracle.com"semyon.sadetsky at oracle.com>; HYPERLINK "mailto:awt-dev at openjdk.java.net"awt-dev at openjdk.java.net
Subject: Re: <AWT Dev> [10] JDK-8148344: Java robot keypress should be able to use extended key code characters as ? ? ?.

 

Hi Sergey, I was able to input the surrogate pairs and got the required output as shown below:

 



 

 

Below is the output after we input the surrogate pairs:

 



 

Thanks and regards,

Shashi

 

 

-----Original Message-----
From: Sergey Bylokhov 
Sent: Thursday, September 14, 2017 11:33 PM
To: Shashidhara Veerabhadraiah <HYPERLINK "mailto:shashidhara.veerabhadraiah at oracle.com"shashidhara.veerabhadraiah at oracle.com>; Semyon Sadetsky <HYPERLINK "mailto:semyon.sadetsky at oracle.com"semyon.sadetsky at oracle.com>; HYPERLINK "mailto:awt-dev at openjdk.java.net"awt-dev at openjdk.java.net
Subject: Re: <AWT Dev> [10] JDK-8148344: Java robot keypress should be able to use extended key code characters as ? ? ?.

 

The java uses UTF16, I guess this new api should use it also, and we should check that the surrogate pairs will be supported.

 

On 9/14/17 03:56, Shashidhara Veerabhadraiah wrote:

> Hi Sergey, Yes it represents the Unicode code point. The encoding is same as the window characteristic which is UTF 8 as implemented in Java.

> 

> Thanks and regards,

> Shashi

> 

> -----Original Message-----

> From: Sergey Bylokhov

> Sent: Wednesday, September 13, 2017 5:22 AM

> To: Shashidhara Veerabhadraiah 

> <HYPERLINK "mailto:shashidhara.veerabhadraiah at oracle.com"shashidhara.veerabhadraiah at oracle.com>; Semyon Sadetsky 

> <HYPERLINK "mailto:semyon.sadetsky at oracle.com"semyon.sadetsky at oracle.com>; HYPERLINK "mailto:awt-dev at openjdk.java.net"awt-dev at openjdk.java.net

> Subject: Re: <AWT Dev> [10] JDK-8148344: Java robot keypress should be able to use extended key code characters as ? ? ?.

> 

> Hi, Shashi.

> One initial question:

> What is an int parameter of these methods means, is it a "Unicode code point"? What encoding utf8/utf16 should be used?

> 

> On 9/8/17 02:50, Shashidhara Veerabhadraiah wrote:

>> Hi, I have updated the Webrev to accommodate the comments and here is 

>> the new Webrev:

>> 

>> HYPERLINK "http://cr.openjdk.java.net/%7Esveerabhadra/8148344/webrev.01/"http://cr.openjdk.java.net/~sveerabhadra/8148344/webrev.01/

>> 

>> I have separated the /_Unicode_/ keys input via java robot as a new 

>> set of /_public_/ api’s (this is in similar fashion as how the 

>> platform offers the Unicode keys input into the system) and this has 

>> been tested on all the platforms using the test file similar to the 

>> attached file in the bug. A more proper test file would be put for 

>> review in the subsequent reviews.

>> 

>> Thanks and regards,

>> 

>> Shashi

>> 

>> *From:* Sergey Bylokhov

>> *Sent:* Wednesday, August 30, 2017 2:33 AM

>> *To:* Shashidhara Veerabhadraiah

>> <HYPERLINK "mailto:shashidhara.veerabhadraiah at oracle.com"shashidhara.veerabhadraiah at oracle.com>

>> *Cc:* HYPERLINK "mailto:awt-dev at openjdk.java.net"awt-dev at openjdk.java.net

>> *Subject:* Re: <AWT Dev> [10] JDK-8148344: Java robot keypress should 

>> be able to use extended key code characters as ? ? ?.

>> 

>> Hi, Shashi.

>> 

>> This is part of this fix, to figure out how it will work for external 

>> applications. As you said this functionally can be useful for an 

>> onscreen keyboards, which virtually can have any possible keys, but 

>> we should check how the applications will react on such keys:

>>    - Will the application get some kind of keyPress/Release?

>>    - Will the application get some keyCode for such event?

>>    - Is it possible to get autorepeat for such keys?(between

>> press/release)

>> 

>> Depending from the answers above we can enhance existed robot API or 

>> provide a new one:

>> like Robot.keyType(char)/etc

>> 

>> ----- HYPERLINK "mailto:shashidhara.veerabhadraiah at oracle.com"shashidhara.veerabhadraiah at oracle.com

>> <mailto:shashidhara.veerabhadraiah at oracle.com> wrote:

>>> 

>> 

>>> 

>> 

>>> 

>> 

>> Hi Sergey, I was only able to add short cut keys in the Microsoft 

>> word but not as a system wide short cut key. There was no mechanism 

>> that I could find to add a short cut key for a Unicode char!! Can you 

>> please tell me the steps to do the same if you are aware of?

>> 

>> Thanks and regards,

>> 

>> shashi

>> 

>>> 

>> 

>> *From:*Sergey Bylokhov

>>> *Sent:* Tuesday, August 22, 2017 8:34 PM

>>> *To:* Shashidhara Veerabhadraiah

>>> <HYPERLINK "mailto:shashidhara.veerabhadraiah at oracle.com"shashidhara.veerabhadraiah at oracle.com

>> <mailto:shashidhara.veerabhadraiah at oracle.com>>

>>> *Cc:* HYPERLINK "mailto:awt-dev at openjdk.java.net"awt-dev at openjdk.java.net <mailto:awt-dev at openjdk.java.net>

>>> *Subject:* Re: <AWT Dev> [10] JDK-8148344: Java robot keypress 

>>> should be

>> able to use extended key code characters as ? ? ?.

>> 

>> Hi, Shashi.

>>> Can you check how this Robot API will work when the application will have a shortcut for such key? Will such shortcuts will work after this fix?

>>> 

>>> ----- HYPERLINK "mailto:shashidhara.veerabhadraiah at oracle.com"shashidhara.veerabhadraiah at oracle.com

>> <mailto:shashidhara.veerabhadraiah at oracle.com> wrote:

>>>> 

>> 

>>> 

>> 

>>> 

>> 

>> Hi All, Please review fix for the /_enhancement_/ wherein the robot 

>> key press of non-ascii were interpreted as question marks.

>> 

>> Issue: The robot key press events was handling only the ascii inputs 

>> and ignored the other Unicode inputs. Either it was throwing illegal 

>> argument exception in windows or does nothing on the mac for those 

>> Unicode inputs.

>> 

>> Solution and fix: The platform specific api’s was unable handle the 

>> non-ascii inputs. I have modified the api’s to accept the non-ascii 

>> inputs and correspondingly send the message to the window to print 

>> the non-ascii characters as well. Below is the picture of how the 

>> non-ascii inputs are considered and printed onto the window.

>> 

>> The solution spans across windows and mac platform and still in 

>> search of a solution for the Linux platform. The solution implements 

>> key scanning only upon existing valid ascii key was /_not_/ found and 

>> assumes it as Unicode key and sends the event to event queue to be 

>> processed as Unicode keys. Different formats are being used by 

>> different platform implementation of Unicode. For ex., per the below 

>> Unicode list, in the case of windows and mac, the key input can take 

>> decimal values whereas on Linux it can only take the Code values.

>> 

>> On Linux, I was able to get the KeySym of Unicode keys but was unable 

>> to fake the key event as there was no mechanism available for the 

>> same(which sends the key event to window). Please let me know if 

>> there is any such mechanism available to simulate Unicode key events 

>> on Linux platform. Hence I think to raise a bug for the Linux 

>> platform and close this JDK-8148344 bug.

>> 

>> Enhancement id: https://bugs.openjdk.java.net/browse/JDK-8148344

>> 

>> Webrev: HYPERLINK "http://cr.openjdk.java.net/%7Esveerabhadra/8148344/webrev.00/"http://cr.openjdk.java.net/~sveerabhadra/8148344/webrev.00/

>> 

>> Thanks and regards,

>> 

>> Shashi

>> 

> 

> 

> --

> Best regards, Sergey.

> 

 

 

--

Best regards, Sergey.

 

 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20171026/3e0d34fb/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 50004 bytes
Desc: not available
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20171026/3e0d34fb/image001-0001.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image002.png
Type: image/png
Size: 2570 bytes
Desc: not available
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20171026/3e0d34fb/image002-0001.png>


More information about the awt-dev mailing list