mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-06-01 00:28:18 +08:00
opt img preview
Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
@@ -45,8 +45,11 @@ class InteractiveviewerGallery<T> extends StatefulWidget {
|
|||||||
this.onDismissed,
|
this.onDismissed,
|
||||||
this.setStatusBar,
|
this.setStatusBar,
|
||||||
this.onClose,
|
this.onClose,
|
||||||
|
required this.quality,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
final int quality;
|
||||||
|
|
||||||
final ValueChanged? onClose;
|
final ValueChanged? onClose;
|
||||||
|
|
||||||
final bool? setStatusBar;
|
final bool? setStatusBar;
|
||||||
@@ -427,7 +430,7 @@ class _InteractiveviewerGalleryState extends State<InteractiveviewerGallery>
|
|||||||
return CachedNetworkImage(
|
return CachedNetworkImage(
|
||||||
fadeInDuration: Duration.zero,
|
fadeInDuration: Duration.zero,
|
||||||
fadeOutDuration: Duration.zero,
|
fadeOutDuration: Duration.zero,
|
||||||
imageUrl: Utils.thumbnailImgUrl(item.url),
|
imageUrl: Utils.thumbnailImgUrl(item.url, widget.quality),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ Widget htmlRender({
|
|||||||
} else {
|
} else {
|
||||||
context.imageView(
|
context.imageView(
|
||||||
imgList: [SourceModel(url: imgUrl)],
|
imgList: [SourceModel(url: imgUrl)],
|
||||||
|
quality: 60,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -175,8 +175,8 @@ class OpusContent extends StatelessWidget {
|
|||||||
callback!([pic.url!], 0);
|
callback!([pic.url!], 0);
|
||||||
} else {
|
} else {
|
||||||
context.imageView(
|
context.imageView(
|
||||||
initialPage: 0,
|
|
||||||
imgList: [SourceModel(url: pic.url!)],
|
imgList: [SourceModel(url: pic.url!)],
|
||||||
|
quality: 60,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -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/common/common_whisper_controller.dart';
|
||||||
import 'package:PiliPlus/pages/contact/view.dart';
|
import 'package:PiliPlus/pages/contact/view.dart';
|
||||||
import 'package:PiliPlus/pages/whisper_settings/view.dart';
|
import 'package:PiliPlus/pages/whisper_settings/view.dart';
|
||||||
|
import 'package:PiliPlus/utils/global_data.dart';
|
||||||
import 'package:floating/floating.dart';
|
import 'package:floating/floating.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
||||||
@@ -79,19 +80,20 @@ extension BuildContextExt on BuildContext {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void imageView({
|
void imageView({
|
||||||
int? initialPage,
|
int initialPage = 0,
|
||||||
required List<SourceModel> imgList,
|
required List<SourceModel> imgList,
|
||||||
ValueChanged<int>? onDismissed,
|
ValueChanged<int>? onDismissed,
|
||||||
|
int? quality,
|
||||||
}) {
|
}) {
|
||||||
bool isMemberPage = Get.currentRoute.startsWith('/member?');
|
bool isMemberPage = Get.currentRoute.startsWith('/member?');
|
||||||
Navigator.of(this).push(
|
Navigator.of(this).push(
|
||||||
HeroDialogRoute(
|
HeroDialogRoute(
|
||||||
builder: (context) => InteractiveviewerGallery(
|
builder: (context) => InteractiveviewerGallery(
|
||||||
sources: imgList,
|
sources: imgList,
|
||||||
initIndex: initialPage ?? 0,
|
initIndex: initialPage,
|
||||||
onPageChanged: (int pageIndex) {},
|
|
||||||
onDismissed: onDismissed,
|
onDismissed: onDismissed,
|
||||||
setStatusBar: !isMemberPage,
|
setStatusBar: !isMemberPage,
|
||||||
|
quality: quality ?? GlobalData().imgQuality,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import 'package:PiliPlus/services/shutdown_timer_service.dart';
|
|||||||
import 'package:PiliPlus/utils/app_scheme.dart';
|
import 'package:PiliPlus/utils/app_scheme.dart';
|
||||||
import 'package:PiliPlus/utils/extension.dart';
|
import 'package:PiliPlus/utils/extension.dart';
|
||||||
import 'package:PiliPlus/utils/feed_back.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/id_utils.dart';
|
||||||
import 'package:PiliPlus/utils/storage.dart';
|
import 'package:PiliPlus/utils/storage.dart';
|
||||||
import 'package:PiliPlus/utils/url_utils.dart';
|
import 'package:PiliPlus/utils/url_utils.dart';
|
||||||
@@ -524,6 +525,7 @@ class PageUtils {
|
|||||||
initIndex: index,
|
initIndex: index,
|
||||||
setStatusBar: false,
|
setStatusBar: false,
|
||||||
onClose: onClose,
|
onClose: onClose,
|
||||||
|
quality: GlobalData().imgQuality,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user