Summary: | When IBus is launched after Qt apps, it can't enter text in those apps | ||
---|---|---|---|
Product: | [Frameworks and Libraries] libplasma | Reporter: | stpaulgym <stpaulgym> |
Component: | components | Assignee: | Marco Martin <notmart> |
Status: | RESOLVED UPSTREAM | ||
Severity: | normal | CC: | david.cortes.rivera, kishore96, nate, plasma-bugs, wengxt |
Priority: | HI | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Arch Linux | ||
OS: | Linux | ||
URL: | https://bugreports.qt.io/browse/QTBUG-75681 | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
stpaulgym@protonmail.com
2020-10-25 05:09:15 UTC
I believe this happens if ibus-daemon is started after plasmashell. On my machine, ibus input works in plasmashell if I restart plasmashell (something like `kquitapp5 plasmashell; kstart5 plasmashell; sleep 5; kstart5 /usr/lib/kimpanel-ibus-panel`) after logging in. I'm guessing that the only way to reliably ensure that ibus-daemon starts before plasmashell is to use systemd startup for Plasma, and then add something like `WantedBy=whatever.name.plasmashell.uses.service` to the service file which you use to start ibus-daemon. Note that putting 'X-KDE-autostart-phase=0' into the startup .desktop file for ibus-daemon does not seem to reliably start it before plasmashell. Are you able to reproduce this issue in Plasma 5.23 or the 5.34 beta? (In reply to Nate Graham from comment #2) > Are you able to reproduce this issue in Plasma 5.23 or the 5.34 beta? For me, it is reproducible on one user account, but not in a fresh one. Even on the user account where it is reproducible, restarting plasmashell ( kquitapp5 plasmashell; kstart5 plasmashell ) after logging in fixes the issue. SOFTWARE VERSIONS: Operating System: Arch Linux KDE Plasma Version: 5.23.90 KDE Frameworks Version: 5.90.0 Qt Version: 5.15.2 Kernel Version: 5.16.2-arch1-1 (64-bit) Graphics Platform: X11 Does the search field in Discover do the same thing? (In reply to Nate Graham from comment #4) > Does the search field in Discover do the same thing? The search field in Discover works correctly. Thanks! I wonder what we're doing wrong in our Plasma Components to make this happen. Any ideas, Xuetian? I suggest report this to Qt to fix their IBus implementation. Their implementation of ibus platform input context should be able to handle this just like what I did in fcitx. If they implement it correctly, there should be no tricks required on the plasma side. The issue can be easily reproduced by 1. quit ibus 2. start kwrite 3. start ibus 4. try to type in kwrite. Which demonstrate that it is not relevant to plasma. IBus's own implemenation of Gtk im module works well if ibus restarts. It's solely Qt's ibus plugin problem that can't handle such case well. Thanks! Looks like there's an upstream bug report about it: https://bugreports.qt.io/browse/QTBUG-75681 *** Bug 417994 has been marked as a duplicate of this bug. *** *** Bug 431232 has been marked as a duplicate of this bug. *** Not sure if Bug 417994 is a duplicate, since that bug doesn't affect kwrite behavior. Hmm, maybe it is a similar but not identical Qt issue. Can you search through the bugs at https://bugreports.qt.io/secure/QuickSearch.jspa?searchString=ibus and see if any ones there describe your issue? |