option: del page anime

This commit is contained in:
niuhuan 2021-11-21 21:18:23 +08:00
parent a0f2c9377e
commit c5bafb455b
3 changed files with 51 additions and 22 deletions

View File

@ -12,6 +12,7 @@ import 'package:pikapika/basic/config/DownloadThreadCount.dart';
import 'package:pikapika/basic/config/FullScreenAction.dart'; import 'package:pikapika/basic/config/FullScreenAction.dart';
import 'package:pikapika/basic/config/FullScreenUI.dart'; import 'package:pikapika/basic/config/FullScreenUI.dart';
import 'package:pikapika/basic/config/KeyboardController.dart'; import 'package:pikapika/basic/config/KeyboardController.dart';
import 'package:pikapika/basic/config/NoAnimation.dart';
import 'package:pikapika/basic/config/PagerAction.dart'; import 'package:pikapika/basic/config/PagerAction.dart';
import 'package:pikapika/basic/config/Platform.dart'; import 'package:pikapika/basic/config/Platform.dart';
import 'package:pikapika/basic/config/Proxy.dart'; import 'package:pikapika/basic/config/Proxy.dart';
@ -70,6 +71,7 @@ class _InitScreenState extends State<InitScreen> {
await initAndroidSecureFlag(); await initAndroidSecureFlag();
await initDownloadThreadCount(); await initDownloadThreadCount();
await initConvertToPNG(); await initConvertToPNG();
await initNoAnimation();
await initVersion(); await initVersion();
autoCheckNewVersion(); autoCheckNewVersion();
// , token失效重新登录, 1 // , token失效重新登录, 1

View File

@ -14,6 +14,7 @@ import 'package:pikapika/basic/config/DownloadThreadCount.dart';
import 'package:pikapika/basic/config/FullScreenAction.dart'; import 'package:pikapika/basic/config/FullScreenAction.dart';
import 'package:pikapika/basic/config/FullScreenUI.dart'; import 'package:pikapika/basic/config/FullScreenUI.dart';
import 'package:pikapika/basic/config/KeyboardController.dart'; import 'package:pikapika/basic/config/KeyboardController.dart';
import 'package:pikapika/basic/config/NoAnimation.dart';
import 'package:pikapika/basic/config/PagerAction.dart'; import 'package:pikapika/basic/config/PagerAction.dart';
import 'package:pikapika/basic/config/ReaderDirection.dart'; import 'package:pikapika/basic/config/ReaderDirection.dart';
import 'package:pikapika/basic/config/ReaderType.dart'; import 'package:pikapika/basic/config/ReaderType.dart';
@ -45,6 +46,7 @@ class SettingsScreen extends StatelessWidget {
fullScreenActionSetting(), fullScreenActionSetting(),
volumeControllerSetting(), volumeControllerSetting(),
keyboardControllerSetting(), keyboardControllerSetting(),
noAnimationSetting(),
Divider(), Divider(),
shadowCategoriesSetting(), shadowCategoriesSetting(),
pagerActionSetting(), pagerActionSetting(),

View File

@ -13,6 +13,7 @@ import 'package:pikapika/basic/Method.dart';
import 'package:pikapika/basic/config/FullScreenAction.dart'; import 'package:pikapika/basic/config/FullScreenAction.dart';
import 'package:pikapika/basic/config/GalleryPreloadCount.dart'; import 'package:pikapika/basic/config/GalleryPreloadCount.dart';
import 'package:pikapika/basic/config/KeyboardController.dart'; import 'package:pikapika/basic/config/KeyboardController.dart';
import 'package:pikapika/basic/config/NoAnimation.dart';
import 'package:pikapika/basic/config/ReaderDirection.dart'; import 'package:pikapika/basic/config/ReaderDirection.dart';
import 'package:pikapika/basic/config/ReaderType.dart'; import 'package:pikapika/basic/config/ReaderType.dart';
import 'package:scrollable_positioned_list/scrollable_positioned_list.dart'; import 'package:scrollable_positioned_list/scrollable_positioned_list.dart';
@ -274,6 +275,11 @@ class _WebToonReaderState extends State<_WebToonReader> {
switch ("$event") { switch ("$event") {
case "UP": case "UP":
if (_current > 1) { if (_current > 1) {
if (noAnimation()) {
_itemScrollController.jumpTo(
index: _current - 2, // 1 position 1
);
} else {
if (DateTime.now().millisecondsSinceEpoch < _controllerTime) { if (DateTime.now().millisecondsSinceEpoch < _controllerTime) {
return; return;
} }
@ -283,9 +289,13 @@ class _WebToonReaderState extends State<_WebToonReader> {
duration: Duration(milliseconds: 400), duration: Duration(milliseconds: 400),
); );
} }
}
break; break;
case "DOWN": case "DOWN":
if (_current < widget.struct.images.length) { if (_current < widget.struct.images.length) {
if (noAnimation()) {
_itemScrollController.jumpTo(index: _current);
} else {
if (DateTime.now().millisecondsSinceEpoch < _controllerTime) { if (DateTime.now().millisecondsSinceEpoch < _controllerTime) {
return; return;
} }
@ -295,6 +305,7 @@ class _WebToonReaderState extends State<_WebToonReader> {
duration: Duration(milliseconds: 400), duration: Duration(milliseconds: 400),
); );
} }
}
break; break;
} }
} }
@ -622,19 +633,33 @@ class _GalleryReaderState extends State<_GalleryReader> {
switch ("$event") { switch ("$event") {
case "UP": case "UP":
if (_current > 1) { if (_current > 1) {
if (noAnimation()) {
_pageController.previousPage(
duration: Duration(milliseconds: 1),
curve: Curves.ease,
);
} else {
_pageController.previousPage( _pageController.previousPage(
duration: Duration(milliseconds: 400), duration: Duration(milliseconds: 400),
curve: Curves.ease, curve: Curves.ease,
); );
} }
}
break; break;
case "DOWN": case "DOWN":
if (_current < widget.struct.images.length) { if (_current < widget.struct.images.length) {
if (noAnimation()) {
_pageController.nextPage(
duration: Duration(milliseconds: 1),
curve: Curves.ease,
);
} else {
_pageController.nextPage( _pageController.nextPage(
duration: Duration(milliseconds: 400), duration: Duration(milliseconds: 400),
curve: Curves.ease, curve: Curves.ease,
); );
} }
}
break; break;
} }
} }