Skip to content

Commit 2249c4d

Browse files
authored
Fix CarouselView demo page is not functional using mouse scroll (flutter#166512)
### Description This PR seeks to refine the CarouselView API doc sample for Web and Desktop platforms. On these platforms, mouse dragging gestures do not provide natural behavior similar to other desktop applications. This PR will improve the documentation by suggesting appropriate approaches to users (either using Shift + mouse wheel to scroll the view horizontally or referring to the instructions for overriding the default ScrollBehavior if they still want to implement dragging on these platforms). ### Related issue Fix flutter#165265 ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview [Tree Hygiene]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md [test-exempt]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests [Flutter Style Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md [Features we expect every widget to implement]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md [Data Driven Fixes]: https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
1 parent b9c2634 commit 2249c4d

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

packages/flutter/lib/src/material/carousel.dart

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,15 @@ import 'theme.dart';
107107
/// Here is an example to show different carousel layouts that [CarouselView]
108108
/// and [CarouselView.weighted] can build.
109109
///
110+
/// On desktop and web running on desktop platforms, dragging to scroll with a mouse
111+
/// is disabled by default to align with natural behavior.
112+
///
113+
/// To further align expected behavior like this, mouse input can scroll horizontally
114+
/// by pressing the shift key while scrolling with the mouse wheel.
115+
///
116+
/// This key-driven behavior is dictated by the [ScrollBehavior.pointerAxisModifiers],
117+
/// while [ScrollBehavior.dragDevices] manages what devices can drag a scrollable.
118+
///
110119
/// ** See code in examples/api/lib/material/carousel/carousel.0.dart **
111120
/// {@end-tool}
112121
///

0 commit comments

Comments
 (0)