Skip to content

Native indicator waveform visualiser not working in pill mode #48

@poodle64

Description

@poodle64

Description

The native recording indicator in pill mode should display a real-time waveform/visualiser reflecting audio input levels. Currently on the `feature/native-indicator-renderer` branch, the pill renders but the waveform does not display or is unreliable.

The previous WebView-based indicator worked; the native renderer replacement on this branch has not achieved parity.

Current State

  • Branch: `feature/native-indicator-renderer`
  • Pill window renders and positions correctly
  • Audio metering data is being generated (channel-based polling)
  • Waveform visualisation does not render in the pill overlay
  • Multiple prior attempts to fix have claimed success but failed in practice

Investigation Areas

  • `src-tauri/src/recording_indicator/native.rs` (native rendering, draw calls)
  • `src-tauri/src/audio/metering.rs` (audio level data)
  • Channel-based indicator polling (audio data reaching the renderer)
  • CoreGraphics/AppKit drawing context for the overlay window

Acceptance Criteria

  • Pill mode shows real-time waveform reflecting actual audio input
  • Smooth animation without frame drops
  • Works on macOS 14+ (Sonoma)
  • Performance comparable to or better than the old WebView approach

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpriority:highImportant, blocks functionality

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions