Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: swingmx/android
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v36
Choose a base ref
...
head repository: swingmx/android
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v39
Choose a head ref
  • 3 commits
  • 9 files changed
  • 1 contributor

Commits on Jul 3, 2025

  1. fix folder name bug by implementing base URL waiting pattern

    - Add base URL state management to FoldersViewModel following MediaControllerViewModel pattern
    - Wait for base URL before fetching root directories to avoid using default URL
    - Keep existing empty rootDirs handler as fallback for edge cases
    - Trigger root directories fetch only when base URL is available
    - This fixes the issue where folder names were not captured on first app launch
    Ericgacoki committed Jul 3, 2025
    Configuration menu
    Copy the full SHA
    da565dd View commit details
    Browse the repository at this point in the history
  2. fix generic paging errors

    Ericgacoki committed Jul 3, 2025
    Configuration menu
    Copy the full SHA
    e728f4e View commit details
    Browse the repository at this point in the history
  3. fix paging library pagination logic and implement custom error handling

    - Fix critical pagination bug where initial 60-item load caused incorrect startIndex calculations
    - Use consistent pageSize (20) in all PagingSources instead of variable params.loadSize
    - Set prefetchDistance = 1 in all PagingConfigs to prevent oversized initial loads
    - Implement CustomPagingException with user-friendly, context-aware error messages
    - Add HTTP status code specific error handling (404, 401, 403, 500)
    - Apply consistent paging fixes across FoldersPagingSource, AlbumsPagingSource, and ArtistsPagingSource
    
    This resolves duplicate tracks in queues and queue expansion issues caused by:
    1. Initial load: limit=60, start=0 (prefetchDistance=3 * pageSize=20)
    2. Second load: limit=20, start=20 (should have been start=60)
    3. Subsequent loads using wrong startIndex calculations
    
    Now pagination correctly follows: start=0,20,40,60... with consistent 20-item pages
    Ericgacoki committed Jul 3, 2025
    Configuration menu
    Copy the full SHA
    56dcc89 View commit details
    Browse the repository at this point in the history
Loading