From 864980079bef09893b95348771f039896f9f6251 Mon Sep 17 00:00:00 2001 From: nyne Date: Fri, 24 Jan 2025 11:06:26 +0800 Subject: [PATCH] Remove text_scroll & Improve layout --- lib/components/layout.dart | 29 +++++++++++++++++++---------- pubspec.lock | 8 -------- pubspec.yaml | 1 - 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lib/components/layout.dart b/lib/components/layout.dart index 36b903b..51351c2 100644 --- a/lib/components/layout.dart +++ b/lib/components/layout.dart @@ -2,7 +2,10 @@ part of 'components.dart'; class SliverGridViewWithFixedItemHeight extends StatelessWidget { const SliverGridViewWithFixedItemHeight( - {required this.delegate, required this.maxCrossAxisExtent, required this.itemHeight, super.key}); + {required this.delegate, + required this.maxCrossAxisExtent, + required this.itemHeight, + super.key}); final SliverChildDelegate delegate; @@ -62,7 +65,8 @@ class SliverGridDelegateWithFixedHeight extends SliverGridDelegate { @override bool shouldRelayout(covariant SliverGridDelegate oldDelegate) { if (oldDelegate is! SliverGridDelegateWithFixedHeight) return true; - if (oldDelegate.maxCrossAxisExtent != maxCrossAxisExtent || oldDelegate.itemHeight != itemHeight) { + if (oldDelegate.maxCrossAxisExtent != maxCrossAxisExtent || + oldDelegate.itemHeight != itemHeight) { return true; } return false; @@ -70,28 +74,29 @@ class SliverGridDelegateWithFixedHeight extends SliverGridDelegate { } class SliverGridDelegateWithComics extends SliverGridDelegate { - SliverGridDelegateWithComics([this.scale]); + SliverGridDelegateWithComics(); final bool useBriefMode = appdata.settings['comicDisplayMode'] == 'brief'; - final double? scale; + final double scale = (appdata.settings['comicTileScale'] as num).toDouble(); @override SliverGridLayout getLayout(SliverConstraints constraints) { if (useBriefMode) { return getBriefModeLayout( constraints, - scale ?? (appdata.settings['comicTileScale'] as num).toDouble(), + scale, ); } else { return getDetailedModeLayout( constraints, - scale ?? (appdata.settings['comicTileScale'] as num).toDouble(), + scale, ); } } - SliverGridLayout getDetailedModeLayout(SliverConstraints constraints, double scale) { + SliverGridLayout getDetailedModeLayout( + SliverConstraints constraints, double scale) { const minCrossAxisExtent = 360; final itemHeight = 152 * scale; final width = constraints.crossAxisExtent; @@ -106,11 +111,14 @@ class SliverGridDelegateWithComics extends SliverGridDelegate { reverseCrossAxis: false); } - SliverGridLayout getBriefModeLayout(SliverConstraints constraints, double scale) { + SliverGridLayout getBriefModeLayout( + SliverConstraints constraints, double scale) { final maxCrossAxisExtent = 192.0 * scale; const childAspectRatio = 0.64; const crossAxisSpacing = 0.0; - int crossAxisCount = (constraints.crossAxisExtent / (maxCrossAxisExtent + crossAxisSpacing)).ceil(); + int crossAxisCount = + (constraints.crossAxisExtent / (maxCrossAxisExtent + crossAxisSpacing)) + .ceil(); // Ensure a minimum count of 1, can be zero and result in an infinite extent // below when the window size is 0. crossAxisCount = math.max(1, crossAxisCount); @@ -133,7 +141,8 @@ class SliverGridDelegateWithComics extends SliverGridDelegate { @override bool shouldRelayout(covariant SliverGridDelegate oldDelegate) { if (oldDelegate is! SliverGridDelegateWithComics) return true; - if (oldDelegate.scale != scale || oldDelegate.useBriefMode != useBriefMode) { + if (oldDelegate.scale != scale || + oldDelegate.useBriefMode != useBriefMode) { return true; } return false; diff --git a/pubspec.lock b/pubspec.lock index bd2578e..1512006 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -977,14 +977,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.7.3" - text_scroll: - dependency: "direct main" - description: - name: text_scroll - sha256: "7869d86a6fdd725dee56bdd150216a99f0372b82fbfcac319214dbd5f36e1908" - url: "https://pub.dev" - source: hosted - version: "0.2.0" typed_data: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index c28528f..5489b8c 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -72,7 +72,6 @@ dependencies: shimmer_animation: ^2.1.0 flutter_memory_info: ^0.0.1 syntax_highlight: ^0.4.0 - text_scroll: ^0.2.0 flutter_7zip: git: url: https://github.com/wgh136/flutter_7zip