opt: image preview

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2024-12-08 19:02:10 +08:00
parent ce89a5fdb9
commit 22f668245d
7 changed files with 119 additions and 68 deletions

View File

@@ -1,6 +1,5 @@
import 'package:PiliPalaX/common/widgets/network_img_layer.dart';
import 'package:PiliPalaX/models/dynamics/article_content_model.dart';
import 'package:PiliPalaX/pages/preview/view.dart';
import 'package:PiliPalaX/utils/extension.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
@@ -58,16 +57,20 @@ Widget articleContent({
return LayoutBuilder(
builder: (_, constraints) => GestureDetector(
onTap: () {
showDialog(
useSafeArea: false,
context: context,
builder: (context) {
return ImagePreview(
initialPage: imgList.indexOf(item.pic!.pics!.first.url!),
imgList: imgList,
);
},
context.imageView(
initialPage: imgList.indexOf(item.pic!.pics!.first.url!),
imgList: imgList,
);
// showDialog(
// useSafeArea: false,
// context: context,
// builder: (context) {
// return ImagePreview(
// initialPage: imgList.indexOf(item.pic!.pics!.first.url!),
// imgList: imgList,
// );
// },
// );
},
child: NetworkImgLayer(
width: constraints.maxWidth,

View File

@@ -1,4 +1,4 @@
import 'package:PiliPalaX/pages/preview/view.dart';
import 'package:PiliPalaX/utils/extension.dart';
import 'package:flutter/material.dart';
import 'package:flutter_html/flutter_html.dart';
import 'network_img_layer.dart';
@@ -47,16 +47,19 @@ Widget htmlRender({
// );
return GestureDetector(
onTap: () {
showDialog(
useSafeArea: false,
context: context,
builder: (context) {
return ImagePreview(
initialPage: 0,
imgList: [imgUrl],
);
},
context.imageView(
imgList: [imgUrl],
);
// showDialog(
// useSafeArea: false,
// context: context,
// builder: (context) {
// return ImagePreview(
// initialPage: 0,
// imgList: [imgUrl],
// );
// },
// );
},
child: NetworkImgLayer(
width: isEmote ? 22 : constrainedWidth,

View File

@@ -3,7 +3,7 @@ import 'dart:math';
import 'package:PiliPalaX/common/widgets/badge.dart';
import 'package:PiliPalaX/common/widgets/network_img_layer.dart';
import 'package:PiliPalaX/common/widgets/nine_grid_view.dart';
import 'package:PiliPalaX/pages/preview/view.dart';
import 'package:PiliPalaX/utils/extension.dart';
import 'package:flutter/material.dart';
class ImageModel {
@@ -55,16 +55,20 @@ Widget image(
itemCount: picArr.length,
itemBuilder: (context, index) => GestureDetector(
onTap: () {
showDialog(
useSafeArea: false,
context: context,
builder: (context) {
return ImagePreview(
initialPage: index,
imgList: picArr.map((item) => item.url).toList(),
);
},
context.imageView(
initialPage: index,
imgList: picArr.map((item) => item.url).toList(),
);
// showDialog(
// useSafeArea: false,
// context: context,
// builder: (context) {
// return ImagePreview(
// initialPage: index,
// imgList: picArr.map((item) => item.url).toList(),
// );
// },
// );
},
child: Stack(
children: [