RFR: 8305418: [Linux] Replace obsolete XIM as Input Method Editor [v22]

Gábor Pintér duke at openjdk.org
Mon Jun 10 00:31:24 UTC 2024


On Sun, 9 Jun 2024 12:56:32 GMT, Thiago Milczarek Sayao <tsayao at openjdk.org> wrote:

>> This replaces obsolete XIM and uses gtk api for IME.
>> Gtk uses [ibus](https://github.com/ibus/ibus)
>> 
>> Gtk3+ uses relative positioning (as Wayland does), so I've added a Relative positioning on `InputMethodRequest`.
>> 
>> [Screencast from 17-09-2023 21:59:04.webm](https://github.com/openjdk/jfx/assets/30704286/6c398e39-55a3-4420-86a2-beff07b549d3)
>
> Thiago Milczarek Sayao has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 96 commits:
> 
>  - Merge branch 'refs/heads/master' into new_ime
>  - Merge branch 'refs/heads/master' into new_ime
>  - Merge branch 'master' into new_ime
>  - Add signals to avoid warnings
>  - Merge branch 'master' into new_ime
>    
>    # Conflicts:
>    #	modules/javafx.graphics/src/main/native-glass/gtk/GlassApplication.cpp
>  - Add check for jview
>  - - Fix comment path
>  - - Fix double keyrelease
>  - - Use a work-around to relative positioning (until wayland is not officially supported)
>    - Unref pango attr list
>  - Merge branch 'master' into new_ime
>  - ... and 86 more: https://git.openjdk.org/jfx/compare/c8b96e4e...d6230dec

Much appreciated!
I quick test with Japanese on Xubuntu 24.04/ibus/mozc. 
- `TextArea` -> works out of the box
- `TextFieldTableCell` -> a bit buggy
  - if this is the first widget to input text -> does not detect input method change, cannot trigger  `A-> あ` 
  - if starting with `TextArea`, performing input method change, _then_ edit  `TextFieldTableCell` -> works as expected: can switch `A<->あ`
  
My `TextFieldTableCell` uses the `DefaultStringConverter`, which may affect the behavior.  Later I will check with other `StringConverter` classes.

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

PR Comment: https://git.openjdk.org/jfx/pull/1080#issuecomment-2156925867


More information about the openjfx-dev mailing list