Open rachelkang opened 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.
Description
IndicatorView is a cross-platform control used largely to indicate which view of a carousel a user is seeing. It is represented by a series of dots, one of which is highlighted to represent the current view.
Beyond just the decorative indication, however, these tiny dots are also interactive - the dots can be clicked on! However, the dots are usually very tiny and hard to click on, so it's an accessibility issue. And while the size of the dots can be increased to the minimum 44x44 - it takes away from the experience.
So what can we do? Here are some potential ideas:
Approach 1: Make the IndicatorView noninteractive
Perhaps it would be best to make the IndicatorView noninteractive entirely, and make it purely decorative, no exceptions.
Approach 2: Add a property to make the IndicatorView noninteractive
Perhaps there is utility in the interactive quality of IndicatorView. Maybe we can introduce a property to make it noninteractive and only decorative by default. But a property can be set to make it behave as it currently does should developers have a unique scenario
Approach 3: Attempt the iOS approach
IndicatorView is only inherent to the iOS platform - we have custom code to make it exist on the other platforms. So if we're copying iOS, perhaps we should copy the full scope of their control.
On iOS, the individual dots are not interactive - the entire IndicatorView, the series of dots as a single unit, is interactive. Users hold down and drag their finger left/right to navigate views.
Open to other ideas!
Steps to Reproduce
Link to public reproduction project repository
dotnet/maui
Version with bug
6.0.486 (current)
Last version that worked well
Unknown/Other
Affected platforms
iOS, Android, Windows, macOS
Affected platform versions
all
Did you find any workaround?
No response
Relevant log output
No response