diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index f1125903..8b60afe9 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -392,7 +392,7 @@ jobs:
with:
value: '${{ github.ref_name }}'
regex: '^v|.dev$'
- flags: '' # Optional, defaults to "g"
+ flags: 'gi' # Optional, defaults to "g"
replacement: ''
- name: Winget Publish
if: ${{ env.CHANNEL != 'dev' }}
@@ -410,7 +410,7 @@ jobs:
with:
publish-type: 'Update'
user: 'Hiddify'
- package: 'Next'
+ package: 'Next.Beta'
version: ${{ steps.version.outputs.value }}
url: 'https://github.com/hiddify/hiddify-next/releases/download/${{ github.ref_name }}/hiddify-windows-x64-setup.zip'
token: ${{ secrets.WINGET_TOKEN }}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index cfbff204..63ee613f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,8 +6,13 @@
- Changed Responsive UI Behavior
- Now app is responsive on all platforms with appropriate routing setup.
+- Added Simplified Service Modes
+ - Choose between VPN(Tun), System Proxy and Proxy only modes. (System Proxy available on desktop)
+- Added Share Functionality
+ - Share configuration as json(export to clipboard) or share subscription link as QR code.
- Redesigned System Tray on Desktop
- - Options have been simplified and a new mode selector is added for easier access to TUN and Proxy modes.
+ - Options have been simplified and a new mode selector and navigation options are added.
+- Added Privilege Checks for VPN(TUN) on Desktop
- Added Auto Connect on Start
- On desktop, app will try to connect to the last used profile on startup. (if last session was not explicitly disconnected by the user)
- Added AppCast Update Checker
@@ -16,6 +21,8 @@
- Now you're able to install and update Hiddify Next on Windows using [winget](https://learn.microsoft.com/en-us/windows/package-manager/winget/).
- Changed in-app Toasts
- Updated Core Sing-box Version to 1.7.0
+- Improved Network Reliability While Adding/Updating Subscriptions
+- Improved QR Code Scanner
### Bug Fixes
@@ -25,7 +32,10 @@
- Fixed translator script. [PR#108](https://github.com/hiddify/hiddify-next/pull/108) by [Hirad Rasoolinejad](https://github.com/Hiiirad)
- Fixed localization mistakes in Chinese. [PR#113](https://github.com/hiddify/hiddify-next/pull/113) and [PR#123](https://github.com/hiddify/hiddify-next/pull/123) by [Nyar233](https://github.com/Nyar233)
- Fixed localization mistakes in Chinese Readme. [PR#137](https://github.com/hiddify/hiddify-next/pull/137) by [wldjdjsks](https://github.com/huajizhige)
-- Fixed localization mistakes in Chinese. [PR#138](https://github.com/hiddify/hiddify-next/pull/138) by [wldjdjsks](https://github.com/huajizhige)
+- Fixed localization mistakes in Chinese. [PR#138](https://github.com/hiddify/hiddify-next/pull/138) and [PR#165](https://github.com/hiddify/hiddify-next/pull/165) by [wldjdjsks](https://github.com/huajizhige)
+- Fixed localization mistakes in Russian. [PR#155](https://github.com/hiddify/hiddify-next/pull/155) and [PR#162](https://github.com/hiddify/hiddify-next/pull/162) by [solokot](https://github.com/solokot)
+- Fixed linux build libs command. [PR#161](https://github.com/hiddify/hiddify-next/pull/161) by [Aloxaf](https://github.com/Aloxaf)
+- Fixed localization mistakes in Russian. [PR#164](https://github.com/hiddify/hiddify-next/pull/164) by [jomertix](https://github.com/jomertix)
## [0.10.0] - 2023-10-27
diff --git a/README_cn.md b/README_cn.md
index 621c0d07..847a9157 100644
--- a/README_cn.md
+++ b/README_cn.md
@@ -1,55 +1,61 @@
-
-
-[** فارسی**](README_fa.md) [**Русский 🇷🇺**](README_ru.md) [**English 🇺🇸**](README.md)
+
+
+[** فارسی**](README_fa.md) [**Русский 🇷🇺**](README_ru.md) [**English 🇺🇸**](README.md)
+

-
+
[](https://play.google.com/store/apps/details?id=app.hiddify.com) [](https://github.com/hiddify/hiddify-next/releases/)[](https://github.com/hiddify/hiddify-next/releases/)[](https://github.com/hiddify/hiddify-next/releases/)[](https://github.com/hiddify/hiddify-next/)
[](https://www.youtube.com/@hiddify)[](https://telegram.dog/hiddify)[](https://telegram.dog/hiddify_board/5)
+
+
## Hiddify-Next 是什么?
-基于 [Sing-box](https://github.com/SagerNet/sing-box) 的多平台客自动客户端,用作通用代理工具链。 该应用程序提供了广泛的功能,如下所列。 它还支持大量协议。 该应用程序免费使用、无广告且开源。 它提供了一个安全且私密的工具来访问免费互联网。
-该应用程序是使用 [Flutter](https://flutter.dev/) 和 [Go](https://go.dev/) 开发的。 欲了解更多信息,您可以阅读我们的开发贡献指南。
+
一个基于 Sing-box 的跨平台自动客户端,用作通用代理工具链。该应用提供了广泛的功能,如下所列。它还支持大量协议。该应用免费使用、无广告且开源。它为访问自由互联网提供了一个安全且私密的工具。
+该应用是使用 [Flutter](https://flutter.dev/) 和 [Go](https://go.dev/) 开发的。 欲了解更多信息,您可以参阅我们的开发贡献指南。
-

+

+
-## 🚀 主要特点
-⭐ 简单的用户界面易于使用
-✈️ 多平台:Android、Windows、Linux 和 macOS(欢迎 iOS 的 PR)
+## 🚀 主要功能
+
+⭐ 简单易用的用户界面
+
+✈️ 跨平台:Android、Windows、Linux 和 macOS(欢迎 iOS 的 PR)
🔍 基于延迟的自动选择
-🟡 广泛的协议支持:ECH、Sing-box、V2ray、Xray、Vless、Vmess、Trojan、Trojan with websocket、Reality、TUIC、Hysteria、Hysteria2、ShadowTLS、SSH、Clash、Clash meta
+🟡 广泛的协议支持:**ECH, Sing-box, V2ray, Xray, Vless, Vmess, Reality, TUIC, Hysteria, ShadowTLS, SSH, Clash, Clash meta**
-🟡 支持多种订阅链接导入:Clash、Clash meta、Sing-box 和 Shadowsocks
+🟡 支持多种订阅链接导入: **Clash, Clash meta, Sing-box and Shadowsocks**
-🔄 自动订阅更新
+🔄 自动更新订阅
-🔎 显示个人资料信息,包括剩余天数和流量使用情况
+🔎 显示包含了剩余天数和流量使用情况的配置文件信息
💻 完全免费,没有任何广告和干扰
-🛡 开源、安全且社区驱动
+🛡 开源、安全且由社区驱动
🌙 深色和浅色模式
-⚙ 与所有代理管理面板的节点兼容
+⚙ 兼容所有的代理管理面板
-⭐ 适用于伊朗、中国、俄罗斯等国家配置
+⭐ 适用于伊朗、中国、俄罗斯或其他国家的配置
-📱 可在 Google Play 上获取
+📱 可在 [Google Play](https://play.google.com/store/apps/details?id=app.hiddify.com) 上获取
## 下载
@@ -58,7 +64,7 @@
| 操作系统 |
- 下载 |
+ 下载链接 |
@@ -66,9 +72,9 @@
Android |


- 
- 
-
+ 
+ 
+
|
@@ -83,58 +89,58 @@
| Linux |
- |
+ |
+
+
## 安装和教程
-请在 [wiki 页面](https://github.com/hiddify/hiddify-next/wiki) 上查找教程信息。
+请在 [wiki 页面](https://github.com/hiddify/hiddify-next/wiki) 上获取教程信息。
## 改进翻译
-您可以使用以下链接轻松地为该项目做出贡献以改进翻译:
-- [简体中文](https://inlang.com/editor/github.com/hiddify/hiddify-next?lang=en&lang=zh)
-- [英语](https://inlang.com/editor/github.com/hiddify/hiddify-next?lang=en)
+您可以使用以下链接轻松地为该项目改进翻译以做出贡献:
+ - [英语](https://inlang.com/editor/github.com/hiddify/hiddify-next?lang=en)
- [波斯语](https://inlang.com/editor/github.com/hiddify/hiddify-next?lang=en&lang=fa)
- [俄语](https://inlang.com/editor/github.com/hiddify/hiddify-next?lang=en&lang=ru)
+- [简体中文](https://inlang.com/editor/github.com/hiddify/hiddify-next?lang=en&lang=zh)
## 致谢
+
- [Sing-box](https://github.com/SagerNet/sing-box)
- [Sing-box for Android](https://github.com/SagerNet/sing-box-for-android)
- [Clash](https://github.com/Dreamacro/clash)
- [Clash Meta](https://github.com/MetaCubeX/Clash.Meta)
- [FClash](https://github.com/Fclash/Fclash)
-- [其他](./pubspec.yaml)
-## 捐赠与支持
+- [Others](./pubspec.yaml)
-支持我们的最简单方法是单击此页面顶部的 Star (⭐)。
+## 捐赠和支持
+
+支持我们的最简单方法是单击此页面顶部的Star (⭐) 。
-## 协作和联系信息
-我们需要您的协作才能继续开发并维护此项目。如果您是这些领域的专家,请随时与我们联系 并提及你的技能。
-
-* Flutter 开发
-* Swift 开发
-* Kotlin 开发
-* Go 开发
-
-
-
-
-
[](mailto:contribute@hiddify.com)
[](https://telegram.dog/hiddify)
[](https://telegram.dog/hiddify_board)
@@ -144,9 +150,10 @@
- 感谢所有参与该项目的人。包括以下列出的人,和更多其他来自 Github 的人。你们对我们的意义非常重大。 ♥
+我们非常感谢所有参与此项目的人,包括在这里的一些人和在Github之外的。这对我们来说意义重大。♥
-
+
+
@@ -156,4 +163,3 @@
使用 Contrib.Rocks 制作
-
diff --git a/appcast.xml b/appcast.xml
index ad9eee41..37c7f296 100644
--- a/appcast.xml
+++ b/appcast.xml
@@ -3,31 +3,31 @@
Release
-
- Version 0.10.8
- Mon, 13 Nov 2023 19:00:00 +0000
+ Version 0.10.0
+ Sat, 28 Oct 2023 12:00:00 +0000
+ sparkle:version="0.10.0" sparkle:os="android" />
-
- Version 0.10.8
- Mon, 13 Nov 2023 19:00:00 +0000
+ Version 0.10.9
+ Wed, 15 Nov 2023 19:00:00 +0000
+ url="https://github.com/hiddify/hiddify-next/releases/download/v0.10.9.dev/hiddify-windows-x64-setup.zip"
+ sparkle:version="0.10.9" sparkle:os="windows" />
-
- Version 0.10.8
- Mon, 13 Nov 2023 19:00:00 +0000
+ Version 0.10.9
+ Wed, 15 Nov 2023 19:00:00 +0000
+ url="https://github.com/hiddify/hiddify-next/releases/download/v0.10.9.dev/hiddify-macos-universal.zip"
+ sparkle:version="0.10.9" sparkle:os="macos" />
-
- Version 0.10.8
- Mon, 13 Nov 2023 19:00:00 +0000
+ Version 0.10.9
+ Wed, 15 Nov 2023 19:00:00 +0000
+ url="https://github.com/hiddify/hiddify-next/releases/download/v0.10.9.dev/hiddify-linux-x64.zip"
+ sparkle:version="0.10.9" sparkle:os="linux" />
\ No newline at end of file
diff --git a/assets/translations/strings_en.i18n.json b/assets/translations/strings_en.i18n.json
index 403d6d36..cae1904b 100644
--- a/assets/translations/strings_en.i18n.json
+++ b/assets/translations/strings_en.i18n.json
@@ -241,6 +241,7 @@
"tray": {
"dashboard": "Dashboard",
"quit": "Quit",
+ "open": "Open",
"status": {
"connect": "Connect",
"connecting": "Connecting",
diff --git a/assets/translations/strings_fa.i18n.json b/assets/translations/strings_fa.i18n.json
index ffafbc34..c9bc0356 100644
--- a/assets/translations/strings_fa.i18n.json
+++ b/assets/translations/strings_fa.i18n.json
@@ -246,7 +246,8 @@
"connecting": "در حال اتصال",
"disconnect": "قطع اتصال",
"disconnecting": "در حال قطع اتصال"
- }
+ },
+ "open": "باز کن"
},
"failure": {
"unexpected": "خطای غیرمنتظره",
diff --git a/assets/translations/strings_ru.i18n.json b/assets/translations/strings_ru.i18n.json
index e4c50034..af1f05e0 100644
--- a/assets/translations/strings_ru.i18n.json
+++ b/assets/translations/strings_ru.i18n.json
@@ -28,10 +28,10 @@
"connected": "Подключено"
},
"stats": {
- "traffic": "Скорость",
+ "traffic": "Текущий трафик",
"trafficTotal": "Трафик",
- "uplink": "Исходящий канал",
- "downlink": "Входящий канал"
+ "uplink": "Скорость отправки",
+ "downlink": "Скорость загрузки"
}
},
"profile": {
@@ -242,11 +242,12 @@
"dashboard": "Панель",
"quit": "Выход",
"status": {
- "connect": "Подключено",
+ "connect": "Подключиться",
"connecting": "Подключение",
- "disconnect": "Отключено",
+ "disconnect": "Отключиться",
"disconnecting": "Отключение"
- }
+ },
+ "open": "Открыть"
},
"failure": {
"unexpected": "Неожиданная ошибка",
diff --git a/assets/translations/strings_zh.i18n.json b/assets/translations/strings_zh.i18n.json
index daa6e0d5..f3117624 100644
--- a/assets/translations/strings_zh.i18n.json
+++ b/assets/translations/strings_zh.i18n.json
@@ -246,7 +246,8 @@
"connecting": "正在连接",
"disconnect": "已断开连接",
"disconnecting": "正在断开连接"
- }
+ },
+ "open": "打开"
},
"failure": {
"unexpected": "意外错误",
diff --git a/lib/features/system_tray/system_tray_controller.dart b/lib/features/system_tray/system_tray_controller.dart
index f93c8602..c230fb9f 100644
--- a/lib/features/system_tray/system_tray_controller.dart
+++ b/lib/features/system_tray/system_tray_controller.dart
@@ -1,6 +1,7 @@
import 'dart:io';
import 'package:hiddify/core/core_providers.dart';
+import 'package:hiddify/core/router/router.dart';
import 'package:hiddify/data/repository/config_options_store.dart';
import 'package:hiddify/domain/connectivity/connectivity.dart';
import 'package:hiddify/domain/constants.dart';
@@ -37,6 +38,13 @@ class SystemTrayController extends _$SystemTrayController
final serviceMode = ref.watch(serviceModeStoreProvider);
final t = ref.watch(translationsProvider);
+ final destinations = <(String label, String location)>[
+ (t.home.pageTitle, const HomeRoute().location),
+ (t.proxies.pageTitle, const ProxiesRoute().location),
+ (t.logs.pageTitle, const LogsRoute().location),
+ (t.settings.pageTitle, const SettingsRoute().location),
+ (t.about.pageTitle, const AboutRoute().location),
+ ];
loggy.debug('updating system tray');
@@ -79,6 +87,22 @@ class SystemTrayController extends _$SystemTrayController
],
),
),
+ MenuItem.submenu(
+ label: t.tray.open,
+ submenu: Menu(
+ items: [
+ ...destinations.map(
+ (e) => MenuItem(
+ label: e.$1,
+ onClick: (_) async {
+ await ref.read(windowControllerProvider.notifier).show();
+ ref.read(routerProvider).go(e.$2);
+ },
+ ),
+ ),
+ ],
+ ),
+ ),
MenuItem.separator(),
MenuItem(
label: t.tray.quit,
diff --git a/pubspec.yaml b/pubspec.yaml
index 508d19a5..c7642e45 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,7 +1,7 @@
name: hiddify
description: A Proxy Frontend.
publish_to: "none"
-version: 0.10.8+1008
+version: 0.10.9+1009
environment:
sdk: ">=3.1.0 <4.0.0"