Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] Keyboard Bugs and Xamarin.Forms migration concerns #11703

Closed
14 of 16 tasks
Tracked by #14021
PureWeen opened this issue Nov 28, 2022 · 3 comments · Fixed by #16530
Closed
14 of 16 tasks
Tracked by #14021

[Bug] Keyboard Bugs and Xamarin.Forms migration concerns #11703

PureWeen opened this issue Nov 28, 2022 · 3 comments · Fixed by #16530
Assignees
Labels
area-keyboard Keyboard, soft keyboard fixed-in-8.0.0-rc.1.9171 Look for this fix in 8.0.0-rc.1.9171 p/1 Work that is important, and has been scheduled for release in this or an upcoming sprint partner/cat 😻 this is an issue that impacts one of our partners or a customer our advisory team is engaged with t/bug Something isn't working User Story A single user-facing feature. Can be grouped under an epic.
Milestone

Comments

@PureWeen
Copy link
Member

PureWeen commented Nov 28, 2022

Description

This issue is an organization of current issues/PRs/specs related to keyboard management. The keyboard management inside Xamarin.Forms was very patch work and for the most part completely broke accessibility. A lot of the keyboard "features" were not brought over to .NET MAUI until we could assess the validity of the approach and ensure valid accessible platform experiences.

Hitting Enter or Next on keyboard does not always move to next entry field when you have the ReturnType set to Next

  • Android
    • This behavior is built into Android and will be fixed on an upcoming release.
  • iOS
    • This behavior is not built into iOS so we are still looking at the best way to provide this behavior.

Software Keyboard covers the entry and should scroll the selected entry into view

Software Keyboard does not open when Entry View's Focus is set to True Programmatically

Soft Keyboard does not Close when Entry View's Focus is set to False Programmatically

  • For Android we currently won't fix this in the same way that it works on XF. In order for this to work focus has to go somewhere. In XF the root page was set to focusable. This would cause the PageRenderer to gain the focus. Making a non-interactive element focusable is hostile to keyboard users and anyone using TalkBack. If you want to unfocus an entry then you need to give focus to some other logically interactive element.
  • iOS seems to handle the concept of "unfocusing" any elements in such a way that's still accessible. When an entry becomes "unfocused" iOS appears to remember where the user left off. Once the keyboard/Voice Over user proceeds, then iOS continues where they left off.
    • One thing to note is that with iOS you open/close the keyboard by setting the current responder (foocusing and unfocusing). So, there isn't just a general open/close keyboard. It all has to be done within the context of a specific field.

Tapping off of an Entry unfocuses the entry and closes the keyboard

  • Android - In XF this was achieved by making the root elements focusable and clickable. This behavior is hostile to TalkBack users because it causes the Page to register as a clickable element. When a hard of seeing user would use TalkBack the entire page would become selected and tell the user to "double tap to activate".
  • iOS - We left this behavior for iOS because this behavior doesn't appear to break accessibility on iOS. Adding a UITapGestureRecognizer to the underlying page doesn't appear to affect VoiceOver

Workarounds

Specs

#12004

@hartez hartez moved this to In Progress in MAUI SDK Ongoing Nov 28, 2022
@PureWeen PureWeen added this to the Backlog milestone Nov 28, 2022
@ghost
Copy link

ghost commented Nov 28, 2022

We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process.

@Eilon Eilon added the legacy-area-controls Label, Button, CheckBox, Slider, Stepper, Switch, Picker, Entry, Editor label Nov 28, 2022
@riccardominato
Copy link

Shouldn't #9458 be covered by this issue? It messes up Grid layouts when keyboard appears.

@PureWeen PureWeen added the t/bug Something isn't working label Dec 9, 2022
@PureWeen PureWeen changed the title [Spec] Keyboard interactions [Bug] Keyboard Bugs and Xamarin.Forms migration concerns Dec 9, 2022
@mikeparker104 mikeparker104 added the partner/cat 😻 this is an issue that impacts one of our partners or a customer our advisory team is engaged with label Dec 14, 2022
@pulmuone
Copy link

I am using Android Entry Keyboard bug fixed like this.
https://github.com/pulmuone/MauiAndroidKeyboard

@samhouts samhouts added the p/1 Work that is important, and has been scheduled for release in this or an upcoming sprint label Dec 17, 2022
@samhouts samhouts added the Epic Groups multiple user stories. Can be grouped under a theme. label Jan 9, 2023
@PureWeen PureWeen modified the milestones: Backlog, .NET 7 + Servicing Jan 11, 2023
@samhouts samhouts added User Story A single user-facing feature. Can be grouped under an epic. and removed Epic Groups multiple user stories. Can be grouped under a theme. labels Apr 6, 2023
@Redth Redth modified the milestones: .NET 8 Planning, .NET 8 Jul 11, 2023
@samhouts samhouts added area-keyboard Keyboard, soft keyboard and removed legacy-area-controls Label, Button, CheckBox, Slider, Stepper, Switch, Picker, Entry, Editor labels Jul 12, 2023
@samhouts samhouts removed this from the .NET 8 milestone Jul 12, 2023
@samhouts samhouts added this to the .NET 8 GA milestone Jul 12, 2023
@PureWeen PureWeen moved this from Todo to In Progress in MAUI SDK Ongoing Aug 8, 2023
@github-project-automation github-project-automation bot moved this from In Progress to Done in MAUI SDK Ongoing Aug 22, 2023
@samhouts samhouts added the fixed-in-8.0.0-rc.1.9171 Look for this fix in 8.0.0-rc.1.9171 label Sep 12, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Oct 12, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-keyboard Keyboard, soft keyboard fixed-in-8.0.0-rc.1.9171 Look for this fix in 8.0.0-rc.1.9171 p/1 Work that is important, and has been scheduled for release in this or an upcoming sprint partner/cat 😻 this is an issue that impacts one of our partners or a customer our advisory team is engaged with t/bug Something isn't working User Story A single user-facing feature. Can be grouped under an epic.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants