6 Commits

Author SHA1 Message Date
Michael Chihlas
faaf9a90ba feat(rust): native Win32 window opacity via SetLayeredWindowAttributes
Tauri 2.11 doesn't expose set_opacity on its WebviewWindow (open issue
tauri-apps/tauri#3279). Drop down to the Win32 API directly: ensure
WS_EX_LAYERED is set on the overlay HWND, then SetLayeredWindowAttributes
with an 0..255 alpha. This is true OS-level window translucency — the
same call Tauri will eventually wrap upstream — not a CSS shim.

windows crate version is pinned to 0.61 to match Tauri 2.11.x's
transitive dependency, so WebviewWindow::hwnd() returns a compatible
HWND with no diamond-dependency conflict.

Replaces the earlier eval-based opacity workaround in apply_state and
set_window_opacity. Both call sites now go through apply_window_opacity.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 22:34:05 -04:00
Michael Chihlas
ca4bd8da7a feat(rust): register plugins, global shortcut, commands 2026-05-08 19:25:14 -04:00
Michael Chihlas
c1085e073a feat(rust): commands module with click-through toggle helpers 2026-05-08 19:19:31 -04:00
Michael Chihlas
4782c087b4 feat(security): per-window capabilities, overlay locked down
Removed `core:window:allow-set-opacity` from the default capability —
that permission identifier doesn't exist in Tauri 2.11.x. Window
opacity is exposed only on the Rust side; the JS layer routes through
our custom `set_window_opacity` command (added in Task 16).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 19:13:49 -04:00
Michael Chihlas
7e21a39c7f chore(rust): add store, window-state, global-shortcut, tokio
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 19:13:42 -04:00
Michael Chihlas
a8255b90d5 Initial commit: scaffold Tauri app 2026-05-08 14:31:16 -04:00