mod: save more covers

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2024-12-29 11:20:47 +08:00
parent 882f16bdab
commit 0edb7f44a7
7 changed files with 50 additions and 0 deletions

View File

@@ -1,3 +1,4 @@
import 'package:PiliPalaX/common/widgets/image_save.dart';
import 'package:flutter/material.dart';
import 'package:PiliPalaX/common/constants.dart';
import 'package:PiliPalaX/common/widgets/badge.dart';
@@ -30,6 +31,11 @@ class BangumiCardV extends StatelessWidget {
// longPressEnd!();
// }
// },
onLongPress: () => imageSaveDialog(
context: context,
title: bangumiItem.title,
cover: bangumiItem.cover,
),
child: InkWell(
onTap: () async {
final int seasonId = bangumiItem.seasonId;

View File

@@ -1,3 +1,4 @@
import 'package:PiliPalaX/common/widgets/image_save.dart';
import 'package:PiliPalaX/models/space_archive/item.dart';
import 'package:flutter/material.dart';
import 'package:PiliPalaX/common/constants.dart';
@@ -63,6 +64,11 @@ class BangumiCardVMemberHome extends StatelessWidget {
// }
// });
},
onLongPress: () => imageSaveDialog(
context: context,
title: bangumiItem.title,
cover: bangumiItem.cover,
),
child: Column(
children: [
ClipRRect(

View File

@@ -1,4 +1,5 @@
import 'package:PiliPalaX/common/widgets/http_error.dart';
import 'package:PiliPalaX/common/widgets/image_save.dart';
import 'package:PiliPalaX/common/widgets/loading_widget.dart';
import 'package:PiliPalaX/http/loading_state.dart';
import 'package:PiliPalaX/pages/search/widgets/search_text.dart';
@@ -103,6 +104,14 @@ Widget searchArticlePanel(context, searchPanelCtr, LoadingState loadingState) {
'dynamicType': 'read'
});
},
onLongPress: () => imageSaveDialog(
context: context,
title: (loadingState.response[index].title as List?)
?.map((item) => item['text'])
.join() ??
'',
cover: loadingState.response[index].imageUrls.first,
),
child: Padding(
padding: const EdgeInsets.symmetric(
horizontal: StyleString.safeSpace,

View File

@@ -1,3 +1,4 @@
import 'package:PiliPalaX/common/widgets/image_save.dart';
import 'package:PiliPalaX/common/widgets/loading_widget.dart';
import 'package:PiliPalaX/http/loading_state.dart';
import 'package:flutter/material.dart';
@@ -62,6 +63,13 @@ class LiveItem extends StatelessWidget {
Get.toNamed('/liveRoom?roomid=${liveItem.roomid}',
arguments: {'liveItem': liveItem, 'heroTag': heroTag});
},
onLongPress: () => imageSaveDialog(
context: context,
title:
(liveItem.title as List?)?.map((item) => item['text']).join() ??
'',
cover: liveItem.cover,
),
child: Column(
children: [
ClipRRect(

View File

@@ -1,3 +1,4 @@
import 'package:PiliPalaX/common/widgets/image_save.dart';
import 'package:PiliPalaX/common/widgets/loading_widget.dart';
import 'package:PiliPalaX/http/loading_state.dart';
import 'package:flutter/material.dart';
@@ -36,6 +37,14 @@ Widget searchBangumiPanel(context, ctr, LoadingState loadingState) {
onTap: () {
Utils.viewBangumi(seasonId: i.seasonId);
},
onLongPress: () => imageSaveDialog(
context: context,
title: (i.title as List?)
?.map((item) => item['text'])
.join() ??
'',
cover: i.cover,
),
child: Padding(
padding: const EdgeInsets.symmetric(
horizontal: StyleString.safeSpace,

View File

@@ -1,3 +1,4 @@
import 'package:PiliPalaX/common/widgets/image_save.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:PiliPalaX/common/constants.dart';
@@ -27,6 +28,11 @@ class SubItem extends StatelessWidget {
'id': subFolderItem.id.toString(),
},
),
onLongPress: () => imageSaveDialog(
context: context,
title: subFolderItem.title,
cover: subFolderItem.cover,
),
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 5),
child: LayoutBuilder(

View File

@@ -1,3 +1,4 @@
import 'package:PiliPalaX/common/widgets/image_save.dart';
import 'package:get/get.dart';
import 'package:flutter/material.dart';
import 'package:PiliPalaX/common/constants.dart';
@@ -40,6 +41,11 @@ class SubVideoCardH extends StatelessWidget {
'videoType': SearchType.video,
});
},
onLongPress: () => imageSaveDialog(
context: context,
title: videoItem.title,
cover: videoItem.cover,
),
child: Padding(
padding: const EdgeInsets.symmetric(
horizontal: StyleString.safeSpace,