feat(macos): set traffic-light position via Tauri builder API and sync with zoom
Use Tauri's native `traffic_light_position()` builder method to position macOS window controls instead of runtime objc2 calls. A global AtomicU32 tracks the current zoom level so newly created windows reflect the latest zoom. The frontend syncs zoom changes to the backend via a new `update_traffic_light_position` command. - Add `traffic_light_position()` to `apply_platform_window_style` builder - Add `CURRENT_ZOOM` atomic and `traffic_light_position()` helper - Register `update_traffic_light_position` Tauri command - Add `syncTrafficLightPosition` in appearance-provider to sync on zoom change, mount, and cross-tab storage events - Consolidate `ensure_windows_undecorated` calls into `post_window_setup` - Remove dead `on_window_resized` no-op and its Resized event listener Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -442,6 +442,12 @@ export async function mcpRemoveServer(
|
||||
})
|
||||
}
|
||||
|
||||
// Appearance / window chrome
|
||||
|
||||
export async function updateTrafficLightPosition(zoom: number): Promise<void> {
|
||||
return invoke("update_traffic_light_position", { zoom: zoom as number })
|
||||
}
|
||||
|
||||
// Folder history commands
|
||||
|
||||
export async function loadFolderHistory(): Promise<FolderHistoryEntry[]> {
|
||||
|
||||
Reference in New Issue
Block a user