The MaximumVisible property in the IndicatorView is not working correctly
- Dominant language
- C#
- Stars
- 23.3k
- Forks
- 2k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 290
Description
### Description
If the indicator is not limited in the CarouselView, it continues infinitely on Android, while on iOS it automatically sets a maximum of 10 visible indicators, not displaying them fully, and the indicator change animation is visible.
But if it's limited using MaximumVisible, it simply cuts off the last points. Once we reach the limit, the indicator stops updating and stays on the last point just if there are more items in carousel.
If there are too many items(Android)
https://github.com/user-attachments/assets/c1682336-f6f4-4607-8f97-c8626500c85c
If there are too many items(iOS) I think it should be like this
https://github.com/user-attachments/assets/79da1ec3-ed98-4e5d-8e32-e1595cc625b4
If items count 10 and IndicatorViews MaximumVisible property is 5(Android)
https://github.com/user-attachments/assets/27e57b74-71e4-4ae1-a8be-04c0cefa32e1
If items count 10 and IndicatorViews MaximumVisible property is 5(iOS)
https://github.com/user-attachments/assets/717912a2-42a5-4cf4-ab5c-4907821d9a31
### Steps to Reproduce
1. Create Maui app
2. Create CarouselView
a) with items count near 50
b) with items count more than MaximumVisible property in IndicatorView
3. Create IndicatorView
a) without MaximumVisible
b) with MaximumVisible, let it be 5
4. Connect them
5. Swipe to last one
### Link to public reproduction project repository
https://github.com/EugeneTryF/IndicatorViewIssue
### Version with bug
9.0.40 SR4
### Is this a regression from previous behavior?
Not sure, did not test other versions
### Last version that worked well
Unknown/Other
### Affected platforms
Android, iOS, I was *not* able test on other platforms
### Affected platform versions
Android 9 API 28, Android 15 API 35, iOS 16.0, iOS 18.3
### Did you find any workaround?
_No response_
### Relevant log output
```shell
```
Contributor guide
Research direction
Start with the linked IndicatorViewIssue reproduction project and trace how CarouselView is connected to IndicatorView on Android and iOS. Reproduce the cases with many items and MaximumVisible set to 5, then compare the indicator behavior with the expected screenshots; done means indicators continue updating past the visible limit without being cut off.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100