From fc89f255912f10ac40476b35f5a09a30f36acb26 Mon Sep 17 00:00:00 2001 From: 2dust <31833384+2dust@users.noreply.github.com> Date: Tue, 24 Feb 2026 10:38:28 +0800 Subject: [PATCH] Add 'Show All Groups' preference and handling --- V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt | 1 + .../java/com/v2ray/ang/helper/MmkvPreferenceDataStore.kt | 1 + .../src/main/java/com/v2ray/ang/viewmodel/MainViewModel.kt | 4 +++- V2rayNG/app/src/main/res/values-ar/strings.xml | 2 ++ V2rayNG/app/src/main/res/values-bn/strings.xml | 2 ++ V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml | 2 ++ V2rayNG/app/src/main/res/values-fa/strings.xml | 2 ++ V2rayNG/app/src/main/res/values-ru/strings.xml | 2 ++ V2rayNG/app/src/main/res/values-vi/strings.xml | 2 ++ V2rayNG/app/src/main/res/values-zh-rCN/strings.xml | 3 +++ V2rayNG/app/src/main/res/values-zh-rTW/strings.xml | 3 +++ V2rayNG/app/src/main/res/values/strings.xml | 3 +++ V2rayNG/app/src/main/res/xml/pref_settings.xml | 5 +++++ 13 files changed, 31 insertions(+), 1 deletion(-) diff --git a/V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt b/V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt index 5413bef0..61a78e01 100644 --- a/V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt +++ b/V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt @@ -51,6 +51,7 @@ object AppConfig { const val PREF_CONFIRM_REMOVE = "pref_confirm_remove" const val PREF_START_SCAN_IMMEDIATE = "pref_start_scan_immediate" const val PREF_DOUBLE_COLUMN_DISPLAY = "pref_double_column_display" + const val PREF_GROUP_ALL_DISPLAY = "pref_group_all_display" const val PREF_LANGUAGE = "pref_language" const val PREF_UI_MODE_NIGHT = "pref_ui_mode_night" const val PREF_PREFER_IPV6 = "pref_prefer_ipv6" diff --git a/V2rayNG/app/src/main/java/com/v2ray/ang/helper/MmkvPreferenceDataStore.kt b/V2rayNG/app/src/main/java/com/v2ray/ang/helper/MmkvPreferenceDataStore.kt index 4316af3e..ffc075d3 100644 --- a/V2rayNG/app/src/main/java/com/v2ray/ang/helper/MmkvPreferenceDataStore.kt +++ b/V2rayNG/app/src/main/java/com/v2ray/ang/helper/MmkvPreferenceDataStore.kt @@ -79,5 +79,6 @@ class MmkvPreferenceDataStore : PreferenceDataStore() { } // Notify listeners that require service restart or reinit SettingsChangeManager.makeRestartService() + SettingsChangeManager.makeSetupGroupTab() } } \ No newline at end of file diff --git a/V2rayNG/app/src/main/java/com/v2ray/ang/viewmodel/MainViewModel.kt b/V2rayNG/app/src/main/java/com/v2ray/ang/viewmodel/MainViewModel.kt index 6b17f25b..25c4b644 100644 --- a/V2rayNG/app/src/main/java/com/v2ray/ang/viewmodel/MainViewModel.kt +++ b/V2rayNG/app/src/main/java/com/v2ray/ang/viewmodel/MainViewModel.kt @@ -283,7 +283,9 @@ class MainViewModel(application: Application) : AndroidViewModel(application) { } val groups = mutableListOf() - if (subscriptions.count() > 1) { + if (subscriptions.size > 1 + && MmkvManager.decodeSettingsBool(AppConfig.PREF_GROUP_ALL_DISPLAY) + ) { groups.add( GroupMapItem( id = "", diff --git a/V2rayNG/app/src/main/res/values-ar/strings.xml b/V2rayNG/app/src/main/res/values-ar/strings.xml index 277b0cbc..e33e8274 100644 --- a/V2rayNG/app/src/main/res/values-ar/strings.xml +++ b/V2rayNG/app/src/main/res/values-ar/strings.xml @@ -234,6 +234,8 @@ Enable double column display The profile list is displayed in double columns, allowing more content to be displayed on the screen. You need to restart the application to take effect. + Enable show all groups + Add an extra "All Tabs" page ملاحظات ملاحظات التحسينات أو الأخطاء إلى GitHub diff --git a/V2rayNG/app/src/main/res/values-bn/strings.xml b/V2rayNG/app/src/main/res/values-bn/strings.xml index 863c9a4a..ab3870c1 100644 --- a/V2rayNG/app/src/main/res/values-bn/strings.xml +++ b/V2rayNG/app/src/main/res/values-bn/strings.xml @@ -234,6 +234,8 @@ Enable double column display The profile list is displayed in double columns, allowing more content to be displayed on the screen. You need to restart the application to take effect. + Enable show all groups + Add an extra "All Tabs" page মতামত মতামত উন্নয়ন বা বাগগুলি GitHub-এ পাঠান diff --git a/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml b/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml index 953f55bb..008cec57 100644 --- a/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml +++ b/V2rayNG/app/src/main/res/values-bqi-rIR/strings.xml @@ -234,6 +234,8 @@ ره وندن نشووݩ داڌن دو سۊتۊنی نومگه نمایه یل من دو سۊتۊن نشووݩ داڌه ابۊن وو چینۉ ترین موئتوا بیشتری ن سیل کۊنین. سی ره وستن، وا برنومه ن ز نۊ ره ونین. + Enable show all groups + Add an extra "All Tabs" page فشناڌن منشڌ فشناڌن منشڌ یا گوزارش موشکلا من Github diff --git a/V2rayNG/app/src/main/res/values-fa/strings.xml b/V2rayNG/app/src/main/res/values-fa/strings.xml index 6bc10901..75278311 100644 --- a/V2rayNG/app/src/main/res/values-fa/strings.xml +++ b/V2rayNG/app/src/main/res/values-fa/strings.xml @@ -232,6 +232,8 @@ فعال کردن نمایش دو ستون لیست نمایه در دو ستون نمایش داده می شود و امکان نمایش محتوای بیشتری را بر روی صفحه نمایش می دهد. برای اجرا باید برنامه را مجددا راه اندازی کنید. + Enable show all groups + Add an extra "All Tabs" page بازخورد بازخورد یا گزارش اشکالات در گیت‌ هاب diff --git a/V2rayNG/app/src/main/res/values-ru/strings.xml b/V2rayNG/app/src/main/res/values-ru/strings.xml index 3d9adecb..d6807862 100644 --- a/V2rayNG/app/src/main/res/values-ru/strings.xml +++ b/V2rayNG/app/src/main/res/values-ru/strings.xml @@ -233,6 +233,8 @@ Профили в два столбца Список профилей отображается двумя столбцами, что позволяет показать больше информации на экране. Требуется перезапуск приложения. + Enable show all groups + Add an extra "All Tabs" page Обратная связь Предложить улучшение или сообщить об ошибке на GitHub diff --git a/V2rayNG/app/src/main/res/values-vi/strings.xml b/V2rayNG/app/src/main/res/values-vi/strings.xml index 99779ed8..745d71ab 100644 --- a/V2rayNG/app/src/main/res/values-vi/strings.xml +++ b/V2rayNG/app/src/main/res/values-vi/strings.xml @@ -234,6 +234,8 @@ Enable double column display The profile list is displayed in double columns, allowing more content to be displayed on the screen. You need to restart the application to take effect. + Enable show all groups + Add an extra "All Tabs" page Phản hồi lỗi Phản hồi cải tiến hoặc lỗi lên GitHub diff --git a/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml b/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml index 87ff259c..77e80360 100644 --- a/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml +++ b/V2rayNG/app/src/main/res/values-zh-rCN/strings.xml @@ -231,6 +231,9 @@ 启用双列显示 配置列表以双列显示,允许在屏幕上显示更多内容。需要重启应用生效。 + 启用显示所有组 + 添加一个额外的“所有选项卡”页面 + 反馈 反馈改进或漏洞至 GitHub diff --git a/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml b/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml index 2fac4392..70f51cdd 100644 --- a/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml +++ b/V2rayNG/app/src/main/res/values-zh-rTW/strings.xml @@ -232,6 +232,9 @@ 啟用雙列顯示 設定檔清單以雙列顯示,允許在螢幕上顯示更多內容。需要重啟應用生效。 + 啟用顯示所有群組 + 新增一個額外的「所有選項卡」頁面 + 意見回饋 前往 GitHub 回報錯誤 diff --git a/V2rayNG/app/src/main/res/values/strings.xml b/V2rayNG/app/src/main/res/values/strings.xml index 86612707..5e4ddc8b 100644 --- a/V2rayNG/app/src/main/res/values/strings.xml +++ b/V2rayNG/app/src/main/res/values/strings.xml @@ -237,6 +237,9 @@ Enable double column display The profile list is displayed in double columns, allowing more content to be displayed on the screen. You need to restart the application to take effect. + Enable show all groups + Add an extra "All Tabs" page + Feedback Feedback enhancements or bugs to GitHub diff --git a/V2rayNG/app/src/main/res/xml/pref_settings.xml b/V2rayNG/app/src/main/res/xml/pref_settings.xml index a79a29f1..d82374a6 100644 --- a/V2rayNG/app/src/main/res/xml/pref_settings.xml +++ b/V2rayNG/app/src/main/res/xml/pref_settings.xml @@ -23,6 +23,11 @@ android:summary="@string/summary_pref_double_column_display" android:title="@string/title_pref_double_column_display" /> + +