Skip to content

Bckp/player sheet optim#620

Merged
theovilardo merged 17 commits intomasterfrom
bckp/player-sheet-optim
Dec 23, 2025
Merged

Bckp/player sheet optim#620
theovilardo merged 17 commits intomasterfrom
bckp/player-sheet-optim

Conversation

@theovilardo
Copy link
Copy Markdown
Owner

No description provided.

google-labs-jules bot and others added 17 commits December 23, 2025 04:07
- Increases the bottom padding of the `QueueBottomSheet` header from 20.dp to 26.dp for improved spacing.
…ions-2316053300601963138

Optimize player sheet animations 2316053300601963138
*   Refactored `UnifiedPlayerSheet` to use `Modifier.offset` instead of `Modifier.height` for expansion, eliminating layout thrashing.
*   Updated `FullPlayerContent` to accept expansion fraction as a provider lambda `() -> Float` to prevent expensive recompositions during drag.
*   Moved staggered animations (alpha, translation) into `Modifier.graphicsLayer`.
*   Optimized shadow rendering by using `RoundedCornerShape` for the shadow layer while keeping `AbsoluteSmoothCornerShape` for the visible background.
*   Implemented `zIndex` and off-screen offset logic to ensure correct interactivity of MiniPlayer and underlying content.
*   Fixed compilation issues related to `TopAppBar` and `Scaffold` parameter usage.
…error

*   Refactored `UnifiedPlayerSheet` to use `Modifier.offset` instead of `Modifier.height` for expansion, eliminating layout thrashing.
*   Updated `FullPlayerContent` to accept expansion fraction as a provider lambda `() -> Float` to prevent expensive recompositions during drag.
*   Moved staggered animations (alpha, translation) into `Modifier.graphicsLayer`.
*   Optimized shadow rendering by using `RoundedCornerShape` for the shadow layer while keeping `AbsoluteSmoothCornerShape` for the visible background.
*   Implemented `zIndex` and off-screen offset logic to ensure correct interactivity of MiniPlayer and underlying content.
*   Fixed `Unresolved reference: expansionFraction` compilation error in `FullPlayerContent.kt` by using `expansionFractionProvider` inside `graphicsLayer`.
…atures

*   Refactored `UnifiedPlayerSheet` to use `Modifier.offset` instead of `Modifier.height` for expansion, eliminating layout thrashing.
*   Updated `FullPlayerContent` to accept expansion fraction as a provider lambda `() -> Float` to prevent expensive recompositions during drag.
*   Moved staggered animations (alpha, translation) into `Modifier.graphicsLayer`.
*   Optimized shadow rendering by using `RoundedCornerShape` for the shadow layer.
*   Implemented `zIndex` and off-screen offset logic to ensure correct interactivity of MiniPlayer and underlying content.
*   Restored "Delay Content" functionality: Updated `FullPlayerContent` to respect `FullPlayerLoadingTweaks` by dynamically adjusting alpha start thresholds (e.g., 0.95f) when delay is enabled.
*   Fixed `Unresolved reference: expansionFraction` compilation error.
…aceholders

*   Refactored `UnifiedPlayerSheet` to use `Modifier.offset` instead of `Modifier.height` for expansion, eliminating layout thrashing.
*   Updated `FullPlayerContent` to accept expansion fraction as a provider lambda `() -> Float` to prevent expensive recompositions during drag.
*   Moved staggered animations (alpha, translation) into `Modifier.graphicsLayer`.
*   Optimized shadow rendering by using `RoundedCornerShape` for the shadow layer.
*   Implemented `zIndex` and off-screen offset logic to ensure correct interactivity of MiniPlayer and underlying content.
*   Restored "Delay Content" features: Added `DelayedContent` composable wrapper and implemented `ShimmerBox` placeholders for Album, Controls, Metadata, and Progress.
*   Fixed `Unresolved reference: expansionFraction` compilation error.
*   Fixed regression where TopAppBar disappeared when "Delay All" was enabled; it now remains visible during transitions.
*   Refactored `UnifiedPlayerSheet` to use `Modifier.offset` instead of `Modifier.height` for expansion, eliminating layout thrashing.
*   Updated `FullPlayerContent` to accept expansion fraction as a provider lambda `() -> Float` to prevent expensive recompositions during drag.
*   Moved staggered animations (alpha, translation) into `Modifier.graphicsLayer`.
*   Optimized shadow rendering by using `RoundedCornerShape` for the shadow layer.
*   Implemented `zIndex` and off-screen offset logic to ensure correct interactivity of MiniPlayer and underlying content.
*   Restored "Delay Content" features with `DelayedContent` wrapper.
*   Restored exact dimensions and padding for Placeholders (`ShimmerBox`) to match real content (`AlbumCover`, `Controls`, `Metadata`, `Progress`) precisely, as requested.
*   Fixed `Unresolved reference: expansionFraction` compilation error.
…roll fix

*   Refactored `UnifiedPlayerSheet` to use `Modifier.offset` instead of `Modifier.height` for expansion, eliminating layout thrashing.
*   Updated `FullPlayerContent` to accept expansion fraction as a provider lambda `() -> Float` to prevent expensive recompositions during drag.
*   Moved staggered animations (alpha, translation) into `Modifier.graphicsLayer`.
*   Optimized shadow rendering by using `RoundedCornerShape` for the shadow layer.
*   Implemented `zIndex` and off-screen offset logic to ensure correct interactivity of MiniPlayer and underlying content.
*   Restored "Delay Content" features with `DelayedContent` wrapper and updated threshold (0.85f -> 1.0f) for smoother, less abrupt transitions.
*   Restored exact dimensions and padding for Placeholders (`ShimmerBox`) to match real content precisely.
*   Fixed `AutoScrollingTextOnDemand` broken by the optimization: updated it to accept `expansionFractionProvider` and use `derivedStateOf` to correctly trigger scrolling only when fully expanded (> 0.99f).
*   Fixed `Unresolved reference: expansionFraction` compilation error.
…holders

*   Refactored `UnifiedPlayerSheet` to use `Modifier.offset` instead of `Modifier.height` for expansion, eliminating layout thrashing.
*   Updated `FullPlayerContent` to accept expansion fraction as a provider lambda `() -> Float` to prevent expensive recompositions during drag.
*   Moved staggered animations (alpha, translation) into `Modifier.graphicsLayer`.
*   Optimized shadow rendering by using `RoundedCornerShape` for the shadow layer.
*   Implemented `zIndex` and off-screen offset logic to ensure correct interactivity of MiniPlayer and underlying content.
*   Restored "Delay Content" features with `DelayedContent` wrapper and updated threshold for smoother transitions.
*   Replaced `ShimmerBox` placeholders with simpler, static `PlaceholderBox` composables using `Surface` and `RoundedCornerShape`, matching the exact requested design and layout.
*   Updated `FullPlayerLoadingTweaks` to disable `showPlaceholders` by default.
*   Fixed `AutoScrollingTextOnDemand` to work with the provider-based state.
*   Fixed `Unresolved reference: expansionFraction` compilation error.
…eter

Updates the `MarqueeText` composable in `LibraryScreen.kt` to align with a recent API change.

- The `expansionFraction` parameter, which previously accepted a `Float`, is now changed to `expansionFractionProvider`, which accepts a lambda `() -> Float`.
- The implementation is updated from `expansionFraction = 1f` to `expansionFractionProvider = { 1f }` to match the new function signature.
…ions-2316053300601963138

Optimize player sheet animations 2316053300601963138
@theovilardo theovilardo merged commit e0dcbfb into master Dec 23, 2025
@lostf1sh lostf1sh deleted the bckp/player-sheet-optim branch January 16, 2026 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant