Skip to content

fix: Libre.fm sign-in, Auto above 1080p, resume after a decoder failure, and a progress bar setting - #1663

Merged
A-EDev merged 6 commits into
mainfrom
fix/librefm-live-quality-resume-progress-bar
Nov 2, 2026
Merged

A-EDev merged 6 commits into
mainfrom
fix/librefm-live-quality-resume-progress-bar

Conversation

@A-EDev

@A-EDev A-EDev commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Libre.fm: sign in with the authToken form of auth.getMobileSession (MD5 of the lower-cased user name and the password's MD5), which is the only form GNU FM accepts. Last.fm keeps the password form.
  • Auto quality: the 1080p cap now applies only to low-RAM devices. Since fix(player): SponsorBlock filler and preview, live quality caps, subtitle diagnostics #1137 it applied to every app heap of 256 MB or less, which held live Auto, the VOD Auto ladder and Shorts at 1080p on most phones. The screen viewport still keeps Auto at the display's class.
  • Decoder give-up: the player saves its place before it is emptied. Play, Retry and a quality change resume there, and Retry reloads the streams the player already has instead of extracting the video again. An app resume leaves the reload to the error screen's Retry.
  • New setting in Appearance › Player: Progress Bar With Hidden Controls, with On video (default, unchanged), Below and Off, on the shared connected toggle group. Below hangs the strip under the video edge as a draw-only bar, so taps on the bottom of the picture reach the player.

Related issue

Closes #1658
Closes #1617
Closes #1550
Closes #1527

Change type

  • Bug fix
  • Feature
  • Refactor or maintenance
  • Build, packaging, or CI
  • Documentation

Validation

  • ./gradlew :app:assembleGithubDebug (passed)
  • ./gradlew :app:testGithubDebugUnitTest (4,883 tests, 0 failures; new PlayerErrorHandlerDecoderTest, extended AudioscrobblerClientTest, ClearedMediaRecoveryStateTest and AdaptiveTrackSelectorDefaultsTest)
  • I ran any additional flavor-specific build or test tasks affected by this change. (ktlintCheck, :app:compileFossDebugKotlin, nightly notes check passed)
  • I manually tested the affected behavior on an Android device or emulator.

Test device and Android version: Resizable emulator, Android 17 (API 37)

Screenshots or recordings

Risk and compatibility

  • Player path: the track selector's device cap and the decoder give-up path. Phones that are not low-RAM can now pick 1440p or 4K in Auto when the screen is large enough. Playback memory stays bounded by the buffer byte targets.

  • New device-scoped preference portrait_idle_progress_bar, default On video. No Room change.

  • The change does not introduce secrets, private data, or unexpected telemetry.

  • New user-facing text uses Android string resources.

  • Dependency and lockfile changes are intentional and limited to this PR.

  • Room schema changes include the required version bump and migration, or this PR does not change the Room schema.

  • Breaking changes and upgrade steps are clearly documented.

Copilot AI balanced review requested due to automatic review settings November 2, 2026 22:36

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

@github-actions github-actions Bot added documentation Improvements or additions to documentation player Video and audio playback ui Compose UI, theming, or Material 3 surfaces labels Nov 2, 2026
@A-EDev
A-EDev merged commit cdffaa3 into main Nov 2, 2026
9 checks passed
@A-EDev
A-EDev deleted the fix/librefm-live-quality-resume-progress-bar branch November 2, 2026 22:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation player Video and audio playback ui Compose UI, theming, or Material 3 surfaces

Projects

None yet

2 participants