Re: [Integrated] RFR: 8244735: Error on iOS passing keys with unicode values greater than 255

2020-05-12 Thread Jose Pereda
On Mon, 11 May 2020 12:50:48 GMT, Jose Pereda  wrote:

> With this PR, we pass directly the 16-bit unsigned short for a character 
> (unicode value) to the Java layer, avoiding
> the cast with the C++ 8-bit char, that fails for non-ascii characters like 
> euro (€) or quote (").
> We also avoid the mapping between iOS keys and JavaFX `KeyCode`, except for 
> `ENTER` and `BACK_SPACE`, as the mapping
> for some keys was wrong, like for "%", with ascii value 0x25, that was mapped 
> to KeyCode.LEFT.
> Finally, the iOS keyboard is set to `UIKeyboardTypeASCIICapable`, to prevent 
> the display of the emoji keyboard, that
> can't be currently processed.

This pull request has now been integrated.

Changeset: b14e0858
Author:Jose Pereda 
Committer: Johan Vos 
URL:   https://git.openjdk.java.net/jfx/commit/b14e0858
Stats: 39 lines in 6 files changed: 7 ins; 20 del; 12 mod

8244735: Error on iOS passing keys with unicode values greater than 255

Reviewed-by: jvos

-

PR: https://git.openjdk.java.net/jfx/pull/217


Re: RFR: 8244735: Error on iOS passing keys with unicode values greater than 255

2020-05-12 Thread Johan Vos
On Mon, 11 May 2020 12:50:48 GMT, Jose Pereda  wrote:

> With this PR, we pass directly the 16-bit unsigned short for a character 
> (unicode value) to the Java layer, avoiding
> the cast with the C++ 8-bit char, that fails for non-ascii characters like 
> euro (€) or quote (").
> We also avoid the mapping between iOS keys and JavaFX `KeyCode`, except for 
> `ENTER` and `BACK_SPACE`, as the mapping
> for some keys was wrong, like for "%", with ascii value 0x25, that was mapped 
> to KeyCode.LEFT.
> Finally, the iOS keyboard is set to `UIKeyboardTypeASCIICapable`, to prevent 
> the display of the emoji keyboard, that
> can't be currently processed.

This indeed fixes JDK-8244735.
It only touches ios-specific files, hence there is no impact on other platforms.

-

Marked as reviewed by jvos (Reviewer).

PR: https://git.openjdk.java.net/jfx/pull/217


RFR: 8244735: Error on iOS passing keys with unicode values greater than 255

2020-05-11 Thread Jose Pereda
With this PR, we pass directly the 16-bit unsigned short for a character 
(unicode value) to the Java layer, avoiding
the cast with the C++ 8-bit char, that fails for non-ascii characters like euro 
(€) or quote (").

We also avoid the mapping between iOS keys and JavaFX `KeyCode`, except for 
`ENTER` and `BACK_SPACE`, as the mapping
for some keys was wrong, like for "%", with ascii value 0x25, that was mapped 
to KeyCode.LEFT.

Finally, the iOS keyboard is set to `UIKeyboardTypeASCIICapable`, to prevent 
the display of the emoji keyboard, that
can't be currently processed.

-

Commit messages:
 - Set iOS keyboard type
 - Pass the unicode value of iOS 16-bit chars directly to the Java layer, 
without keyCode value (except for enter and backspace)

Changes: https://git.openjdk.java.net/jfx/pull/217/files
 Webrev: https://webrevs.openjdk.java.net/jfx/217/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8244735
  Stats: 39 lines in 6 files changed: 20 ins; 7 del; 12 mod
  Patch: https://git.openjdk.java.net/jfx/pull/217.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/217/head:pull/217

PR: https://git.openjdk.java.net/jfx/pull/217