mirror of
https://github.com/HChaZZY/PiliPlus.git
synced 2025-12-06 09:13:48 +08:00
feat: 新增禁用收到的赞功能
This commit is contained in:
@@ -198,6 +198,12 @@ class _ExtraSettingState extends State<ExtraSetting> {
|
||||
setKey: SettingBoxKey.enableAi,
|
||||
defaultVal: true,
|
||||
),
|
||||
const SetSwitchItem(
|
||||
title: '消息页禁用“收到的赞”功能',
|
||||
subTitle: '禁止打开入口,降低网络社交依赖',
|
||||
setKey: SettingBoxKey.disableLikeMsg,
|
||||
defaultVal: false,
|
||||
),
|
||||
ListTile(
|
||||
dense: false,
|
||||
title: Text('评论展示', style: titleStyle),
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:PiliPalaX/models/msg/account.dart';
|
||||
import 'package:PiliPalaX/models/msg/session.dart';
|
||||
|
||||
import '../../models/msg/msgfeed_unread.dart';
|
||||
import '../../utils/storage.dart';
|
||||
|
||||
class WhisperController extends GetxController {
|
||||
RxList<SessionList> sessionList = <SessionList>[].obs;
|
||||
@@ -17,24 +18,28 @@ class WhisperController extends GetxController {
|
||||
"name":"回复我的",
|
||||
"icon":Icons.message_outlined,
|
||||
"route": "/replyMe",
|
||||
"enabled": true,
|
||||
"value": 0
|
||||
},
|
||||
{
|
||||
"name":"@我",
|
||||
"icon":Icons.alternate_email_outlined,
|
||||
"route": "/atMe",
|
||||
"enabled": true,
|
||||
"value": 0
|
||||
},
|
||||
{
|
||||
"name":"收到的赞",
|
||||
"icon":Icons.favorite_border_outlined,
|
||||
"route": "/likeMe",
|
||||
"enabled": true,
|
||||
"value": 0
|
||||
},
|
||||
{
|
||||
"name":"系统通知",
|
||||
"icon":Icons.notifications_none_outlined,
|
||||
"route": "/sysMsg",
|
||||
"enabled": true,
|
||||
"value": 0
|
||||
},
|
||||
].obs;
|
||||
@@ -47,6 +52,10 @@ class WhisperController extends GetxController {
|
||||
msgFeedTop[1]["value"] = msgFeedUnread.value.at;
|
||||
msgFeedTop[2]["value"] = msgFeedUnread.value.like;
|
||||
msgFeedTop[3]["value"] = msgFeedUnread.value.sys_msg;
|
||||
if (GStrorage.setting.get(SettingBoxKey.disableLikeMsg, defaultValue: false)) {
|
||||
msgFeedTop[2]["value"] = -1;
|
||||
msgFeedTop[2]["enabled"] = false;
|
||||
}
|
||||
// 触发更新
|
||||
msgFeedTop.refresh();
|
||||
} else {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import 'package:easy_debounce/easy_throttle.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:PiliPalaX/common/widgets/network_img_layer.dart';
|
||||
import 'package:PiliPalaX/utils/utils.dart';
|
||||
@@ -103,6 +104,10 @@ class _WhisperPageState extends State<WhisperPage> {
|
||||
],
|
||||
),
|
||||
onTap: () {
|
||||
if (!_whisperController.msgFeedTop[idx]['enabled']) {
|
||||
SmartDialog.showToast('已禁用');
|
||||
return;
|
||||
}
|
||||
setState(() {
|
||||
_whisperController.msgFeedTop[idx]['value'] = 0;
|
||||
});
|
||||
@@ -182,18 +187,18 @@ class _WhisperPageState extends State<WhisperPage> {
|
||||
.content !=
|
||||
''
|
||||
? (sessionList[i]
|
||||
.lastMsg
|
||||
.content['text'] ??
|
||||
sessionList[i]
|
||||
.lastMsg
|
||||
.content['content'] ??
|
||||
sessionList[i]
|
||||
.lastMsg
|
||||
.content['title'] ??
|
||||
sessionList[i]
|
||||
.lastMsg
|
||||
.content['reply_content'])
|
||||
: '不支持的消息类型',
|
||||
.lastMsg
|
||||
.content['text'] ??
|
||||
sessionList[i]
|
||||
.lastMsg
|
||||
.content['content'] ??
|
||||
sessionList[i]
|
||||
.lastMsg
|
||||
.content['title'] ??
|
||||
sessionList[i]
|
||||
.lastMsg
|
||||
.content['reply_content'])
|
||||
: '不支持的消息类型',
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
style: Theme.of(context)
|
||||
@@ -205,7 +210,8 @@ class _WhisperPageState extends State<WhisperPage> {
|
||||
.outline)),
|
||||
trailing: Text(
|
||||
Utils.dateFormat(
|
||||
sessionList[i].lastMsg.timestamp, formatType: "day"),
|
||||
sessionList[i].lastMsg.timestamp,
|
||||
formatType: "day"),
|
||||
style: Theme.of(context)
|
||||
.textTheme
|
||||
.labelSmall!
|
||||
|
||||
@@ -132,6 +132,7 @@ class SettingBoxKey {
|
||||
enableSearchWord = 'enableSearchWord',
|
||||
enableSystemProxy = 'enableSystemProxy',
|
||||
enableAi = 'enableAi',
|
||||
disableLikeMsg = 'disableLikeMsg',
|
||||
defaultHomePage = 'defaultHomePage';
|
||||
|
||||
/// 外观
|
||||
|
||||
Reference in New Issue
Block a user