Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
5.15.3, 6.2.3
-
The test environment is Fedora 36 and GNOME X11 session with 200% scaling factor.
Qt versions are 5.15.3 and 6.2.3, with IBus 1.5.26 and IBus-libpinyin 1.12.1.
The example applications shown in the screenshots are Kate 21.12.2 (using Qt 5) and Qt Assistant 6.2.3 (using Qt 6).
But this issue is not a recent bug but was also present in previous Qt versions e.g. in Fedora 35.The test environment is Fedora 36 and GNOME X11 session with 200% scaling factor. Qt versions are 5.15.3 and 6.2.3, with IBus 1.5.26 and IBus-libpinyin 1.12.1. The example applications shown in the screenshots are Kate 21.12.2 (using Qt 5) and Qt Assistant 6.2.3 (using Qt 6). But this issue is not a recent bug but was also present in previous Qt versions e.g. in Fedora 35.
-
-
54002671b (dev), 3790821b2 (dev), d142933b6 (6.5), 98a96ec37 (6.5), f0028627d (6.4), 52cf04379 (6.4), ea682f3a7 (tqtc/lts-6.2), 54dac0ad7 (tqtc/lts-6.2), 460e60e2d (tqtc/lts-5.15), 0da9993a3 (tqtc/lts-5.15)
Description
In a Linux X11 session or XWayland, when the DPI scaling factor is not 1, for all Qt applications the IBus input method shows the word list panel not under the text input cursor but generally on the upper left side of the expected position. See the following screenshots (for Qt5 and Qt6 respectively):
This seems to be already reported to IBus at https://github.com/ibus/ibus/issues/2221 although that was for KDE environment. A patch for the IBus module included in Qt (src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp) was proposed by others there at https://github.com/ibus/ibus/issues/2221#issuecomment-706652441. I tested that patch with Qt 5, and it indeed fixed the issue for me. See the following screenshot for the correct behavior with the patch:
Attachments
For Gerrit Dashboard: QTBUG-103393 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
445920,10 | ibus: support high dpi for cursor rectangle | dev | qt/qtbase | Status: MERGED | +2 | 0 |
447069,5 | ibus: add SetCursorLocationRelative in InputContext.xml | dev | qt/qtbase | Status: MERGED | +2 | 0 |
451614,2 | ibus: add SetCursorLocationRelative in InputContext.xml | 6.4 | qt/qtbase | Status: MERGED | +2 | 0 |
451615,2 | ibus: add SetCursorLocationRelative in InputContext.xml | 6.5 | qt/qtbase | Status: MERGED | +2 | 0 |
451616,2 | ibus: support high dpi for cursor rectangle | 6.5 | qt/qtbase | Status: MERGED | +2 | 0 |
451617,2 | ibus: support high dpi for cursor rectangle | 6.4 | qt/qtbase | Status: MERGED | +2 | 0 |
451658,3 | ibus: add SetCursorLocationRelative in InputContext.xml | tqtc/lts-6.2 | qt/tqtc-qtbase | Status: MERGED | +2 | 0 |
451659,3 | ibus: add SetCursorLocationRelative in InputContext.xml | tqtc/lts-5.15 | qt/tqtc-qtbase | Status: MERGED | +2 | 0 |
451660,3 | ibus: support high dpi for cursor rectangle | tqtc/lts-5.15 | qt/tqtc-qtbase | Status: MERGED | +2 | 0 |
451661,3 | ibus: support high dpi for cursor rectangle | tqtc/lts-6.2 | qt/tqtc-qtbase | Status: MERGED | +2 | 0 |
483532,1 | ibus: add SetCursorLocationRelative in InputContext.xml | tqtc/lts-5.15-vxworks | qt/tqtc-qtbase | Status: ABANDONED | 0 | 0 |
483533,1 | ibus: support high dpi for cursor rectangle | tqtc/lts-5.15-vxworks | qt/tqtc-qtbase | Status: ABANDONED | 0 | 0 |