mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-04-20 03:06:59 +08:00
@@ -108,6 +108,7 @@ class ImageGridView extends StatelessWidget {
|
||||
PageUtils.imageView(
|
||||
initialPage: index,
|
||||
imgList: imgList,
|
||||
tag: hashCode.toString(),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -255,7 +256,7 @@ class ImageGridView extends StatelessWidget {
|
||||
);
|
||||
if (!item.isLongPic) {
|
||||
child = Hero(
|
||||
tag: item.url,
|
||||
tag: '${item.url}$hashCode',
|
||||
child: child,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -55,6 +55,7 @@ class GalleryViewer extends StatefulWidget {
|
||||
required this.sources,
|
||||
this.initIndex = 0,
|
||||
this.onPageChanged,
|
||||
this.tag = '',
|
||||
});
|
||||
|
||||
final double minScale;
|
||||
@@ -63,6 +64,7 @@ class GalleryViewer extends StatefulWidget {
|
||||
final List<SourceModel> sources;
|
||||
final int initIndex;
|
||||
final ValueChanged<int>? onPageChanged;
|
||||
final String tag;
|
||||
|
||||
@override
|
||||
State<GalleryViewer> createState() => _GalleryViewerState();
|
||||
@@ -472,7 +474,7 @@ class _GalleryViewerState extends State<GalleryViewer>
|
||||
: const SizedBox.shrink(),
|
||||
);
|
||||
}
|
||||
return Hero(tag: item.url, child: child);
|
||||
return Hero(tag: '${item.url}${widget.tag}', child: child);
|
||||
}
|
||||
|
||||
void _onTap() {
|
||||
|
||||
@@ -90,6 +90,7 @@ Widget content(
|
||||
),
|
||||
if (pics != null && pics.isNotEmpty)
|
||||
ImageGridView(
|
||||
fullScreen: true,
|
||||
picArr: pics
|
||||
.map(
|
||||
(item) => ImageModel(
|
||||
@@ -100,7 +101,6 @@ Widget content(
|
||||
),
|
||||
)
|
||||
.toList(),
|
||||
fullScreen: true,
|
||||
),
|
||||
],
|
||||
),
|
||||
|
||||
@@ -429,7 +429,7 @@ class UserInfoCard extends StatelessWidget {
|
||||
);
|
||||
|
||||
Widget _buildAvatar(bool hasPendant) => fromHero(
|
||||
tag: card.face ?? '',
|
||||
tag: '${card.face}$hashCode',
|
||||
child: PendantAvatar(
|
||||
avatar: card.face,
|
||||
size: hasPendant ? kPendantAvatarSize : kAvatarSize,
|
||||
@@ -440,6 +440,7 @@ class UserInfoCard extends StatelessWidget {
|
||||
garbPendantImage: card.pendant?.image,
|
||||
roomId: live?.liveStatus == 1 ? live!.roomid : null,
|
||||
onTap: () => PageUtils.imageView(
|
||||
tag: hashCode.toString(),
|
||||
imgList: [SourceModel(url: card.face.http2https)],
|
||||
),
|
||||
),
|
||||
|
||||
@@ -49,6 +49,7 @@ abstract final class PageUtils {
|
||||
required List<SourceModel> imgList,
|
||||
int? quality,
|
||||
ValueChanged<int>? onPageChanged,
|
||||
String tag = '',
|
||||
}) {
|
||||
return Get.key.currentState!.push<void>(
|
||||
HeroDialogRoute(
|
||||
@@ -57,6 +58,7 @@ abstract final class PageUtils {
|
||||
initIndex: initialPage,
|
||||
quality: quality ?? GlobalData().imgQuality,
|
||||
onPageChanged: onPageChanged,
|
||||
tag: tag,
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user