[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-openjfx-dev
Subject:    Re: Q: missing APIs needed for implementation of a rich text control
From:       Martin Fox <martin () martinfox ! com>
Date:       2023-01-27 21:55:05
Message-ID: 5601317F-873D-4D00-8D47-8557B10CDC68 () martinfox ! com
[Download RAW message or body]

Andy,

Could you elaborate on why you want to see KeyEvents for dead keys on Linux? \
https://bugs.openjdk.org/browse/JDK-8172867

On Windows dead keys are delivered as KeyEvents. The dead keys generate KEY_PRESSED \
events and the final composed character is delivered in a KEY_TYPED event. This \
reflects how the OS handles dead keys.

On Mac dead keys are handled using InputMethodEvents. The dead keys generated \
composed events and the final character is presented as committed text. This also \
reflects how the OS handles dead keys.

X11 follows the Mac model but JavaFX does not implement this completely (it only \
sends the final commit event). I haven't delved into the code in detail but I suspect \
fleshing out the InputMethodEvent path to match the Mac would be much easier than \
trying to force Linux to deliver the same event stream as Windows.

Martin


[Attachment #3 (unknown)]

<html><head><meta http-equiv="content-type" content="text/html; \
charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: \
space; line-break: after-white-space;">Andy,<div><br></div><div>Could you elaborate \
on why you want to see KeyEvents for dead keys on Linux? <a \
href="https://bugs.openjdk.org/browse/JDK-8172867">https://bugs.openjdk.org/browse/JDK-8172867</a></div><div><br></div><div>On \
Windows dead keys are delivered as KeyEvents. The dead keys generate KEY_PRESSED \
events and the final composed character is delivered in a KEY_TYPED event. This \
reflects how the OS handles dead keys.</div><div><br></div><div>On Mac dead keys are \
handled using InputMethodEvents. The dead keys generated composed events and the \
final character is presented as committed text. This also reflects how the OS handles \
dead keys.</div><div><br></div><div>X11 follows the Mac model but JavaFX does not \
implement this completely (it only sends the final commit event). I haven't delved \
into the code in detail but I suspect fleshing out the InputMethodEvent path to match \
the Mac would be much easier than trying to force Linux to deliver the same event \
stream as Windows.<div><br></div><div>Martin</div><br></div></body></html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic