Bug 2539584 - xcompose.conf sets QT_IM_MODULE=xim on Plasma Wayland (ru_RU, fi_FI, pt_BR, el_GR, am_ET), breaking the virtual keyboard in Qt apps
Summary: xcompose.conf sets QT_IM_MODULE=xim on Plasma Wayland (ru_RU, fi_FI, pt_BR, e...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: imsettings
Version: 44
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Akira TAGOH
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-09-23 17:36 UTC by Plastinin Nikolay
Modified: 2026-10-31 18:33 UTC (History)
2 users (show)

Fixed In Version: imsettings-1.8.11-4.fc46 imsettings-1.8.11-4.fc44 imsettings-1.8.12-2.fc45
Clone Of:
Environment:
Last Closed: 2026-09-29 07:22:39 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Plastinin Nikolay 2026-09-23 17:36:15 UTC
On Fedora 44 KDE Plasma (Wayland), users whose locale is in _xcompose_language_list (am_ET, el_GR, fi_FI, pt_BR, ru_RU) get QT_IM_MODULE=xim exported into the session by /etc/xdg/plasma-workspace/env/xinput.sh (imsettings-plasma). Qt/KDE applications then use XIM instead of the Wayland text-input protocol, so the Plasma virtual keyboard (plasma-keyboard) never appears in Qt/KDE applications. It still works in non-Qt applications (Chromium, Flatpaks).

Other locales are not affected: they get none.conf, which has IMSETTINGS_IGNORE_ME=yes and IMSETTINGS_IGNORE_SESSION=*-wayland,GNOME (added for bug 2240722), so setup_qt_immodule unsets QT_IM_MODULE. xcompose.conf lacks these lines, so the xcompose locales still get "xim".

Versions:
imsettings-1.8.11-2.fc44
imsettings-plasma-1.8.11-2.fc44
plasma-workspace-6.7.5-1.fc44
kwin-6.7.5-1.fc44
plasma-keyboard-6.7.5-1.fc44
Rawhide (1.8.11-3) has the same xcompose.conf.

Reproducible: Always

Steps to Reproduce:
1. On Fedora 44 KDE Plasma, set the system locale to ru_RU.UTF-8 (or fi_FI, pt_BR, el_GR, am_ET).
2. Log in to a Plasma Wayland session.
3. Run: systemctl --user show-environment | grep QT_IM_MODULE
4. Enable the virtual keyboard (System Settings > Keyboard > Virtual Keyboard) and tap a text field in a Qt/KDE app (Dolphin, System Settings).
Actual Results:
3. QT_IM_MODULE=xim
4. The virtual keyboard does not appear in Qt/KDE applications.

Expected Results:
3. QT_IM_MODULE is not set, as with en_US and other none.conf locales.
4. The virtual keyboard appears in Qt/KDE applications.

Additional Information:
Result of the xinput.sh logic in a Plasma Wayland session with IMSETTINGS_DISABLE_USER_XINPUTRC=yes and different LANG values:
  ru_RU, fi_FI, pt_BR, el_GR -> QT_IM_MODULE=xim
  en_US, de_DE, fr_FR, uk_UA, es_ES, pt_PT, ja_JP, zh_CN -> unset

none.conf ends with:
  IMSETTINGS_IGNORE_ME=yes
  # We don't take care of Wayland
  IMSETTINGS_IGNORE_SESSION=*-wayland,GNOME
xcompose.conf has no such lines.

Suggested fix: add the same two lines to /etc/X11/xinit/xinput.d/xcompose.conf:
  IMSETTINGS_IGNORE_ME=yes
  IMSETTINGS_IGNORE_SESSION=*-wayland,GNOME

Related: the 1.8.11-2 changelog says "Disable imsettings for KDE", but Patch5 (imsettings-disable-kde.patch) is inside %if 0%{?rhel} in imsettings.spec and is not in the Fedora SRPM. On Fedora 44 /usr/libexec/imsettings-target-checker.sh has no kde* case and "imsettings-check --check-desktop KDE" returns 0, so KDE sessions are still handled by imsettings. Applying that patch on Fedora would also fix this.
See also bug 2240722 and bug 2232064.

Workaround:
  mkdir -p ~/.config/imsettings
  echo 'XIM=none' > ~/.config/imsettings/xinputrc
then log out and back in.

Comment 1 Plastinin Nikolay 2026-09-23 17:53:47 UTC
Correction to the suggested fix: only IMSETTINGS_IGNORE_SESSION is needed.
IMSETTINGS_IGNORE_ME=yes would also hide "X compose table" from im-chooser
(it controls imsettings_info_is_visible), which is not wanted.

So the fix is one line in data/xcompose.in.in:

  # We don't take care of Wayland
  IMSETTINGS_IGNORE_SESSION=*-wayland,GNOME

Tested by running the xinput.sh logic from /etc/xdg/plasma-workspace/env/xinput.sh
in a live Plasma session (IMSETTINGS_DISABLE_USER_XINPUTRC=yes) with the original
and the patched xcompose.conf:

  LANG     session         original   patched
  ru_RU    KDE-wayland     xim        unset
  fi_FI    KDE-wayland     xim        unset
  pt_BR    KDE-wayland     xim        unset
  el_GR    KDE-wayland     xim        unset
  am_ET    KDE-wayland     xim        unset
  en_US    KDE-wayland     unset      unset
  ja_JP    KDE-wayland     unset      unset
  ru_RU    KDE (x11)       xim        xim     (X11 unchanged)

I have prepared a dist-git change (Patch3 imsettings-xcompose-wayland.patch,
Release 4, applies with --fuzz=0) and will open a pull request on
src.fedoraproject.org/rpms/imsettings.

Comment 2 Plastinin Nikolay 2026-09-23 18:12:01 UTC
Pull request: https://src.fedoraproject.org/rpms/imsettings/pull-request/2

Comment 3 Fedora Update System 2026-09-29 07:20:03 UTC
FEDORA-2026-d467a3641a (imsettings-1.8.11-4.fc46) has been submitted as an update to Fedora 46.
https://bodhi.fedoraproject.org/updates/FEDORA-2026-d467a3641a

Comment 4 Fedora Update System 2026-09-29 07:22:39 UTC
FEDORA-2026-d467a3641a (imsettings-1.8.11-4.fc46) has been pushed to the Fedora 46 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 5 Fedora Update System 2026-09-29 08:00:12 UTC
FEDORA-2026-1ddc9888dd (imsettings-1.8.11-4.fc44) has been submitted as an update to Fedora 44.
https://bodhi.fedoraproject.org/updates/FEDORA-2026-1ddc9888dd

Comment 6 Fedora Update System 2026-09-29 08:00:12 UTC
FEDORA-2026-108ec391d0 (imsettings-1.8.11-4.fc45) has been submitted as an update to Fedora 45.
https://bodhi.fedoraproject.org/updates/FEDORA-2026-108ec391d0

Comment 7 Fedora Update System 2026-09-30 01:52:58 UTC
FEDORA-2026-108ec391d0 has been pushed to the Fedora 45 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2026-108ec391d0`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2026-108ec391d0

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 8 Fedora Update System 2026-09-30 02:25:58 UTC
FEDORA-2026-1ddc9888dd has been pushed to the Fedora 44 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2026-1ddc9888dd`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2026-1ddc9888dd

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Fedora Update System 2026-10-08 01:15:57 UTC
FEDORA-2026-1ddc9888dd (imsettings-1.8.11-4.fc44) has been pushed to the Fedora 44 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 10 Fedora Update System 2026-10-31 18:33:56 UTC
FEDORA-2026-d1cdc0f4f7 (imsettings-1.8.12-2.fc45) has been pushed to the Fedora 45 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.