opt: view later from dyn

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-04-13 21:41:48 +08:00
parent 012d55452e
commit f2080bfb7b
2 changed files with 49 additions and 41 deletions

View File

@@ -72,12 +72,14 @@ void imageSaveDialog({
style: Theme.of(context).textTheme.titleSmall, style: Theme.of(context).textTheme.titleSmall,
), ),
), ),
if (cover?.isNotEmpty == true) ...[
const SizedBox(width: 4), const SizedBox(width: 4),
iconButton( iconButton(
context: context, context: context,
tooltip: '分享', tooltip: '分享',
onPressed: () { onPressed: () {
DownloadUtils.onShareImg(cover ?? ''); SmartDialog.dismiss();
DownloadUtils.onShareImg(cover!);
}, },
iconSize: 20, iconSize: 20,
icon: Icons.share, icon: Icons.share,
@@ -88,11 +90,8 @@ void imageSaveDialog({
context: context, context: context,
tooltip: '保存封面图', tooltip: '保存封面图',
onPressed: () async { onPressed: () async {
bool saveStatus = await DownloadUtils.downloadImg( bool saveStatus =
context, await DownloadUtils.downloadImg(context, [cover!]);
[cover ?? ''],
);
// 保存成功,自动关闭弹窗
if (saveStatus) { if (saveStatus) {
SmartDialog.dismiss(); SmartDialog.dismiss();
} }
@@ -103,6 +102,7 @@ void imageSaveDialog({
iconColor: Theme.of(context).colorScheme.onSurfaceVariant, iconColor: Theme.of(context).colorScheme.onSurfaceVariant,
), ),
], ],
],
), ),
), ),
], ],

View File

@@ -245,6 +245,15 @@ class AuthorPanel extends StatelessWidget {
); );
Widget morePanel(context) { Widget morePanel(context) {
String? bvid;
try {
bvid = switch (item.type) {
'DYNAMIC_TYPE_AV' => item.modules.moduleDynamic.major.archive.bvid,
'DYNAMIC_TYPE_UGC_SEASON' =>
item.modules.moduleDynamic.major.ugcSeason.bvid,
_ => null,
};
} catch (_) {}
return Padding( return Padding(
padding: EdgeInsets.only(bottom: MediaQuery.of(context).padding.bottom), padding: EdgeInsets.only(bottom: MediaQuery.of(context).padding.bottom),
child: Column( child: Column(
@@ -270,14 +279,13 @@ class AuthorPanel extends StatelessWidget {
), ),
), ),
), ),
if (item.type == 'DYNAMIC_TYPE_AV') if (bvid != null)
ListTile( ListTile(
onTap: () async { onTap: () async {
Get.back();
try { try {
String bvid = item.modules.moduleDynamic.major.archive.bvid;
var res = await UserHttp.toViewLater(bvid: bvid); var res = await UserHttp.toViewLater(bvid: bvid);
SmartDialog.showToast(res['msg']); SmartDialog.showToast(res['msg']);
Get.back();
} catch (err) { } catch (err) {
SmartDialog.showToast('出错了:${err.toString()}'); SmartDialog.showToast('出错了:${err.toString()}');
} }
@@ -303,6 +311,15 @@ class AuthorPanel extends StatelessWidget {
}, },
minLeadingWidth: 0, minLeadingWidth: 0,
), ),
ListTile(
onTap: () {
Get.back();
SavePanel.toSavePanel(item: item);
},
minLeadingWidth: 0,
leading: const Icon(Icons.save_alt, size: 19),
title: Text('保存动态', style: Theme.of(context).textTheme.titleSmall!),
),
ListTile( ListTile(
title: Text( title: Text(
'临时屏蔽:${item.modules.moduleAuthor.name}', '临时屏蔽:${item.modules.moduleAuthor.name}',
@@ -320,15 +337,6 @@ class AuthorPanel extends StatelessWidget {
}, },
minLeadingWidth: 0, minLeadingWidth: 0,
), ),
ListTile(
onTap: () {
Get.back();
SavePanel.toSavePanel(item: item);
},
minLeadingWidth: 0,
leading: const Icon(Icons.save_alt, size: 19),
title: Text('保存动态', style: Theme.of(context).textTheme.titleSmall!),
),
if (item.modules.moduleAuthor.mid == Accounts.main.mid) ...[ if (item.modules.moduleAuthor.mid == Accounts.main.mid) ...[
ListTile( ListTile(
onTap: () { onTap: () {