diff --git a/lib/pages/dynamics/widgets/video_panel.dart b/lib/pages/dynamics/widgets/video_panel.dart index 4d7f47b1c..f70a94852 100644 --- a/lib/pages/dynamics/widgets/video_panel.dart +++ b/lib/pages/dynamics/widgets/video_panel.dart @@ -57,6 +57,9 @@ Widget videoSeasonWidget( } Widget buildCover() { + if (floor == 1) { + maxWidth -= 24; + } return Stack( clipBehavior: Clip.none, children: [ diff --git a/lib/utils/waterfall.dart b/lib/utils/waterfall.dart index 857c6ae8c..1d29adb0b 100644 --- a/lib/utils/waterfall.dart +++ b/lib/utils/waterfall.dart @@ -41,15 +41,17 @@ class SliverWaterfallFlowDelegateWithMaxCrossAxisExtent @override int getCrossAxisCount(SliverConstraints constraints) { - if (crossAxisCount != null && - constraints.crossAxisExtent == crossAxisExtent) { + final crossAxisExtent = constraints.crossAxisExtent; + if (crossAxisCount != null && this.crossAxisExtent == crossAxisExtent) { return crossAxisCount!; } - crossAxisExtent = constraints.crossAxisExtent; - crossAxisCount = - (constraints.crossAxisExtent / (maxCrossAxisExtent + crossAxisSpacing)) - .ceil(); - callback?.call(constraints.crossAxisExtent / crossAxisCount!); + this.crossAxisExtent = crossAxisExtent; + crossAxisCount = (crossAxisExtent / (maxCrossAxisExtent + crossAxisSpacing)) + .ceil(); + callback?.call( + (crossAxisExtent - ((crossAxisCount! - 1) * crossAxisSpacing)) / + crossAxisCount!, + ); return crossAxisCount!; }