Skip to content

Conversation

@snowtimeglass
Copy link
Contributor

@snowtimeglass snowtimeglass commented Nov 24, 2025

Purpose / Description

I have read several requests/suggestions on GitHub/Forums/Play Store for the "Pause audio" feature, which already exists in the desktop version and AnkiMobile. For example:

Approach

  • Add “Pause audio” feature for sound tag playback, as an intermediate goal to implementing “Pause media”, which can also pause video playback.
  • Add the feature to the new study screen, without touching the legacy study screen (from the viewpoint of maintainability)
  • Use the conventional ”Suspend” icon for the "Pause audio"
    • Allocate a different icon for the "Suspend" item
  • Change the "Pause audio" item's icon and label when sound is being paused
    • "Pause audio" -> "Resume audio"
  • Disable the "Pause audio" item when a video playback or a TTS playback starts

How Has This Been Tested?

Tested on a physical device (Android 15 / SDK 35)

Record_2025-11-24-17-31-28_7b5228b5a93c00ecba98ecb0735c59e2.mp4

Tested deck: test Pause audio_-20251124180535.zip


image image

The "Pause audio" item is disabled when any sound tag playback aren't active.
image

The "Pause audio" item in "Controls" sceen
image

The "Pause audio" item is hidden when the new study screen is not enabled
image

The icon for "Suspend card" and "Suspend note"
image

The"Suspend" icons in "Controls" screen
image

In dark theme image image "Suspend" icon image

Confirmed as well:

  • Gestures work for the action
  • Keyboard controls work for the action

Checklist

Please, go through these checks before submitting the PR.

  • You have a descriptive commit message with a short title (first line, max 50 chars).
  • You have commented your code, particularly in hard-to-understand areas
  • You have performed a self-review of your own code
  • UI changes: include screenshots of all affected screens (in particular showing any new or changed strings)
  • UI Changes: You have tested your change using the Google Accessibility Scanner

Licenses

For each new external resource, add a row to the table below:

Library Description License
Google Fonts - For "Pause audio": used the "Pause Circle" icon
- For "Resume audio": arranged the "Play Circle" icon and the"Pause Circle"] icon above
- For "Suspend" icons: arranged the "Crop Square" icon and the "Pause Circle" icon above
The Apache Software License, Version 2.0

Maintainers:

  • Add the Licenses Adds a resource under an open source license See wiki: Licences label
  • Update the licenses wiki when merging

It works as toggling pause/resume sound tag playback, as in the desktop version.

The item's icon is the pause symbol with circle mark, which was used for "Suspend".
The conventional "Suspend" icon in the app is now replaced with a different one instead.
@github-actions
Copy link
Contributor

Important

Maintainers: This PR contains Strings changes

  1. Sync Translations before merging this PR and wait for the action to complete
  2. Review and merge the auto-generated PR in order to sync all user-submitted translations
  3. Sync Translations again and merge the PR so the huge automated string changes caused by merging this PR are by themselves and easy to review

@BrayanDSO
Copy link
Member

The feature never got accepted and it was barely discussed. There weren't even a participation of a maintainer there. I know that it is an Anki feature, but that doesn't justify the complexity here.

And right now the new study screen is under a stabilization phase, not a phase for adding new features.

Also, being frank, the code quality here isn't great. It may sound harsh, but it is a step back in terms of code complexity and cleaness, while my current goal is to improve testing in the new study screen, so cleanups and refactors are possible without risking too much breaking things.

I'll do the hard move of drafting the PR, since I don't think this is reviewable at the moment, nor any time soon.

@BrayanDSO BrayanDSO marked this pull request as draft November 24, 2025 22:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants