Skip to content

SF-37: Add overlay mode capability states - #33

Merged
alexanderbrunker-star merged 1 commit into
mainfrom
codex/sf-37-overlay-mode
Apr 24, 2026
Merged

SF-37: Add overlay mode capability states#33
alexanderbrunker-star merged 1 commit into
mainfrom
codex/sf-37-overlay-mode

Conversation

@alexanderbrunker-star

Copy link
Copy Markdown
Member

Summary

  • add a shared browser overlay source model and popup UI for tab, macOS, iOS, and Android capability states
  • expose iOS and Android Overlay Mode status in native app state/UI
  • relabel macOS system capture as Overlay Mode while keeping file fallback and permission messaging explicit
  • update README platform capability notes

Verification

  • cd sonicflow_app/chrome-extension && npm test -- popup.test.js
  • make test-ios
  • cd sonicflow_app/android-app && ./gradlew --console=plain :app:testDebugUnitTest --tests 'com.sonicflow.app.ui.FlowTonesViewModelTest'\n- make mac\n\nLinear: SF-37

@linear

linear Bot commented Apr 24, 2026

Copy link
Copy Markdown
SF-37 SonicFlow overlay mode for Spotify, YouTube, browser tabs, and system audio

Goal

Make external-audio overlay a first-class SonicFlow mode: layer the functional modulation track over Spotify, YouTube, Apple Music, podcasts, local files, or browser tabs where each platform permits it.

Scope

  • Define shared Overlay Mode product model and platform capability matrix.
  • Chrome/web: prioritize YouTube and supported browser tabs via existing content-script/tab-audio path.
  • macOS: use system capture where permitted and retain local file fallback.
  • iOS: avoid promising full Spotify/YouTube system capture unless a compliant API path exists; support app-owned/local media first.
  • Android: investigate MediaProjection/audio capture policy and implement only legal/reliable sources.
  • Show honest source states: connected, unavailable, permission needed, browser-tab only.

Acceptance

  • Overlay Mode is explicit in the UI.
  • Unsupported sources fail gracefully with clear copy.
  • Browser and macOS can mix SonicFlow layer under external audio without hijacking playback.
  • Tests cover source selection, permission states, and session continuity when availability changes.

@alexanderbrunker-star
alexanderbrunker-star merged commit 252b798 into main Apr 24, 2026
1 check failed
@alexanderbrunker-star
alexanderbrunker-star deleted the codex/sf-37-overlay-mode branch April 24, 2026 06:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant