From 4911c5b11cb62b4ff940b25ff9a4e7cc7ea109d4 Mon Sep 17 00:00:00 2001 From: niuhuan Date: Tue, 18 Jan 2022 14:01:01 +0800 Subject: [PATCH] mouse touch scroll --- lib/basic/{Navigatior.dart => Navigator.dart} | 0 lib/main.dart | 4 +++- lib/screens/ComicInfoScreen.dart | 2 +- lib/screens/DownloadInfoScreen.dart | 2 +- lib/screens/components/ComicInfoCard.dart | 2 +- lib/screens/components/ComicTagsCard.dart | 2 +- lib/screens/components/LinkToComicInfo.dart | 2 +- .../components/MouseAndTouchScrollBehavior.dart | 12 ++++++++++++ 8 files changed, 20 insertions(+), 6 deletions(-) rename lib/basic/{Navigatior.dart => Navigator.dart} (100%) create mode 100644 lib/screens/components/MouseAndTouchScrollBehavior.dart diff --git a/lib/basic/Navigatior.dart b/lib/basic/Navigator.dart similarity index 100% rename from lib/basic/Navigatior.dart rename to lib/basic/Navigator.dart diff --git a/lib/main.dart b/lib/main.dart index 9266095..be96da6 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,7 +1,8 @@ import 'package:event/event.dart'; import 'package:flutter/material.dart'; import 'package:pikapika/screens/InitScreen.dart'; -import 'package:pikapika/basic/Navigatior.dart'; +import 'package:pikapika/basic/Navigator.dart'; +import 'package:pikapika/screens/components/MouseAndTouchScrollBehavior.dart'; import 'basic/config/Themes.dart'; @@ -36,6 +37,7 @@ class _PikapikaAppState extends State { @override Widget build(BuildContext context) { return MaterialApp( + scrollBehavior: mouseAndTouchScrollBehavior, theme: currentThemeData(), darkTheme: currentDarkTheme(), navigatorObservers: [navigatorObserver, routeObserver], diff --git a/lib/screens/ComicInfoScreen.dart b/lib/screens/ComicInfoScreen.dart index 14019fc..225fce8 100644 --- a/lib/screens/ComicInfoScreen.dart +++ b/lib/screens/ComicInfoScreen.dart @@ -3,7 +3,7 @@ import 'package:pikapika/basic/Common.dart'; import 'package:pikapika/basic/Cross.dart'; import 'package:pikapika/basic/Entities.dart'; import 'package:pikapika/screens/ComicsScreen.dart'; -import 'package:pikapika/basic/Navigatior.dart'; +import 'package:pikapika/basic/Navigator.dart'; import 'package:pikapika/screens/components/CommentMainType.dart'; import 'package:pikapika/screens/components/ItemBuilder.dart'; import 'package:pikapika/basic/Method.dart'; diff --git a/lib/screens/DownloadInfoScreen.dart b/lib/screens/DownloadInfoScreen.dart index 2c54dc5..5a06bdd 100644 --- a/lib/screens/DownloadInfoScreen.dart +++ b/lib/screens/DownloadInfoScreen.dart @@ -2,7 +2,7 @@ import 'dart:convert'; import 'package:flutter/material.dart'; import 'package:pikapika/basic/Entities.dart'; -import 'package:pikapika/basic/Navigatior.dart'; +import 'package:pikapika/basic/Navigator.dart'; import 'package:pikapika/basic/Method.dart'; import 'ComicInfoScreen.dart'; import 'DownloadExportToFileScreen.dart'; diff --git a/lib/screens/components/ComicInfoCard.dart b/lib/screens/components/ComicInfoCard.dart index f45ef99..f5677df 100644 --- a/lib/screens/components/ComicInfoCard.dart +++ b/lib/screens/components/ComicInfoCard.dart @@ -4,7 +4,7 @@ import 'package:pikapika/basic/Cross.dart'; import 'package:pikapika/basic/Entities.dart'; import 'package:pikapika/basic/Method.dart'; import 'package:pikapika/screens/SearchScreen.dart'; -import 'package:pikapika/basic/Navigatior.dart'; +import 'package:pikapika/basic/Navigator.dart'; import '../ComicsScreen.dart'; import 'Images.dart'; diff --git a/lib/screens/components/ComicTagsCard.dart b/lib/screens/components/ComicTagsCard.dart index 03576e1..027e206 100644 --- a/lib/screens/components/ComicTagsCard.dart +++ b/lib/screens/components/ComicTagsCard.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:pikapika/screens/ComicsScreen.dart'; -import 'package:pikapika/basic/Navigatior.dart'; +import 'package:pikapika/basic/Navigator.dart'; // 漫画tag class ComicTagsCard extends StatelessWidget { diff --git a/lib/screens/components/LinkToComicInfo.dart b/lib/screens/components/LinkToComicInfo.dart index ddf5497..db787f8 100644 --- a/lib/screens/components/LinkToComicInfo.dart +++ b/lib/screens/components/LinkToComicInfo.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'package:pikapika/basic/Navigatior.dart'; +import 'package:pikapika/basic/Navigator.dart'; import '../ComicInfoScreen.dart'; diff --git a/lib/screens/components/MouseAndTouchScrollBehavior.dart b/lib/screens/components/MouseAndTouchScrollBehavior.dart new file mode 100644 index 0000000..481226a --- /dev/null +++ b/lib/screens/components/MouseAndTouchScrollBehavior.dart @@ -0,0 +1,12 @@ +import 'dart:ui'; +import 'package:flutter/material.dart'; + +final mouseAndTouchScrollBehavior = MouseAndTouchScrollBehavior(); + +class MouseAndTouchScrollBehavior extends MaterialScrollBehavior { + @override + Set get dragDevices => { + PointerDeviceKind.touch, + PointerDeviceKind.mouse, + }; +}