Files
PiliPlus/lib/common/widgets/scroll_behavior.dart
2026-06-05 10:54:22 +08:00

44 lines
925 B
Dart

import 'dart:io' show Platform;
import 'package:flutter/gestures.dart' show PointerDeviceKind;
import 'package:flutter/material.dart';
class CustomScrollBehavior extends MaterialScrollBehavior {
const CustomScrollBehavior();
@override
Widget buildScrollbar(
BuildContext context,
Widget child,
ScrollableDetails details,
) => child;
@override
Widget buildOverscrollIndicator(
BuildContext context,
Widget child,
ScrollableDetails details,
) {
if (Platform.isIOS) {
return child;
}
return StretchingOverscrollIndicator(
axisDirection: details.direction,
clipBehavior: details.decorationClipBehavior ?? .hardEdge,
child: child,
);
}
@override
Set<PointerDeviceKind> get dragDevices => desktopDragDevices;
}
const Set<PointerDeviceKind> desktopDragDevices = {
.touch,
.stylus,
.invertedStylus,
.trackpad,
.unknown,
.mouse,
};