I installed Fedora-Workstation-netinst-x86_64-29-20180903.n.0.iso in qemu and added a few input methods including ibus-typing-booster and ibus-hangul in the gnome-control-center after the first login. Then I tried to use ibus-typing-booster and ibus-hangul. As soon as one commits a preëdit by typing space, the space is endlessly repeated. One can stop the repetition by typing Control+c or BackSpace. But after doing that, the space key stops working completely on the whole desktop. Even when switching the input back to US English keyboard, I cannot type "a " anymore into gnome-terminal, the Space is just ignored, I only get the "a". And Super+Space doesn’t show the input method switcher anymore, it behaves as if only Super had been pressed. So the Space key seems to be completely dead. I can find no other way but logging out and logging in again to make the space key work again.
Created attachment 1480702 [details] screencast-ibus-typing-booster-forward-key-event-breaks-space-key.webm Screencast showing how to reproduce the problem with ibus-typing-booster. In the screencast one can see: - Alt+F2 and open gnome-terminal - Switch to ibus-typing-booster using the gnome panel - Type "a " into the gnome-terminal The Space typed after the "a" commits the preëdit which contains "a" into the gnome-terminal and adds a space using the forward-key-event function. There should be just a single space after the "a" now. But after a fraction of a second more spaces are automatically added into the gnome-terminal, as if somebody would press and hold the space key. - Type Control+C This stops more spaces being inserted (One can also use Backspace to stop more spaces being inserted). Now try to type "a " again. One can see the candidate list of ibus-typing-booster for words starting with "a" popup, but the space does not commit the "a" anymore, the space is ignored. - Switch to US English keyboard using the Gnome panel. - Type "a ". Only an "a" is inserted, the space is ignored.
This works fine in Gnome Xorg.
Created attachment 1480728 [details] screencast-ibus-hangul-forward-key-event-breaks-space-key.webm Screencast showing the same problem triggered by ibus-hangul. - Open gnome-terminal - Switch to ibus-hangul - Open ibus-hangul setup tool from the gnome panel - Set Hangul keyboard to "Romaja" - Close setup tool - Switch Hangul mode to "On" using the gnome panel - Type "han " into gnome-terminal Now space is repeated endlessly - Type Control+C This stops the repetition of the space - Switch to English. - Type "a " Only "a" appears, one cannot type spaces anymore.
Takao Fujiwara made this merge request: https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/218 I applied the patch from this merge request to the gnome-shell-3.29.91 package which is used in Fedora-Workstation-netinst-x86_64-29-20180903.n.0.iso, rebuild that package and installed it. It solves the problem for me, both ibus-typing-booster and ibus-hangul seem to work fine in Gnome Wayland with this patch applied.
Discussed at 2018-09-10 freeze exception review meeting: https://meetbot-raw.fedoraproject.org/fedora-blocker-review/2018-09-10/f29-blocker-review.2018-09-10-16.01.html . Rejected as a freeze exception issue on the grounds the fix is quite large, still under testing, and could theoretically break something else worse. (Note: I wasn't present when this was discussed. I would have voted +1. As described it is rather a bad bug. I might try and get a revote on this.)
*** Bug 1626411 has been marked as a duplicate of this bug. ***
Unfortunately there is no workaround if forward-key-event is used in GNOME Wayland. I confirmed the submitted patches fix a critical infinite loop in key typing.
*** Bug 1625551 has been marked as a duplicate of this bug. ***
Thanks, Adam I resubmitted it for consideration for Beta FreezeException and also for Final FreezeException.
I wish you'd done it yesterday, when I was doing a new gnome-shell build with a bunch of fixes for Beta RC5 :( Sounds like the fix isn't quite done yet upstream, though?
Yeah, no movement there yet alas. As such I would like this to be GA Blocker though I am not sure if it qualifies?
We can propose it, at least.
Discussed during the 2018-09-24 blocker review meeting: [1] The decision to delay the classification of this as a blocker bug was made as we need more data to make an informed decision, particularly if ibus-typing-booster is used by default for any language. [1] https://meetbot.fedoraproject.org/fedora-blocker-review/2018-09-24/f29-blocker-review.2018-09-24-16.05.txt
After a default installation in Korean, using the default Gnome-Wayland desktop, one will run into this problem immediately when trying to type Korean with the default Korean input method ibus-hangul.
Thanks. Did you also say some Indic languages were affected?
I think another idea is to revert the patch of forward-key-event: https://gitlab.gnome.org/GNOME/gnome-shell/commit/374caade4742405a402952a894f11ced77fe1b9b And then forward-key-event is completely disabled likes f28 but reverting the patch can fix the freezing key events in f29. This bug and bug #1611894 has the same root cause.
(In reply to Adam Williamson from comment #15) > Thanks. Did you also say some Indic languages were affected? I thought so, but ibus-typing-booster seems to be *not* default for any Indian languages. I tried an installation in Hindi and the default was inscript of ibus-m17n and not inscript of ibus-typing-booster.
I also tried a netinstall in Vietnamese. The Vietnamese input method ibus-bogo was installed by default, but not configured by default. I added it using the Gnome control centre manually. When trying to use it, I immediately ran into the endless loop problem caused by the broken forward-key-event implementation. Currently I know 3 input methods using forward-key-event: ibus-hangul, ibus-bogo, and ibus-typing-booster. They all run into this problem immediately. But only ibus-hangul is default (when installing in Korean).
At today's blocker meeting, there was no consensus on whether this should be a blocker for Fedora 29. However, we generally agreed that this is quite serious for the people that hit it, so I'm proposing it as a PrioritizedBug to get attention on it.
Discussed during the 2018-10-01 blocker review meeting: [1] The decision to delay the classification of this as a blocker bug and accept this bug as an "AcceptedFreezeException" was made as we had a hard time voting on this bug as it only breaks one language out of the box and we don't have consensus on the vote. We do acknowledge this as being Freeze Exception worthy and grant it that status as such. We will reconvene to vote on this bug at the next blocker review meeting. [1] https://meetbot.fedoraproject.org/fedora-blocker-review/2018-10-01/f29-blocker-review.2018-10-01-16.00.txt
I confirmed the following patches fix this bug: https://gitlab.gnome.org/GNOME/mutter/merge_requests/244/commits https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/247/commits
Discussed during the 2018-10-08 blocker review meeting: [1] The decision to classify this bug as an RejectedBlocker was made as it violates the following blocker criteria: "We agreed that while this is a bad bug, since it only affects one language that likely isn't a large percentage of Fedora's user base by default, it's not quite serious enough to be a blocker. It is already accepted as an FE, and we recommend Prioritized status (though it should be fixed today)" [1] https://meetbot-raw.fedoraproject.org/fedora-blocker-review/2018-10-08/f29-blocker-review.2018-10-08-16.00.log.txt
mutter-3.30.1-1.fc29 gnome-shell-extensions-3.30.1-1.fc29 gnome-shell-3.30.1-1.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-9e1f9f945d
gnome-shell-3.30.1-1.fc29, gnome-shell-extensions-3.30.1-1.fc29, mutter-3.30.1-1.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-9e1f9f945d
This LGTM, thank you. I would appreciate if others could confirm the fix too.
Checked with the latest F29 build with these updates. No issues with the above mentioned scenarios.
gnome-shell-3.30.1-1.fc29, gnome-shell-extensions-3.30.1-1.fc29, mutter-3.30.1-1.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.