MyCustomScrollBehavior class
Custom Scroll Behavior to enable both touch and mouse devices for scrolling.
This class extends MaterialScrollBehavior and overrides the dragDevices getter to explicitly specify that both touch and mouse devices can trigger scrolling. This is useful for ensuring a consistent scrolling experience across touchscreens and non-touch devices (e.g., desktops with a mouse).
Example usage:
To apply this custom scroll behavior globally in your app, you can set it in the MaterialApp widget like this:
MaterialApp(
scrollBehavior: MyCustomScrollBehavior(), // Apply custom scroll behavior
home: MyHomePage(),
);
- Inheritance
-
- Object
- ScrollBehavior
- MaterialScrollBehavior
- MyCustomScrollBehavior
Constructors
Properties
-
dragDevices
→ Set<
PointerDeviceKind> -
The device kinds that the scrollable will accept drag gestures from.
no setteroverride
- hashCode → int
-
The hash code for this object.
no setterinherited
-
pointerAxisModifiers
→ Set<
LogicalKeyboardKey> -
A set of LogicalKeyboardKeys that, when any or all are pressed in
combination with a PointerDeviceKind.mouse pointer scroll event, will
flip the axes of the scroll input.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
buildOverscrollIndicator(
BuildContext context, Widget child, ScrollableDetails details) → Widget -
Applies a GlowingOverscrollIndicator to the child widget on
TargetPlatform.android and TargetPlatform.fuchsia.
inherited
-
buildScrollbar(
BuildContext context, Widget child, ScrollableDetails details) → Widget -
Applies a RawScrollbar to the child widget on desktop platforms.
inherited
-
copyWith(
{bool? scrollbars, bool? overscroll, Set< PointerDeviceKind> ? dragDevices, MultitouchDragStrategy? multitouchDragStrategy, Set<LogicalKeyboardKey> ? pointerAxisModifiers, ScrollPhysics? physics, TargetPlatform? platform, ScrollViewKeyboardDismissBehavior? keyboardDismissBehavior}) → ScrollBehavior -
Creates a copy of this ScrollBehavior, making it possible to
easily toggle
scrollbar
andoverscrollIndicator
effects.inherited -
getKeyboardDismissBehavior(
BuildContext context) → ScrollViewKeyboardDismissBehavior -
The default keyboard dismissal behavior for ScrollView widgets.
inherited
-
getMultitouchDragStrategy(
BuildContext context) → MultitouchDragStrategy -
Configure the multi-finger drag strategy on multi-touch devices.
inherited
-
getPlatform(
BuildContext context) → TargetPlatform -
The platform whose scroll physics should be implemented.
inherited
-
getScrollPhysics(
BuildContext context) → ScrollPhysics -
The scroll physics to use for the platform given by getPlatform.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
shouldNotify(
covariant ScrollBehavior oldDelegate) → bool -
Called whenever a ScrollConfiguration is rebuilt with a new
ScrollBehavior of the same runtimeType.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
velocityTrackerBuilder(
BuildContext context) → GestureVelocityTrackerBuilder -
Specifies the type of velocity tracker to use in the descendant
Scrollables' drag gesture recognizers, for estimating the velocity of a
drag gesture.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited