Skip to content

Feature Request: Add Pause/Play Controls to Speak Function #112

@Hantok

Description

@Hantok

Issue description for adding Pause/Play controls to the Speak feature.


🎙️ Feature Request: Add Pause/Play Controls to Speak Function

Summary

The current Speak feature lacks playback controls. Users can only select a speaker and adjust playback speed, but have no way to pause or resume audio mid-playback.

Current Behavior

The Speak toolbar (SPEAK 17/63) provides:

  • 🔊 Speaker selection (e.g., Ostap – Friendly – Male (uk-UA))
  • ⚡ Speed control (e.g., 1.3x)
  • ❌ Stop/Close button

There is no Pause or Play button available during playback.

Expected Behavior

Users should be able to:

  • ⏸️ Pause the audio at any point during playback
  • ▶️ Resume playback from the exact position it was paused
  • The Pause/Play toggle should be visible directly in the Speak toolbar alongside existing controls

Motivation / Use Case

Users often need to temporarily stop audio (e.g., to take notes, answer a question, or attend to something) without having to restart the entire reading session from the beginning. Without pause/resume, the only option is to stop playback entirely and lose the current position.

Proposed UI Change

  1. Add a ⏸/▶ toggle button in the Speak toolbar between the progress indicator and the speaker selector:
● SPEAK 17/63  [⏸/▶]  [Ostap - Friendly - Male (uk-UA) ▾]  [1.3x ▾]  [✕]
  1. Add support of apple keyboard ⏸/▶ (F8 key).
  2. Make sure, that Speak pop-up doesn't disappear when user changes the focus to another app in mac os. Now the Speak pop-up disappear.

Priority

🟡 Medium — Quality of life improvement for long-form content listening

Acceptance Criteria

  • A Pause button appears during active playback
  • Pressing Pause stops audio and the button switches to Play
  • Pressing Play resumes audio from the paused position
  • Playback position is preserved accurately after pause/resume
  • Works consistently across all available speakers and speed settings
Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions