Bug 2054680
| Summary: | workaround gtk4 preferring ibus-gtk4 to Wayland input protocol | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Jens Petersen <petersen> |
| Component: | ibus | Assignee: | fujiwara <tfujiwar> |
| Status: | CLOSED NOTABUG | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | low | ||
| Version: | rawhide | CC: | i18n-bugs, shawn.p.huang, tfujiwar, vtq-gnome |
| Target Milestone: | --- | Keywords: | i18n |
| Target Release: | --- | Flags: | petersen:
mirror+
|
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2022-04-12 02:35:16 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
(related upstream gtk4 issue: https://gitlab.gnome.org/GNOME/gtk/-/issues/4699 ) There is no GTK4 applications. I also think GNOME will change the priority if ibus-gtk4 will be installed by default. (In reply to fujiwara from comment #2) > There is no GTK4 applications. Well in Fedora 36: $ rpm -e gtk4 |& grep libgtk-4 libgtk-4.so.1()(64bit) is needed by (installed) libadwaita-1.1~beta-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-bluetooth-libs-1:42~rc-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-bluetooth-1:42~rc-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-desktop4-42~beta-3.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) xdg-desktop-portal-gnome-42~rc-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gtksourceview5-5.3.2-3.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) baobab-42~rc-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-tour-42~beta-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) colord-gtk4-0.3.0-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) libnma-gtk4-1.8.34-1.fc36.1.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-control-center-42~rc-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-shell-42~rc-2.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-contacts-42~alpha-2.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-calendar-42~rc-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-calculator-42~rc-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-text-editor-42~rc1-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-software-42~rc-2.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-clocks-42~beta-1.fc36.x86_64 libgtk-4.so.1()(64bit) is needed by (installed) gnome-font-viewer-42~rc-1.fc36.x86_64 > I also think GNOME will change the priority if ibus-gtk4 will be installed > by default. It needs to be installed by default for Xorg sessions. I believe gtk4 is now fixed so this is no longer needed. Tested in Fedora-Workstation-Live-x86_64-36-20220410.n.0.iso |
Description of problem: Currently in Fedora WS Wayland Gnome, gtk4 prefers ibus-gtk4 to the Wayland protocol - which causes the candidate window to be badly placed. (However we need ibus-gtk4 for Xorg sessions.) Seems a workaround might be to patch: --- ibus-1.5.24/client/gtk4/ibusim.c.orig 2021-07-30 23:12:21.747541875 +0900 +++ ibus-1.5.24/client/gtk4/ibusim.c 2021-07-31 01:55:43.785097447 +0900 @@ -34,10 +34,13 @@ g_io_im_ibus_load (GTypeModule *type_mod if (!inited) { ibus_init (); ibus_im_context_register_type (type_module); + /* "wayand" prority is 0 and "gtk-im-context-simple" one is G_MININT, + * "ibus" one is -100 here. + */ g_io_extension_point_implement ("gtk-im-module", IBUS_TYPE_IM_CONTEXT, "ibus", - 50); + -100); inited = TRUE; } /* make module resident */ But does this cause some problems?