godotengine / godot

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

LineEdit and SpinBox don't accept input from on-screen keyboards a majority of the time on Android Web #99602

Open imp0s5ible opened 5 days ago

imp0s5ible commented 5 days ago

Tested versions

v4.3.stable.official [77dcf97d8] v4.4.dev5.official [9e6098432]

System information

Galaxy A52s 5G - One UI 6.1 - Samsung Keyboard 5.8.20.7 - GBoard 14.8.05.686567880-release-arm64-v8a - Android 14 Build/UP1A.231005.007 - Kernel 5.4.254 - Brave 1.73.89, Chromium 131.0.6778.69

Issue description

On the web export of a Godot project opened in an Android browser, LineEdit and SpinBox elements either do not react to on-screen keyboard input or react to it erratically, dumping previously typed text when certain keys are pressed. The exact behavior is difficult to circumscribe as its reaction to any keypress seems to depend on a number of factors such as pervious input, keyboard used etc., but here are some of the observations I made:

https://github.com/user-attachments/assets/062a2c2f-aef1-48cf-8170-d7ac5f4b2db0

Steps to reproduce

  1. Download the MRP
  2. Export it to web
  3. Host the web export on a server
  4. Access the game on an Android phone browser
  5. Try to use any of the LineEdit/SpinBox inputs with different on-screen keyboards

Additionally you should also access the same export on a desktop browser and verify that inputs do work properly there

Minimal reproduction project (MRP)

line_edit_bug_web_android.zip

The MRP is also hosted for quick access from mobile (running on v4.3.stable.official): https://godot-bugtest-html.vercel.app/