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,22 +91,26 @@ 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) {
imgList, PageUtils.onHorizontalPreviewState(
index, scaffoldState,
); ContextSingleTicker(scaffoldState.context),
} else { imgList,
PageUtils.imageView( index,
initialPage: index, );
imgList: imgList, return;
onDismissed: onDismissed, }
);
} }
onViewImage?.call();
PageUtils.imageView(
initialPage: index,
imgList: imgList,
onDismissed: onDismissed,
);
} }
static BorderRadius borderRadius( static BorderRadius borderRadius(

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,