feat: Add floating timer widget for background recording

Resolved 💬 3 comments Opened Dec 31, 2025 by mkalkere Closed Feb 12, 2026

Summary

When users switch tabs during a browser recording, the recording may be affected by browser throttling of background tabs. A floating timer widget (Picture-in-Picture style) would improve UX by:

  • Showing recording status when tab is backgrounded
  • Displaying timer and audio level indicator
  • Being semi-transparent to not obstruct other work
  • Allowing users to click to return to VaultNote

Problem

Browsers throttle setInterval and other timers in background tabs, which can cause:

  • Recording duration timer to desync
  • Potential early stop of recording
  • Users unaware their recording is still active

Current Mitigation

Added a subtle hint text: "For best results, keep this tab visible while recording"

Proposed Solution

Implement a floating mini-player using one of:

  1. Document Picture-in-Picture API (Chrome) - full mini-window
  2. CSS position: fixed overlay - appears when tab loses focus
  3. Browser notifications with live updates

Acceptance Criteria

  • [ ] Floating widget appears when user switches tabs during recording
  • [ ] Shows current recording time
  • [ ] Shows audio level indicator (optional)
  • [ ] Click to return to VaultNote tab
  • [ ] Semi-transparent design
  • [ ] Works across major browsers (Chrome, Firefox, Edge, Safari)

Related

  • Issue #360: Tier-based quota system
  • Bug #18: Recording stops early when tab is backgrounded (root cause: browser throttling)

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗