18 Commits
Author SHA1 Message Date
ZASENJC b0671bbf73 fix(translate): follow Bing geo redirects and surface both provider errors (#3)
- Follow 301/302/303/307/308 redirects within *.bing.com when fetching the Bing translator token and posting to /ttranslatev3, preserving the POST method/form body and caching the resolved origin on BingToken.
- Combine primary and secondary provider error messages when hedged free translation fails on both channels instead of discarding the first error.
- Fix debug-mode objc2 type encoding check in macOS make_button by using typed NSColor::CGColor and CALayer::setBackgroundColor methods.
- Bump workspace version to 0.2.2.
2026-10-16 17:34:59 +08:00
lingr25 1fde401b3a feat(windows): add a normal window mode switch
Add a 普通窗口模式 switch to the general settings section. When enabled the
window is created with WS_EX_APPWINDOW instead of WS_EX_TOOLWINDOW, so it
appears in the taskbar and Alt+Tab, and losing focus no longer hides it. The
extended style switches live without a restart; a failed save rolls the
checkbox back and reports the error, and the general section now reports
save failures instead of discarding them.

The switch is drawn anti-aliased. GDI's RoundRect has no smoothing, and at
22 logical pixels tall the staircase on the pill and the knob read as a
low-resolution control, so both shapes are rasterized together at 4x and
halftone-downscaled. The off track uses p.faint: p.line is the card border
and p.pill is the card fill, so the previous colours made the switch
disappear into the card it sits on.
2026-10-16 14:09:40 +09:00
lingr25 6b59eb12e5 feat(hotkeys): record shortcuts from native key presses 2026-10-16 12:46:28 +09:00
lingr25 b7f1839d9b fix(hotkeys): use platform modifiers and preserve bindings on failure 2026-10-16 12:07:05 +09:00
lingr25 f37722f321 fix(windows): show window on launch and reuse running instance 2026-10-16 12:00:30 +09:00
ZASENJC a4ddb522af feat: add signed native updates for macOS and Windows 2026-10-16 02:06:09 +08:00
ZASENJC 8d4628aeed refactor: separate native platforms and automate signed dual-platform releases 2026-10-16 00:05:02 +08:00
ZASENJC 8e14266c18 feat(windows): align native UI and manage built-in model service
Align the pure-Rust Windows translation, chat, settings, and toolbar design with macOS using shared Lucide icons. Fix hover and scrolling repaint artifacts, dropdown alignment, and native model download folder selection.

Persist manual service stops, cancel active built-in requests, and add confirmed cleanup of built-in models and managed runtime dependencies. Cover lifecycle behavior with Rust tests and add a native Windows repaint regression harness.

Validation: native Windows release build and installed UI verification; isolated Windows service lifecycle checks; six model manager tests; macOS cargo check; git diff --check.
2026-10-15 23:39:28 +08:00
ZASENJC d16722fdf4 feat: add native Windows app and OCR, remove legacy Tauri frontend 2026-10-15 20:29:44 +08:00
ZASENJC 46c2f3664b feat(ai,ui): add built-in HY-MT1.5-1.8B GGUF engine, unified settings UI, translation line spacing, and OCR newline toggle 2026-10-15 02:50:57 +08:00
ZASENJC e77b364750 feat(ai): support local MLX HY-MT1.5 prompt template, sampling params, and API key auth in LocalServer mode 2026-10-14 23:09:03 +08:00
ZASENJC d5de76938b feat(ui): share window dimensions between Translate and AI tabs, default opacity to 100%, and increase top bar margins 2026-10-14 22:53:53 +08:00
ZASENJC cbf0e1a4cc feat(ui): add left/right chat bubbles, history bar, and adaptive settings layout 2026-10-14 21:58:45 +08:00
ZASENJC 8c0140c45d fix(app): pass (source, target, text) in correct order to resolve_language_pair 2026-10-14 20:12:16 +08:00
ZASENJC cb605a5e8e feat(app): add per-pane draggable height splitters, min/max bounds, persistent layout memory, and pale color palette 2026-10-14 20:01:29 +08:00
ZASENJC 618fcc6239 feat(app): redesign pure-Rust AppKit UI into vertical 4-tier stacked layout 2026-10-14 19:36:36 +08:00
ZASENJC 2c47dfc79e refactor(storage): remove macOS Keychain runtime calls and persist config directly in 0600 settings.json 2026-10-14 19:17:38 +08:00
ZASENJC 0f04fefbcc feat: rewrite TTREE into 100% pure-Rust modular workspace with native AppKit UI, fast hedged translation, reliable OCR, and Ollama/LMStudio/GGUF AI backends 2026-10-14 19:07:43 +08:00