RFR: 8301893: IME window position is off on secondary screen

Martin Fox mfox at openjdk.org
Tue Jan 9 01:10:31 UTC 2024


On Tue, 9 Jan 2024 00:23:23 GMT, Andy Goryachev <angorya at openjdk.org> wrote:

>> The Mac screen coordinate system is inverted on the y-axis compared to JavaFX so glass needs to flip the y coordinate. IM coordinates are relative to the primary screen which is NSScreen.screens[0], not NSScreen.mainScreen (mainScreen is the screen that contains the window that has focus).
>
> The fix looks good.
> While testing, I noticed a different issue:
> 
> - switch input language to Japanese, start typing `arigato` until the candidate list popup appears
> - backspace to remove the popup
> - move the application window
> - type something to bring the IME popup again
> I expect the IME popup to appear below the new caret position, but instead it pops up where it used to be:
> 
> ![Screenshot 2024-01-08 at 16 05 54](https://github.com/openjdk/jfx/assets/107069028/c46a6700-dde6-4b5d-90e2-cfd1af7e3ac0)
> 
> This might be a platform issue, since it can also be reproduced with TextEdit.  Could you please confirm?

@andy-goryachev-oracle On my Mac OS 14.1.2 system I see the same problem where the IM window doesn't track the JavaFX window. I'm seeing the exact same behavior with TextEdit, Pages, and Safari so it appears to be an Apple problem.

-------------

PR Comment: https://git.openjdk.org/jfx/pull/1313#issuecomment-1882109049


More information about the openjfx-dev mailing list