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
21.95k stars 1.7k forks source link

Additional iOS Keyboard Next Preference #12968

Open tj-devel709 opened 1 year ago

tj-devel709 commented 1 year ago

Description

This PR https://github.com/dotnet/maui/pull/11914 makes it possible to move on to the next UITextView or UITextField when pressing "Next" on an Entry or Editor with the ReturnType="Next".

This PR implements similar behavior as WinUI and Xamarin.Forms as it will search for the next view to focus by Logical Order incorporating Z-Indexes. However, Android prioritizes Visual Order rather than logical order.

This proposal is to add a property that would allow the user to specify which type of order they would like to follow on a Next press or tab when using iOS. Perhaps Android users could also have an option to specify they would like to sort by Logical Order.

This branch has a decent start for the visual order implementation: https://github.com/tj-devel709/maui/tree/KeyboardNextReturnType-IntricateRecursion

(Public) API Changes

Perhaps a top-level xaml property that allow a user to select which type of order they would like to follow.

Property: "TabSort" Enums: Logical, Visual, Default (Visual for Android and Logical for other platforms)

Usage Scenarios

<Layout TabSort="Logical">
    ...
</Layout>

Backward Compatibility

If we have a default enum value, there should not be any breaking changes with this

Difficulty

Medium

ghost commented 1 year ago

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.