feat: #I6OTLZ 设置中可开关平台不兼容提示

设置界面增加选项,控制进入详情页时是否发送“应用不兼容系统”通知

Log: 设置界面添加“其他设置”部分,新增单选框控制是否开启应用不兼容系统提示;SettingsPage 添加静态属性 needUncompatibleNotification,启动时从配置文件中同步开关状态,单选框点击修改时写入配置文件;详情页加载标签时,判断 needUncompatibleNotification 为 false 则不发送通知;更新翻译文件
This commit is contained in:
zty199
2023-08-12 01:22:52 +08:00
parent 9f23c2b381
commit 9f32a02f35
9 changed files with 266 additions and 202 deletions
+12
View File
@@ -11,6 +11,7 @@
#define DEFAULT_SERVER_URL "https://cdn.d.store.deepinos.org.cn/"
#define DEFAULT_CHECK_DOMAIN "deepinos"
bool SettingsPage::needUncompatibleNotification = true;
bool SettingsPage::isdownload = false;
SettingsPage::SettingsPage(QWidget *parent)
@@ -99,6 +100,9 @@ void SettingsPage::initConfig()
SparkAPI::setServerUrl(config.value("server/choose").toString());
}
configCanSave = true; //  防止触发保存配置信号
needUncompatibleNotification = config.value("other/uncompatibleNotification", needUncompatibleNotification).toBool();
ui->checkBox->setChecked(needUncompatibleNotification);
}
SettingsPage::~SettingsPage()
@@ -252,3 +256,11 @@ void SettingsPage::on_pushButton_clearWebCache_clicked()
cacheDir.removeRecursively();
});
}
void SettingsPage::on_checkBox_clicked(bool checked)
{
needUncompatibleNotification = checked;
QSettings config(QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation) + "/config.ini", QSettings::IniFormat);
config.setValue("other/uncompatibleNotification", needUncompatibleNotification);
config.sync();
}