fix image preview

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-09-28 18:11:37 +08:00
parent b3622ef61d
commit 046412b709
2 changed files with 17 additions and 31 deletions

View File

@@ -21,6 +21,7 @@ import 'package:PiliPlus/common/constants.dart';
import 'package:PiliPlus/common/widgets/badge.dart'; import 'package:PiliPlus/common/widgets/badge.dart';
import 'package:PiliPlus/common/widgets/custom_layout.dart'; import 'package:PiliPlus/common/widgets/custom_layout.dart';
import 'package:PiliPlus/common/widgets/image/network_img_layer.dart'; import 'package:PiliPlus/common/widgets/image/network_img_layer.dart';
import 'package:PiliPlus/common/widgets/marquee.dart' show ContextSingleTicker;
import 'package:PiliPlus/models/common/badge_type.dart'; import 'package:PiliPlus/models/common/badge_type.dart';
import 'package:PiliPlus/models/common/image_preview_type.dart'; import 'package:PiliPlus/models/common/image_preview_type.dart';
import 'package:PiliPlus/utils/context_ext.dart'; import 'package:PiliPlus/utils/context_ext.dart';
@@ -90,23 +91,27 @@ class CustomGridView extends StatelessWidget {
); );
}, },
).toList(); ).toList();
onViewImage?.call();
if (horizontalPreview && if (horizontalPreview &&
!fullScreen && !fullScreen &&
!context.mediaQuerySize.isPortrait) { !context.mediaQuerySize.isPortrait) {
PageUtils.onHorizontalPreview( final scaffoldState = Scaffold.maybeOf(context);
context, if (scaffoldState != null) {
PageUtils.onHorizontalPreviewState(
scaffoldState,
ContextSingleTicker(scaffoldState.context),
imgList, imgList,
index, index,
); );
} else { return;
}
}
onViewImage?.call();
PageUtils.imageView( PageUtils.imageView(
initialPage: index, initialPage: index,
imgList: imgList, imgList: imgList,
onDismissed: onDismissed, onDismissed: onDismissed,
); );
} }
}
static BorderRadius borderRadius( static BorderRadius borderRadius(
int col, int col,

View File

@@ -2,7 +2,6 @@ import 'dart:math';
import 'package:PiliPlus/common/widgets/interactiveviewer_gallery/hero_dialog_route.dart'; import 'package:PiliPlus/common/widgets/interactiveviewer_gallery/hero_dialog_route.dart';
import 'package:PiliPlus/common/widgets/interactiveviewer_gallery/interactiveviewer_gallery.dart'; import 'package:PiliPlus/common/widgets/interactiveviewer_gallery/interactiveviewer_gallery.dart';
import 'package:PiliPlus/common/widgets/marquee.dart';
import 'package:PiliPlus/grpc/im.dart'; import 'package:PiliPlus/grpc/im.dart';
import 'package:PiliPlus/http/dynamics.dart'; import 'package:PiliPlus/http/dynamics.dart';
import 'package:PiliPlus/http/search.dart'; import 'package:PiliPlus/http/search.dart';
@@ -590,24 +589,6 @@ abstract class PageUtils {
); );
} }
static void onHorizontalPreview(
BuildContext context,
List<SourceModel> imgList,
int index,
) {
final scaffoldState = Scaffold.maybeOf(context);
if (scaffoldState != null) {
onHorizontalPreviewState(
scaffoldState,
ContextSingleTicker(scaffoldState.context),
imgList,
index,
);
} else {
imageView(imgList: imgList, initialPage: index);
}
}
static void inAppWebview( static void inAppWebview(
String url, { String url, {
bool off = false, bool off = false,