opt scroll physics

Signed-off-by: dom <githubaccount56556@proton.me>
This commit is contained in:
dom
2026-06-20 13:31:28 +08:00
parent 452b54d124
commit 480bdffdaa
59 changed files with 210 additions and 195 deletions

View File

@@ -3,6 +3,10 @@ import 'dart:io' show Platform;
import 'package:flutter/gestures.dart' show PointerDeviceKind;
import 'package:flutter/material.dart';
const _clampingPhysics = ClampingScrollPhysics();
const _bouncingPhysics = BouncingScrollPhysics();
const _bouncingDesktopPhysics = BouncingScrollPhysics(decelerationRate: .fast);
class CustomScrollBehavior extends MaterialScrollBehavior {
const CustomScrollBehavior();
@@ -29,6 +33,17 @@ class CustomScrollBehavior extends MaterialScrollBehavior {
return child;
}
@override
ScrollPhysics getScrollPhysics(BuildContext context) {
if (Platform.isIOS) {
return _bouncingPhysics;
}
if (Platform.isMacOS) {
return _bouncingDesktopPhysics;
}
return _clampingPhysics;
}
@override
Set<PointerDeviceKind> get dragDevices => desktopDragDevices;
}