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

Thiago Milczarek Sayao tsayao at openjdk.org
Sun Aug 18 21:09:03 UTC 2024


On Fri, 16 Aug 2024 15:48:00 GMT, Martin Fox <mfox at openjdk.org> wrote:

>> 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
>
> modules/javafx.graphics/src/main/native-glass/gtk/glass_window_ime.cpp line 186:
> 
>> 184: void WindowContextBase::disableIME() {
>> 185:     if (im_ctx.ctx != NULL) {
>> 186:         g_signal_handlers_disconnect_matched(im_ctx.ctx, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, NULL);
> 
> Since you're not passing in any data this disconnect call isn't disconnecting anything. Either pass `this` in the data argument or use `g_signal_handlers_disconnect_by_data` or just remove this line completely. According to the documentation the signal handlers will be disconnected when the IM context object is destroyed (but double-check that, I'm not a GObject expert).

g_object_unref() will destroy signals too as its part of the object structure (as long it has no more references `g_object_ref`). So the call is not needed.

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

PR Review Comment: https://git.openjdk.org/jfx/pull/1080#discussion_r1721056257


More information about the openjfx-dev mailing list