|
| 1 | +## What does this PR do? |
| 2 | + |
| 3 | +<!-- **Please provide a clear and concise description of the changes in this PR.** Example: --> |
| 4 | + |
| 5 | +- Adds/improves functionality for the carousel widget |
| 6 | +- Fixes bugs or issues |
| 7 | +- Adds new features like autoplay, infinite scrolling, etc. |
| 8 | +- Optimizes performance or enhances accessibility |
| 9 | + |
| 10 | +### **Checklist** |
| 11 | + |
| 12 | +#### Code Changes |
| 13 | +- [ ] I have added new features to the carousel widget (e.g., autoplay, indicator customization, etc.) |
| 14 | +- [ ] I have fixed existing issues (e.g., performance, edge cases) |
| 15 | +- [ ] I have improved the overall structure or optimized the codebase |
| 16 | + |
| 17 | +#### Documentation |
| 18 | +- [ ] I have updated the README file or relevant documentation with the changes |
| 19 | +- [ ] I have added code usage examples or updated existing examples to reflect changes |
| 20 | +- [ ] I have updated the package version in the `pubspec.yaml` file |
| 21 | + |
| 22 | +#### Testing |
| 23 | + |
| 24 | +**General Tests** |
| 25 | +- [ ] The carousel widget works correctly with default settings |
| 26 | +- [ ] The carousel can handle a dynamic number of children (images, texts, etc.) |
| 27 | +- [ ] The carousel supports custom widgets for carousel items |
| 28 | + |
| 29 | +**Autoplay Feature** |
| 30 | +- [ ] Autoplay starts when enabled and stops when disabled |
| 31 | +- [ ] Autoplay pauses when the user interacts (swipes/taps) with the carousel |
| 32 | +- [ ] Autoplay resumes after interaction |
| 33 | + |
| 34 | +**Indicators and Customization** |
| 35 | +- [ ] The carousel displays indicators correctly and updates when navigating through slides |
| 36 | +- [ ] Custom indicators (colors, shapes, positions) are rendered correctly |
| 37 | +- [ ] Custom animations or transitions between slides work as expected |
| 38 | + |
| 39 | +**Looping and Scrolling** |
| 40 | +- [ ] Infinite loop mode works smoothly without any jumps or glitches |
| 41 | +- [ ] The carousel scrolls smoothly horizontally and/or vertically |
| 42 | +- [ ] Pagination and snapping behavior works as expected |
| 43 | + |
| 44 | +**Accessibility** |
| 45 | +- [ ] The carousel widget supports screen readers (e.g., `Semantics` labels added) |
| 46 | +- [ ] Users can navigate between items using a keyboard (if necessary) |
| 47 | + |
| 48 | +**Responsiveness** |
| 49 | +- [ ] The carousel adapts to different screen sizes (mobile, tablet, desktop) |
| 50 | +- [ ] The carousel responds correctly to device orientation changes |
| 51 | + |
| 52 | +**Error Handling** |
| 53 | +- [ ] The carousel handles empty/null items gracefully |
| 54 | +- [ ] The carousel handles large data sets without crashes or performance drops |
| 55 | + |
| 56 | +#### Performance |
| 57 | +- [ ] I ran performance tests to ensure no regressions |
| 58 | +- [ ] The carousel renders efficiently, even with a large number of items |
| 59 | + |
| 60 | +### How did you verify your code works? |
| 61 | + |
| 62 | +<!-- **Please explain how you tested the code changes.** Example: --> |
| 63 | + |
| 64 | +- I have written unit tests covering the new features |
| 65 | +- I ran manual tests to check various carousel configurations (autoplay, infinite loop, custom widgets) |
| 66 | +- I verified the carousel on different devices and screen sizes |
| 67 | +- All tests pass locally (`flutter test`) |
0 commit comments