Files
cinny-desktop/src-tauri/capabilities/migrated.json
T
jaredandClaude Opus 5.5 1674fd273f feat(overlay): in-game voice overlay window, Windows (#25)
While you're in a call and Lotus isn't the focused window, a small
always-on-top, click-through window lists everyone in the call, lights
up whoever is speaking, and shows your own mute / deafen / PTT state.

- A separate window, nothing injected into the game: no anti-cheat
  surface. Never takes focus (focusable(false), WS_EX_NOACTIVATE,
  SW_SHOWNOACTIVATE) and ignores the mouse.
- Its page is three static files served by the binary over the
  `lotusoverlay` custom protocol, with a strict CSP (no network) and no
  IPC (no capability names the window). Rust pushes state in as a JSON
  literal; the page renders with textContent only.
- New `set_overlay_state` command (main window only) takes the call
  snapshot from cinny's `useTauriOverlay`. Sanitised: bounded list and
  names, known corner. Placed in the chosen corner of the foreground
  window's monitor, DPI-scaled.
- Windows only; a no-op elsewhere (Linux has no in-app calls yet, #21).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PPmy3tPq869XDW4njjVaKA
2026-11-09 17:24:01 -05:00

103 lines
2.9 KiB
JSON

{
"identifier": "migrated",
"description": "permissions that were migrated from v1",
"local": true,
"remote": {
"urls": [
"http://localhost:44548"
]
},
"windows": [
"main"
],
"permissions": [
"core:default",
"core:window:allow-create",
"core:window:allow-center",
"core:window:allow-request-user-attention",
"core:window:allow-set-resizable",
"core:window:allow-set-maximizable",
"core:window:allow-set-minimizable",
"core:window:allow-set-closable",
"core:window:allow-set-title",
"core:window:allow-maximize",
"core:window:allow-unmaximize",
"core:window:allow-minimize",
"core:window:allow-unminimize",
"core:window:allow-show",
"core:window:allow-hide",
"core:window:allow-close",
"core:window:allow-set-decorations",
"core:window:allow-set-always-on-top",
"core:window:allow-set-content-protected",
"core:window:allow-set-size",
"core:window:allow-set-min-size",
"core:window:allow-set-max-size",
"core:window:allow-set-position",
"core:window:allow-set-fullscreen",
"core:window:allow-set-focus",
"core:window:allow-set-icon",
"core:window:allow-set-skip-taskbar",
"core:window:allow-set-cursor-grab",
"core:window:allow-set-cursor-visible",
"core:window:allow-set-cursor-icon",
"core:window:allow-set-cursor-position",
"core:window:allow-set-ignore-cursor-events",
"core:window:allow-start-dragging",
"core:webview:allow-print",
"notification:default",
"core:app:allow-app-show",
"core:app:allow-app-hide",
"autostart:allow-enable",
"autostart:allow-disable",
"autostart:allow-is-enabled",
{
"identifier": "opener:allow-open-url",
"allow": [
{
"url": "http://*"
},
{
"url": "https://*"
}
]
},
"allow-check-for-update",
"allow-flash-window",
"allow-focus-main-window",
"allow-get-close-behavior",
"allow-get-focus-assist",
"allow-get-start-minimized",
"allow-get-tray-dnd",
"allow-global-hotkeys-supported",
"allow-has-tray-host",
"allow-install-update",
"allow-resolve-close-request",
"allow-secure-session-clear",
"allow-secure-session-get",
"allow-secure-session-set",
"allow-secure-session-supported",
"allow-send-notification",
"allow-set-badge-count",
"allow-set-call-active",
"allow-set-close-behavior",
"allow-set-custom-chrome",
"allow-set-global-hotkeys",
"allow-set-jump-list",
"allow-set-overlay-state",
"allow-set-smtc-call-state",
"allow-set-start-minimized",
"allow-set-taskbar-progress",
"allow-set-thumbbar",
"allow-set-tray-call-state",
"allow-set-tray-unread",
"allow-set-tray-update-ready",
"allow-show-rich-toast",
"allow-update-install-kind",
"allow-window-close",
"allow-window-minimize",
"allow-window-start-drag",
"allow-window-toggle-maximize"
]
}