From a61417006a7e6ef9c996149cbca6aa7d2619d309 Mon Sep 17 00:00:00 2001
From: arm64v8a <48624112+arm64v8a@users.noreply.github.com>
Date: Sat, 17 Dec 2022 10:34:41 +0900
Subject: [PATCH] feat: hide dashboard at startup
---
db/ConfigBuilder.cpp | 10 +++++-----
main/NekoRay.cpp | 1 +
main/NekoRay_DataStore.hpp | 1 +
main/main.cpp | 3 +++
translations/zh_CN.ts | 4 ++++
ui/dialog_basic_settings.cpp | 2 ++
ui/dialog_basic_settings.ui | 26 ++++++++++++++++++++++++++
7 files changed, 42 insertions(+), 5 deletions(-)
diff --git a/db/ConfigBuilder.cpp b/db/ConfigBuilder.cpp
index d4d7649..d308bc1 100644
--- a/db/ConfigBuilder.cpp
+++ b/db/ConfigBuilder.cpp
@@ -234,11 +234,11 @@ namespace NekoRay {
{"inboundTag", QJsonArray{"socks-in", "http-in"}},
{"outboundTag", "dns-out"},
};
- status->routingRules += QJsonObject{
- {"type", "field"},
- {"inboundTag", QJsonArray{"dns-in"}},
- {"outboundTag", "dns-out"},
- };
+ // status->routingRules += QJsonObject{
+ // {"type", "field"},
+ // {"inboundTag", QJsonArray{"dns-in"}},
+ // {"outboundTag", "dns-out"},
+ // };
}
// custom inbound
diff --git a/main/NekoRay.cpp b/main/NekoRay.cpp
index 15060e2..83d1ff2 100644
--- a/main/NekoRay.cpp
+++ b/main/NekoRay.cpp
@@ -68,6 +68,7 @@ namespace NekoRay {
_add(new configItem("sub_insecure", &sub_insecure, itemType::boolean));
_add(new configItem("enable_js_hook", &enable_js_hook, itemType::integer));
_add(new configItem("log_ignore", &log_ignore, itemType::stringList));
+ _add(new configItem("start_minimal", &start_minimal, itemType::boolean));
}
void DataStore::UpdateStartedId(int id) {
diff --git a/main/NekoRay_DataStore.hpp b/main/NekoRay_DataStore.hpp
index eab5b37..55e9dc2 100644
--- a/main/NekoRay_DataStore.hpp
+++ b/main/NekoRay_DataStore.hpp
@@ -77,6 +77,7 @@ namespace NekoRay {
bool check_include_pre = false;
QString system_proxy_format = "";
QStringList log_ignore = {};
+ bool start_minimal = false;
// Subscription
QString user_agent = "Nekoray/1.0 (Prefer Clash Format)";
diff --git a/main/main.cpp b/main/main.cpp
index 6b4239f..822adb6 100644
--- a/main/main.cpp
+++ b/main/main.cpp
@@ -146,6 +146,9 @@ int main(int argc, char *argv[]) {
NekoRay::dataStore->Save();
}
+ // Datastore & Flags
+ if (NekoRay::dataStore->start_minimal) NekoRay::dataStore->flag_tray = true;
+
// load routing
NekoRay::dataStore->routing->fn = ROUTES_PREFIX + NekoRay::dataStore->active_routing;
isLoaded = NekoRay::dataStore->routing->Load();
diff --git a/translations/zh_CN.ts b/translations/zh_CN.ts
index c45c4d6..db3acc1 100644
--- a/translations/zh_CN.ts
+++ b/translations/zh_CN.ts
@@ -207,6 +207,10 @@
Enable hook.js
启用 hook.js 功能
+
+ Hide dashboard at startup
+ 启动时不显示仪表盘
+
DialogEditGroup
diff --git a/ui/dialog_basic_settings.cpp b/ui/dialog_basic_settings.cpp
index 13f26d7..2994352 100644
--- a/ui/dialog_basic_settings.cpp
+++ b/ui/dialog_basic_settings.cpp
@@ -100,6 +100,7 @@ DialogBasicSettings::DialogBasicSettings(QWidget *parent)
//
D_LOAD_BOOL(check_include_pre)
D_LOAD_BOOL(connection_statistics)
+ D_LOAD_BOOL(start_minimal)
//
if (NekoRay::dataStore->traffic_loop_interval == 500) {
ui->rfsh_r->setCurrentIndex(0);
@@ -254,6 +255,7 @@ void DialogBasicSettings::accept() {
NekoRay::dataStore->language = ui->language->currentIndex();
D_SAVE_BOOL(connection_statistics)
D_SAVE_BOOL(check_include_pre)
+ D_SAVE_BOOL(start_minimal)
if (ui->rfsh_r->currentIndex() == 0) {
NekoRay::dataStore->traffic_loop_interval = 500;
diff --git a/ui/dialog_basic_settings.ui b/ui/dialog_basic_settings.ui
index e723bba..1d8b51c 100644
--- a/ui/dialog_basic_settings.ui
+++ b/ui/dialog_basic_settings.ui
@@ -336,11 +336,37 @@
-
+
+
+ 0
+ 0
+
+
Set custom icon
+ -
+
+
+ Qt::Vertical
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Hide dashboard at startup
+
+
+