dotnet / maui

.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
https://dot.net/maui
MIT License
22.26k stars 1.76k forks source link

[Android] External keyboard moves focus with Enter between entries #25926

Open Starchm opened 3 days ago

Starchm commented 3 days ago

Description

When using the on-screen/softkeyboard and pressing the Enter button in an entry, the focus does not move to the next entry. When using an external keyboard and pressing the enter on that, the focus moves to the next entry.

I would expect the same outcome of these two actions, which would be preferably to NOT move the focus. I tried to set the imeOptions to Done on the entry, but it did not change anything.

Atleast a workaround to disable this functionality of the keyboard would be nice.

At the same time i checked a windows build of the same app, and the enter does not move the focus there too, so i guess it would/should be the default behavior.

(The issue can be reprod with sharing the screen of the android device to the desktop with scrcpy (or visor) and pressing the physical keyboard of pc while the shared screen and the entry is in the focus.)

Steps to Reproduce

  1. Clone the repo.
  2. Click in the first entry and press Enter on the physical/external keyboard. Actual outcome: Focus moved to second entry. Expected outcome: Focus stays in the first entry.

Link to public reproduction project repository

https://github.com/Starchm/mauiandroidfocusissue

Version with bug

9.0.0 GA

Is this a regression from previous behavior?

Not sure, did not test other versions

Last version that worked well

Unknown/Other

Affected platforms

Android

Affected platform versions

Android 11 and 14, not sure about others

Did you find any workaround?

None

Relevant log output