CarouselView SnapPointsType not working on Windows
- Dominant language
- C#
- Stars
- 23.3k
- Forks
- 2k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 290
Description
### Description
When setting `SnapPointsType` to `MandatorySingle` on a `CarouselView`, it won't snap / stop on the next or previous item.
When setting it to `Mandatory`, I also can't detect changes in its behaviour.
I suspect because of this, the `SnapPointsAlignment` property also doesn't work.
https://user-images.githubusercontent.com/45478482/164375632-18fc3e5e-8997-48f5-8207-9eae5b3cd2f0.mp4
### Steps to Reproduce
1. Make sure you have a touchscreen available (due to #6152)
2. Download this repro project
[CarouselViewPositionBug.zip](https://github.com/dotnet/maui/files/8524501/CarouselViewPositionBug.zip)
3. Start debugging in Windows.
3. open `MainPage.xaml` and CTRL+F for `ItemSwiper`.
4. Play around with the `SnapPointsType` and/or the `SnapPointsAlignment` property, you'll see that nothing really changes.
### Version with bug
Release Candidate 1 (current)
### Last version that worked well
Unknown/Other
### Affected platforms
Windows
### Affected platform versions
Windows latest
### Did you find any workaround?
_No response_
### Relevant log output
_No response_
Contributor guide
Research direction
Start with the attached CarouselViewPositionBug.zip repro on Windows and inspect MainPage.xaml around ItemSwiper. Run it with a touchscreen, compare MandatorySingle and Mandatory with SnapPointsAlignment, then trace the CarouselView behavior on Windows. Done means the configured snap type and alignment visibly affect the next or previous item position.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- desktop, frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100