godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
89.17k stars 20.21k forks source link

Inputting any keyboard dead keys softlocks the script editor #85664

Open adamscott opened 9 months ago

adamscott commented 9 months ago

Godot version

v4.2.stable.official [46dc27791]

System information

Godot v4.2.stable - Fedora Linux 39 (Workstation Edition) - Wayland - Vulkan (Forward+) - dedicated AMD Radeon RX Vega (RADV VEGA10) () - AMD Ryzen 7 5800X 8-Core Processor (16 Threads)

Issue description

When inputting a keyboard deadkey, the script editor softlocks. The editor is still responsive and you can change the caret position. But you cannot enter any text in the editor.

Godot 4.2

Capture vidéo du 2023-12-02 10-44-53.webm

Godot 4.1.3 (same thing)

Capture d’écran du 2023-12-02 10-40-34

Godot 4.0.4 (same thing, but the deadkey appears)

Capture d’écran du 2023-12-02 10-40-13

Steps to reproduce

  1. Open the script editor
  2. Enter a keyboard deadkey
  3. Find that the script editor is softlocked, cannot enter any more keys

Minimal reproduction project

n/a

Zireael07 commented 9 months ago

Two such (or extremely similar) issues reported in last week - what is your ibus version?

adamscott commented 9 months ago

@Zireael07 According to ibus version, it is IBus 1.5.29-rc2.

HolonProduction commented 9 months ago

As stated in #82338 downgrade IBus until they fix the issue. The dead key not being previewed is a regression from the multi threading of the scene tree (this is where the error in the console comes from). See #85306

That said maybe we should change the behavior of the display server to not straight out ignore all input events until the event, that IME finished comes in (IBus doesn't send it right now). This is why Godot becomes completely unusable but other apps only have problems inserting the dead key.

adamscott commented 9 months ago

@HolonProduction I reported the issue to IBus, just to make sure.

HolonProduction commented 9 months ago

I think this is already part of ibus/ibus#2585 (I added the information there too). But maybe the issue gets more exposure this way :shrug:. Also I didn't catch the journalctl message. Maybe add it to the other issue as well.

vnen commented 7 months ago

The ibus bug is fixed already, but it will only be solved truly when 1.5.30 is released with the fix (don't know when that'll happen). For now at least I'll be using the Git version.

It seems there is a workaround but I haven't tried it:

The workaround is to switch the input focus two times after you type dead_acute + o.

saulopz commented 4 months ago

I have the same problem on Ubuntu. Both in the editor and in the IDE, Godot no longer responds to keyboard input when I type dead keys. One issue is that the problem is only present in godot 4. I tested it just now in godot 3.5 and this version does not have this problem. I did a new fresh installation from scratch using Ubuntu 24.04 to see if the problem was my installation, but the problem persists. I tested on Xorg and Wayland.

My configuration: OS: Ubuntu 24.04 LTS x86_64 Host: Nitro AN515-57 V1.20 Kernel: 6.8.0-31-generic DE: GNOME 46.0 CPU: 11th Gen Intel i7-11800H (16) @ 4.600GHz GPU: NVIDIA GeForce RTX 3050 Mobile GPU: Intel TigerLake-H GT1 [UHD Graphics] Memory: 4958MiB / 15767MiB

vPumpking commented 3 months ago

Yeah, I still have the same

HolonProduction commented 3 months ago

The ibus bug is fixed already, but it will only be solved truly when 1.5.30 is released with the fix (don't know when that'll happen). For now at least I'll be using the Git version.

1.5.30 was released, but what might become an issue, is that the latest ubuntu lts seems to ship with an effected version: image

Not sure what ubuntu's update policies are on lts releases, but I wouldn't count on them updating it.

akien-mga commented 1 month ago

I would recommend that an affected Ubuntu 24.04 user reports this bug to Canonical, they need to update their ibus version.

Upstream ibus bug report: https://github.com/ibus/ibus/issues/2585