opt img preview

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-05-24 10:58:16 +08:00
parent 81cfe3efe1
commit 5bd6b38908
5 changed files with 13 additions and 5 deletions

View File

@@ -45,8 +45,11 @@ class InteractiveviewerGallery<T> extends StatefulWidget {
this.onDismissed,
this.setStatusBar,
this.onClose,
required this.quality,
});
final int quality;
final ValueChanged? onClose;
final bool? setStatusBar;
@@ -427,7 +430,7 @@ class _InteractiveviewerGalleryState extends State<InteractiveviewerGallery>
return CachedNetworkImage(
fadeInDuration: Duration.zero,
fadeOutDuration: Duration.zero,
imageUrl: Utils.thumbnailImgUrl(item.url),
imageUrl: Utils.thumbnailImgUrl(item.url, widget.quality),
);
},
),

View File

@@ -55,6 +55,7 @@ Widget htmlRender({
} else {
context.imageView(
imgList: [SourceModel(url: imgUrl)],
quality: 60,
);
}
},

View File

@@ -175,8 +175,8 @@ class OpusContent extends StatelessWidget {
callback!([pic.url!], 0);
} else {
context.imageView(
initialPage: 0,
imgList: [SourceModel(url: pic.url!)],
quality: 60,
);
}
},

View File

@@ -7,6 +7,7 @@ import 'package:PiliPlus/models/common/image_preview_type.dart';
import 'package:PiliPlus/pages/common/common_whisper_controller.dart';
import 'package:PiliPlus/pages/contact/view.dart';
import 'package:PiliPlus/pages/whisper_settings/view.dart';
import 'package:PiliPlus/utils/global_data.dart';
import 'package:floating/floating.dart';
import 'package:flutter/material.dart';
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
@@ -79,19 +80,20 @@ extension BuildContextExt on BuildContext {
}
void imageView({
int? initialPage,
int initialPage = 0,
required List<SourceModel> imgList,
ValueChanged<int>? onDismissed,
int? quality,
}) {
bool isMemberPage = Get.currentRoute.startsWith('/member?');
Navigator.of(this).push(
HeroDialogRoute(
builder: (context) => InteractiveviewerGallery(
sources: imgList,
initIndex: initialPage ?? 0,
onPageChanged: (int pageIndex) {},
initIndex: initialPage,
onDismissed: onDismissed,
setStatusBar: !isMemberPage,
quality: quality ?? GlobalData().imgQuality,
),
),
);

View File

@@ -17,6 +17,7 @@ import 'package:PiliPlus/services/shutdown_timer_service.dart';
import 'package:PiliPlus/utils/app_scheme.dart';
import 'package:PiliPlus/utils/extension.dart';
import 'package:PiliPlus/utils/feed_back.dart';
import 'package:PiliPlus/utils/global_data.dart';
import 'package:PiliPlus/utils/id_utils.dart';
import 'package:PiliPlus/utils/storage.dart';
import 'package:PiliPlus/utils/url_utils.dart';
@@ -524,6 +525,7 @@ class PageUtils {
initIndex: index,
setStatusBar: false,
onClose: onClose,
quality: GlobalData().imgQuality,
),
);
},