Основан на #1404 (текст про buf_kb = 0 и миграция конфига оттуда), поэтому здесь видны и его коммиты. Собственное изменение — последний коммит.
customtkinter 6.0.0 вместо 5.2.2.
Свои диалоги (ui/ctk_dialogs.py) вместо системных tkinter.messagebox: в тёмной теме, с типом ok / warning / error. Через них идут ошибки сохранения и результаты теста CF-прокси.
Тема и контролы — нейтральная тёмная тема в стиле Win11, анимированные чекбоксы, графика рендерится через PIL (сглаживание), переделаны подсказки.
Секрет — кнопка «Новый» генерирует секрет, под полем подсказка, что ссылка изменится.
Повторная привязка — если поменялись host / port / secret, после сохранения открывается окно с кнопками «Открыть в Telegram» и «Скопировать ссылку» (для телефона).
Перезапуск — после сохранения прокси перезапускается сам, без вопроса «Перезапустить?».
Правила DC — проверка каждой строки с номером ошибочной строки и примером формата.
Обновления — кнопка «Проверить» в настройках (принудительная проверка в обход интервала), статус «Проверяем…».
Окна — повторное открытие уже открытого окна поднимает его, а не создаёт второе.
Из строк убраны символы ✓/✗, тёмная тема Win32 упрощена.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/Flowseal/tg-ws-proxy/pull/1405
**Author:** [@holdingq0](https://github.com/holdingq0)
**Created:** 10/6/2026
**Status:** ❌ Closed
**Base:** `main` ← **Head:** `ui`
---
### 📝 Commits (10+)
- [`4715036`](https://github.com/Flowseal/tg-ws-proxy/commit/47150363554f09f693056e47c4d6dc1e37a1a70f) MsgSplitter: не расшифровывать аплоад второй раз
- [`ca101cd`](https://github.com/Flowseal/tg-ws-proxy/commit/ca101cd89a30e89056b8c30ad5e74ffb509099a9) Хендшейк: relay_init и метка времени fake TLS без циклов по байтам
- [`96177ea`](https://github.com/Flowseal/tg-ws-proxy/commit/96177eacea39320824bef3daf90d9a422ec00db0) Буферы сокетов оставляем ОС, пул ужимается в простое
- [`fce1807`](https://github.com/Flowseal/tg-ws-proxy/commit/fce1807fc475424b27c9ee8658993a4710e31409) Утечки: сокеты CF worker пула, фоновые задачи, зависшие клиенты
- [`23341b4`](https://github.com/Flowseal/tg-ws-proxy/commit/23341b44a2b468d43cfe37726c19d748664600aa) Fake TLS: защита от повтора ClientHello, секрет не пишем в лог
- [`bac3578`](https://github.com/Flowseal/tg-ws-proxy/commit/bac35782a85ba4c8c6efa2568857f49303c081e5) tg_ws_proxy: убрал дубли в _run
- [`d8bfc83`](https://github.com/Flowseal/tg-ws-proxy/commit/d8bfc83955b515dde0195957fb18b041c64af076) Сборка: из customtkinter кладём только assets
- [`2083057`](https://github.com/Flowseal/tg-ws-proxy/commit/20830575a116b7ae7effca1cd7e64fd199f5a8ed) Запасные WS-домены pluto/venus/aurora/vesta/flora
- [`d76e3ba`](https://github.com/Flowseal/tg-ws-proxy/commit/d76e3ba50a8058735f8324a142f148224e2e2ddf) cf_h2: не копировать тело ответа перед отдачей в канал
- [`affc768`](https://github.com/Flowseal/tg-ws-proxy/commit/affc768b3048d86245a9ff885dc442b158964ea5) Доки: синхронизировал флаги CLI и пример конфига трея с кодом
### 📊 Changes
**36 files changed** (+1356 additions, -836 deletions)
<details>
<summary>View changed files</summary>
📝 `docs/EN/BuildFromSource.md` (+3 -2)
📝 `docs/EN/TrayConfig.md` (+13 -6)
📝 `docs/RU/BuildFromSource.md` (+3 -2)
📝 `docs/RU/TrayConfig.md` (+13 -6)
📝 `linux.py` (+27 -27)
📝 `macos.py` (+5 -0)
📝 `packaging/linux.spec` (+2 -3)
📝 `packaging/macos.spec` (+1 -1)
📝 `packaging/windows.spec` (+2 -3)
📝 `proxy/bridge.py` (+2 -8)
📝 `proxy/cf_h2.py` (+2 -2)
📝 `proxy/config.py` (+1 -1)
📝 `proxy/fake_tls.py` (+12 -3)
📝 `proxy/pool.py` (+44 -26)
📝 `proxy/raw_websocket.py` (+2 -0)
📝 `proxy/tg_ws_proxy.py` (+36 -95)
📝 `proxy/utils.py` (+8 -4)
📝 `pyproject.toml` (+1 -1)
📝 `tests/test_bridge.py` (+6 -8)
📝 `tests/test_fake_tls.py` (+5 -0)
_...and 16 more files_
</details>
### 📄 Description
Редизайн окна настроек и диалогов трея.
> Основан на #1404 (текст про `buf_kb = 0` и миграция конфига оттуда), поэтому здесь видны и его коммиты. Собственное изменение — последний коммит.
- **customtkinter 6.0.0** вместо 5.2.2.
- **Свои диалоги** (`ui/ctk_dialogs.py`) вместо системных `tkinter.messagebox`: в тёмной теме, с типом ok / warning / error. Через них идут ошибки сохранения и результаты теста CF-прокси.
- **Тема и контролы** — нейтральная тёмная тема в стиле Win11, анимированные чекбоксы, графика рендерится через PIL (сглаживание), переделаны подсказки.
- **Секрет** — кнопка «Новый» генерирует секрет, под полем подсказка, что ссылка изменится.
- **Повторная привязка** — если поменялись host / port / secret, после сохранения открывается окно с кнопками «Открыть в Telegram» и «Скопировать ссылку» (для телефона).
- **Перезапуск** — после сохранения прокси перезапускается сам, без вопроса «Перезапустить?».
- **Правила DC** — проверка каждой строки с номером ошибочной строки и примером формата.
- **Обновления** — кнопка «Проверить» в настройках (принудительная проверка в обход интервала), статус «Проверяем…».
- **Окна** — повторное открытие уже открытого окна поднимает его, а не создаёт второе.
- Из строк убраны символы ✓/✗, тёмная тема Win32 упрощена.
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
mirror-bot
changed title from [PR #1405] Редизайн настроек и диалогов (customtkinter 6.0) to [PR #1405] [CLOSED] Редизайн настроек и диалогов (customtkinter 6.0)2026-10-07 08:00:32 +03:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/Flowseal/tg-ws-proxy/pull/1405
Author: @holdingq0
Created: 10/6/2026
Status: ❌ Closed
Base:
main← Head:ui📝 Commits (10+)
4715036MsgSplitter: не расшифровывать аплоад второй разca101cdХендшейк: relay_init и метка времени fake TLS без циклов по байтам96177eaБуферы сокетов оставляем ОС, пул ужимается в простоеfce1807Утечки: сокеты CF worker пула, фоновые задачи, зависшие клиенты23341b4Fake TLS: защита от повтора ClientHello, секрет не пишем в логbac3578tg_ws_proxy: убрал дубли в _rund8bfc83Сборка: из customtkinter кладём только assets2083057Запасные WS-домены pluto/venus/aurora/vesta/florad76e3bacf_h2: не копировать тело ответа перед отдачей в каналaffc768Доки: синхронизировал флаги CLI и пример конфига трея с кодом📊 Changes
36 files changed (+1356 additions, -836 deletions)
View changed files
📝
docs/EN/BuildFromSource.md(+3 -2)📝
docs/EN/TrayConfig.md(+13 -6)📝
docs/RU/BuildFromSource.md(+3 -2)📝
docs/RU/TrayConfig.md(+13 -6)📝
linux.py(+27 -27)📝
macos.py(+5 -0)📝
packaging/linux.spec(+2 -3)📝
packaging/macos.spec(+1 -1)📝
packaging/windows.spec(+2 -3)📝
proxy/bridge.py(+2 -8)📝
proxy/cf_h2.py(+2 -2)📝
proxy/config.py(+1 -1)📝
proxy/fake_tls.py(+12 -3)📝
proxy/pool.py(+44 -26)📝
proxy/raw_websocket.py(+2 -0)📝
proxy/tg_ws_proxy.py(+36 -95)📝
proxy/utils.py(+8 -4)📝
pyproject.toml(+1 -1)📝
tests/test_bridge.py(+6 -8)📝
tests/test_fake_tls.py(+5 -0)...and 16 more files
📄 Description
Редизайн окна настроек и диалогов трея.
ui/ctk_dialogs.py) вместо системныхtkinter.messagebox: в тёмной теме, с типом ok / warning / error. Через них идут ошибки сохранения и результаты теста CF-прокси.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
[PR #1405] Редизайн настроек и диалогов (customtkinter 6.0)to [PR #1405] [CLOSED] Редизайн настроек и диалогов (customtkinter 6.0)