Release 1.6.0: restyle Windows secondary buttons and bump version.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Navis
2026-07-28 08:25:34 +03:00
co-authored by Cursor
parent a1e9019dcd
commit 68a48b05ef
14 changed files with 92 additions and 55 deletions
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+10 -10
View File
@@ -1,38 +1,38 @@
{
"version": "1.4.1",
"notes": "macOS DMG + Navis.app.zip в релизе (arm64/amd64)",
"version": "1.6.0",
"notes": "Windows: полноценные кнопки вместо «надписей»; версия 1.6.0",
"platform": "windows-amd64",
"os": "windows",
"arch": "amd64",
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/Navis.exe",
"sha256": "4217542dfa49a60d522295267b9bd7f3a838b2917b68d9ee59041abecf149e09",
"sha256": "5581e090ce94b7743cedcf721b32eb4b3449fc74f89d54cd7bf6a6b828cb2fab",
"mandatory": false,
"platforms": {
"windows-amd64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/Navis.exe",
"sha256": "4217542dfa49a60d522295267b9bd7f3a838b2917b68d9ee59041abecf149e09",
"sha256": "5581e090ce94b7743cedcf721b32eb4b3449fc74f89d54cd7bf6a6b828cb2fab",
"os": "windows",
"arch": "amd64"
},
"darwin-arm64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis",
"sha256": "a3bc2bcc256842d3914c44385a5fb9b61e691be2c19a9c283bc2099fcc48af9a",
"sha256": "c1727030ec48fcd25f64e28d91bb115bbd41c8c7664545ad9c386976b71c44ce",
"os": "darwin",
"arch": "arm64",
"dmg_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis.dmg",
"dmg_sha256": "a49584770e7453e7046ba80a4da8ac84a34797e3a8e4eb307a3d572d1fc95b59",
"dmg_sha256": "b0c4e2e2c393372cf4d94004c4888d7c6470f2f3e435833362f0530fc0bea413",
"zip_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis.app.zip",
"zip_sha256": "436c8c0382bf4491d288f6899d1a8fb0f7cd86b53063801f9dbc03f29a92046d"
"zip_sha256": "8f6816cc002f3a66938c7b5d4b09d8ca6920dbfd73670848bc51c08d1be1fc8c"
},
"darwin-amd64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis",
"sha256": "a1471b447e481e3fe61a65bb66c8633facd968087907e561584fd845842805fb",
"sha256": "6f7978428bccde576c12fc175b40a3590d300006437dd3eaf31182dce9104943",
"os": "darwin",
"arch": "amd64",
"dmg_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis.dmg",
"dmg_sha256": "eca2127f956959c1a4567dece779bfcd4bd414d2f63f430c24b133456fa5c56a",
"dmg_sha256": "ff2ef6d0893547b290193874cd87d51f1d1ca6232071877d443cdf3506566ef8",
"zip_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis.app.zip",
"zip_sha256": "de039f591032dbcf69e81499074cf7f51b80c83f08958521df9b8f873d2fe7be"
"zip_sha256": "51eb1847abf0b34d8b061680118c94df3e2340c5382d2a718bbef41ddbf19abc"
}
}
}
+10 -10
View File
@@ -1,38 +1,38 @@
{
"version": "1.4.1",
"notes": "macOS DMG + Navis.app.zip в релизе (arm64/amd64)",
"version": "1.6.0",
"notes": "Windows: полноценные кнопки вместо «надписей»; версия 1.6.0",
"platform": "windows-amd64",
"os": "windows",
"arch": "amd64",
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/Navis.exe",
"sha256": "4217542dfa49a60d522295267b9bd7f3a838b2917b68d9ee59041abecf149e09",
"sha256": "5581e090ce94b7743cedcf721b32eb4b3449fc74f89d54cd7bf6a6b828cb2fab",
"mandatory": false,
"platforms": {
"windows-amd64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/Navis.exe",
"sha256": "4217542dfa49a60d522295267b9bd7f3a838b2917b68d9ee59041abecf149e09",
"sha256": "5581e090ce94b7743cedcf721b32eb4b3449fc74f89d54cd7bf6a6b828cb2fab",
"os": "windows",
"arch": "amd64"
},
"darwin-arm64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis",
"sha256": "a3bc2bcc256842d3914c44385a5fb9b61e691be2c19a9c283bc2099fcc48af9a",
"sha256": "c1727030ec48fcd25f64e28d91bb115bbd41c8c7664545ad9c386976b71c44ce",
"os": "darwin",
"arch": "arm64",
"dmg_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis.dmg",
"dmg_sha256": "a49584770e7453e7046ba80a4da8ac84a34797e3a8e4eb307a3d572d1fc95b59",
"dmg_sha256": "b0c4e2e2c393372cf4d94004c4888d7c6470f2f3e435833362f0530fc0bea413",
"zip_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis.app.zip",
"zip_sha256": "436c8c0382bf4491d288f6899d1a8fb0f7cd86b53063801f9dbc03f29a92046d"
"zip_sha256": "8f6816cc002f3a66938c7b5d4b09d8ca6920dbfd73670848bc51c08d1be1fc8c"
},
"darwin-amd64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis",
"sha256": "a1471b447e481e3fe61a65bb66c8633facd968087907e561584fd845842805fb",
"sha256": "6f7978428bccde576c12fc175b40a3590d300006437dd3eaf31182dce9104943",
"os": "darwin",
"arch": "amd64",
"dmg_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis.dmg",
"dmg_sha256": "eca2127f956959c1a4567dece779bfcd4bd414d2f63f430c24b133456fa5c56a",
"dmg_sha256": "ff2ef6d0893547b290193874cd87d51f1d1ca6232071877d443cdf3506566ef8",
"zip_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis.app.zip",
"zip_sha256": "de039f591032dbcf69e81499074cf7f51b80c83f08958521df9b8f873d2fe7be"
"zip_sha256": "51eb1847abf0b34d8b061680118c94df3e2340c5382d2a718bbef41ddbf19abc"
}
}
}
+56 -19
View File
@@ -158,22 +158,54 @@
.switch input:checked + .slider { background: var(--accent); }
.switch input:checked + .slider::before { transform: translateX(18px); }
.actions { display: grid; gap: 8px; }
.actions { display: grid; gap: 10px; }
button.action {
appearance: none; border: 0; border-radius: 14px;
padding: 13px 16px; font: inherit; font-weight: 700; cursor: pointer;
transition: transform .12s, background .15s, opacity .15s;
appearance: none; border: 0; border-radius: 16px;
padding: 14px 16px; font: inherit; font-weight: 700; cursor: pointer;
transition: transform .12s, background .15s, opacity .15s, box-shadow .15s, border-color .15s, color .15s;
box-shadow: 0 8px 18px rgba(16, 36, 28, 0.08);
letter-spacing: -0.01em;
}
button.action:active { transform: translateY(1px); box-shadow: 0 3px 10px rgba(16, 36, 28, 0.08); }
button.action:disabled { opacity: .55; cursor: not-allowed; transform: none; box-shadow: none; }
.primary {
background: linear-gradient(145deg, #0c7a55, #12966a);
color: #f4fff9;
box-shadow: 0 12px 28px rgba(12, 122, 85, 0.28);
}
.primary:hover:not(:disabled) {
background: linear-gradient(145deg, #0e8a60, #14a575);
box-shadow: 0 14px 30px rgba(12, 122, 85, 0.34);
}
.primary.danger {
background: linear-gradient(145deg, #b42318, #d6453a);
box-shadow: 0 12px 28px rgba(180, 35, 24, 0.25);
}
.primary.danger:hover:not(:disabled) {
background: linear-gradient(145deg, #c52c20, #e05548);
}
.secondary {
background: linear-gradient(180deg, #ffffff, #eef7f2);
color: var(--ink);
border: 1px solid rgba(16, 36, 28, 0.14);
}
.secondary:hover:not(:disabled) {
background: #fff;
border-color: rgba(12, 122, 85, 0.35);
color: var(--accent);
box-shadow: 0 10px 22px rgba(16, 36, 28, 0.12);
}
button.action:active { transform: translateY(1px); }
button.action:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.primary { background: var(--accent); color: #f4fff9; }
.primary:hover:not(:disabled) { background: var(--accent-2); }
.primary.danger { background: var(--danger); }
.ghost {
background: transparent; color: var(--muted);
border: 1px solid var(--line);
background: linear-gradient(180deg, #ffffff, #eef7f2);
color: var(--ink);
border: 1px solid rgba(16, 36, 28, 0.14);
}
.ghost:hover:not(:disabled) {
background: #fff;
border-color: rgba(12, 122, 85, 0.35);
color: var(--accent);
box-shadow: 0 10px 22px rgba(16, 36, 28, 0.12);
}
.ghost:hover:not(:disabled) { background: rgba(255,255,255,.75); color: var(--ink); }
.meta {
margin-top: 14px; font-size: .82rem; color: var(--muted);
@@ -217,14 +249,19 @@
text-decoration: none;
font-weight: 600;
cursor: pointer;
box-shadow: none;
}
.shop-link:hover { text-decoration: underline; }
.tools {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 8px;
margin-top: 10px;
gap: 10px;
margin-top: 0;
}
.tools .action {
min-height: 48px;
font-size: .92rem;
}
.ping-list {
margin-top: 10px;
@@ -406,12 +443,12 @@
<div class="actions">
<button class="action primary" id="toggleBtn" type="button">Подключить</button>
<button class="action ghost" id="saveBtn" type="button">Сохранить профиль</button>
<button class="action secondary" id="saveBtn" type="button">Сохранить профиль</button>
<div class="tools">
<button class="action ghost" id="pingBtn" type="button">Пинг серверов</button>
<button class="action ghost" id="updCheckBtn" type="button">Проверить обновление</button>
<button class="action secondary" id="pingBtn" type="button">Пинг серверов</button>
<button class="action secondary" id="updCheckBtn" type="button">Проверить обновление</button>
</div>
<button class="action ghost" id="coreBtn" type="button">Установить cores (naive + hysteria2)</button>
<button class="action secondary" id="coreBtn" type="button">Установить cores (naive + hysteria2)</button>
</div>
<div class="ping-list" id="pingList"></div>
<p class="meta" id="meta">Загрузка…</p>
@@ -439,7 +476,7 @@
</div>
</div>
<div class="actions">
<button class="action ghost" id="cancelNew" type="button">Отмена</button>
<button class="action secondary" id="cancelNew" type="button">Отмена</button>
<button class="action primary" id="createNew" type="button">Создать</button>
</div>
</div>
+1 -1
View File
@@ -39,7 +39,7 @@ func Fetch(ctx context.Context, rawURL string) ([]Item, error) {
if err != nil {
return nil, err
}
req.Header.Set("User-Agent", "Navis/1.4.1")
req.Header.Set("User-Agent", "Navis/1.6.0")
client := &http.Client{Timeout: 45 * time.Second}
resp, err := client.Do(req)
if err != nil {
+1 -1
View File
@@ -17,7 +17,7 @@ import (
)
// CurrentVersion is the shipped client version.
const CurrentVersion = "1.4.1"
const CurrentVersion = "1.6.0"
// DefaultManifestURL is the update feed (hosted in the project git repo).
const DefaultManifestURL = "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/update.json"
+10 -10
View File
@@ -1,38 +1,38 @@
{
"version": "1.4.1",
"notes": "macOS DMG + Navis.app.zip в релизе (arm64/amd64)",
"version": "1.6.0",
"notes": "Windows: полноценные кнопки вместо «надписей»; версия 1.6.0",
"platform": "windows-amd64",
"os": "windows",
"arch": "amd64",
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/Navis.exe",
"sha256": "4217542dfa49a60d522295267b9bd7f3a838b2917b68d9ee59041abecf149e09",
"sha256": "5581e090ce94b7743cedcf721b32eb4b3449fc74f89d54cd7bf6a6b828cb2fab",
"mandatory": false,
"platforms": {
"windows-amd64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/Navis.exe",
"sha256": "4217542dfa49a60d522295267b9bd7f3a838b2917b68d9ee59041abecf149e09",
"sha256": "5581e090ce94b7743cedcf721b32eb4b3449fc74f89d54cd7bf6a6b828cb2fab",
"os": "windows",
"arch": "amd64"
},
"darwin-arm64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis",
"sha256": "a3bc2bcc256842d3914c44385a5fb9b61e691be2c19a9c283bc2099fcc48af9a",
"sha256": "c1727030ec48fcd25f64e28d91bb115bbd41c8c7664545ad9c386976b71c44ce",
"os": "darwin",
"arch": "arm64",
"dmg_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis.dmg",
"dmg_sha256": "a49584770e7453e7046ba80a4da8ac84a34797e3a8e4eb307a3d572d1fc95b59",
"dmg_sha256": "b0c4e2e2c393372cf4d94004c4888d7c6470f2f3e435833362f0530fc0bea413",
"zip_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-arm64/Navis.app.zip",
"zip_sha256": "436c8c0382bf4491d288f6899d1a8fb0f7cd86b53063801f9dbc03f29a92046d"
"zip_sha256": "8f6816cc002f3a66938c7b5d4b09d8ca6920dbfd73670848bc51c08d1be1fc8c"
},
"darwin-amd64": {
"url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis",
"sha256": "a1471b447e481e3fe61a65bb66c8633facd968087907e561584fd845842805fb",
"sha256": "6f7978428bccde576c12fc175b40a3590d300006437dd3eaf31182dce9104943",
"os": "darwin",
"arch": "amd64",
"dmg_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis.dmg",
"dmg_sha256": "eca2127f956959c1a4567dece779bfcd4bd414d2f63f430c24b133456fa5c56a",
"dmg_sha256": "ff2ef6d0893547b290193874cd87d51f1d1ca6232071877d443cdf3506566ef8",
"zip_url": "https://git.evilfox.cc/test2/navi/raw/branch/main/dist/navis-release/darwin-amd64/Navis.app.zip",
"zip_sha256": "de039f591032dbcf69e81499074cf7f51b80c83f08958521df9b8f873d2fe7be"
"zip_sha256": "51eb1847abf0b34d8b061680118c94df3e2340c5382d2a718bbef41ddbf19abc"
}
}
}
+4 -4
View File
@@ -1,7 +1,7 @@
{
"FixedFileInfo": {
"FileVersion": { "Major": 1, "Minor": 4, "Patch": 1, "Build": 0 },
"ProductVersion": { "Major": 1, "Minor": 4, "Patch": 1, "Build": 0 },
"FileVersion": { "Major": 1, "Minor": 6, "Patch": 0, "Build": 0 },
"ProductVersion": { "Major": 1, "Minor": 6, "Patch": 0, "Build": 0 },
"FileFlagsMask": "3f",
"FileFlags": "00",
"FileOS": "40004",
@@ -11,11 +11,11 @@
"StringFileInfo": {
"CompanyName": "Navis",
"FileDescription": "Navis — NaiveProxy / Hysteria 2 client for Windows and macOS",
"FileVersion": "1.4.1.0",
"FileVersion": "1.6.0.0",
"InternalName": "Navis",
"OriginalFilename": "Navis.exe",
"ProductName": "Navis",
"ProductVersion": "1.4.1.0"
"ProductVersion": "1.6.0.0"
},
"VarFileInfo": {
"Translation": {