Skip to content

Feature request: true push-to-talk global shortcut #413

Description

@aspiers

Requested behaviour

Please add a true push-to-talk global shortcut:

  1. Press and hold the configured shortcut to start listening.
  2. Speak while the shortcut remains held.
  3. Release the shortcut to stop listening and process the transcription.

For voice typing, an action such as “Push to talk, text to active window” would be especially useful. Speech Note should remain in the background or system tray throughout.

Current behaviour

Speech Note supports global shortcuts with toggle behaviour: one press starts listening and another press stops it. This is useful, but it is not push-to-talk.

Push-to-talk provides a clear microphone-activation boundary and reduces the risk of accidentally leaving the microphone listening. It also makes short dictation quicker and more natural.

The existing toggle behaviour should remain available separately.

Relationship to #112

This was previously mentioned in #112, which requested both toggle-to-listen and hold-to-listen.

That issue was closed after toggle behaviour was implemented in version 4.5.0. As far as I can determine, the hold/release behaviour was not implemented. This issue is therefore a narrowly scoped follow-up for true push-to-talk.

Suggested interaction

  • Shortcut pressed: invoke the selected start-listening action.
  • Shortcut released: invoke stop-listening.
  • Ideally support at least start-listening-active-window; support for the normal and clipboard listening actions would also be useful.
  • Continue supporting X11 and, where available, XDG Desktop Portal GlobalShortcuts activation/deactivation events on Wayland.

The current global-hotkey implementation already distinguishes activation and deactivation for at least one existing action, so similar handling may be reusable here.

Environment

  • Speech Note 4.8.4
  • openSUSE Tumbleweed package
  • XFCE on X11

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions