AdaptiveScrollbar class

Adaptive desktop-style scrollbar.

To add a scrollbar, simply wrap the widget that contains your ScrollView object in a AdaptiveScrollbar and specify the ScrollController of your ScrollView.

The scrollbar is placed on the specified ScrollbarPosition and tracks the scrolls only of its ScrollView object, via the specified ScrollController.

Inheritance

Constructors

AdaptiveScrollbar({required Widget child, required ScrollController controller, ScrollbarPosition position = ScrollbarPosition.right, double width = 16.0, double? sliderHeight, Widget? sliderChild, Color sliderDefaultColor = Colors.blueGrey, Color? sliderActiveColor, Color underColor = Colors.white, EdgeInsetsGeometry underSpacing = const EdgeInsets.all(0.0), EdgeInsetsGeometry sliderSpacing = const EdgeInsets.all(2.0), double scrollToClickDelta = 100.0, int scrollToClickFirstDelay = 400, int scrollToClickOtherDelay = 100, BoxDecoration? underDecoration, BoxDecoration? sliderDecoration, BoxDecoration? sliderActiveDecoration})
Wraps your child widget that contains ScrollView object, takes the position indicated by position and tracks scrolls only of this ScrollView, via the specified controller.

Properties

child Widget
Widget that contains your ScrollView.
final
controller ScrollController
ScrollController that attached to ScrollView object.
final
hashCode int
The hash code for this object.
no setterinherited
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
position ScrollbarPosition
Position of AdaptiveScrollbar on the screen.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
scrollToClickDelta double
Offset of the slider in the direction of the click.
final
scrollToClickFirstDelay int
Duration of the first delay between scrolls in the click direction, in milliseconds.
final
scrollToClickOtherDelay int
Duration of the others delays between scrolls in the click direction, in milliseconds.
final
sliderActiveColor Color
Active slider color.
latefinal
sliderActiveDecoration BoxDecoration
Slider decoration during pressing.
latefinal
sliderChild Widget?
Child widget for slider.
final
sliderDecoration BoxDecoration
Slider decoration.
latefinal
sliderDefaultColor Color
Default slider color.
final
sliderHeight double?
Height of slider. If you set this value, there will be this height. If not set, the height will be calculated based on the content, as usual
final
sliderSpacing EdgeInsetsGeometry
Slider spacing from bottom. If you choose ScrollbarPosition.top or ScrollbarPosition.bottom position, the scrollbar will be rotated 90 degrees, and the top will be on the left. Don't forget this when specifying the sliderSpacing.
final
underColor Color
Under the slider part of the scrollbar color.
final
underDecoration BoxDecoration
Under the slider part of the scrollbar decoration.
latefinal
underSpacing EdgeInsetsGeometry
Under the slider part of the scrollbar spacing. If you choose ScrollbarPosition.top or ScrollbarPosition.bottom position, the scrollbar will be rotated 90 degrees, and the top will be on the left. Don't forget this when specifying the underSpacing.
final
width double
Width of all AdaptiveScrollBar.
final

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → _AdaptiveScrollbarState
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited