diff --git a/app/src/main/assets/changelog.html b/app/src/main/assets/changelog.html index bb16e651..d8a41d15 100644 --- a/app/src/main/assets/changelog.html +++ b/app/src/main/assets/changelog.html @@ -25,6 +25,12 @@

You can view the changelog dialog again at any time from the about section.

+

Version 0.9.44 beta4

+ +
    +
  1. FIX: Play/pause button offset too far to the right in landscape mode.
  2. +
+

Version 0.9.44 beta3

    diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/base/AbsSlidingMusicPanelActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/base/AbsSlidingMusicPanelActivity.java index 68491b10..1f6ba258 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/base/AbsSlidingMusicPanelActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/base/AbsSlidingMusicPanelActivity.java @@ -80,7 +80,7 @@ import butterknife.ButterKnife; /** * @author Karim Abou Zeid (kabouzeid) - *

    + *

    * Do not use {@link #setContentView(int)} but wrap your layout with * {@link #wrapSlidingMusicPanelAndFab(int)} first and then return it in {@link #createContentView()} */ @@ -197,14 +197,21 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi progressViewsUpdateHandler = new MusicProgressViewsUpdateHandler(this); - slidingUpPanelLayout.post(new Runnable() { + // I know the nested post calls are ugly, but this is necessary for the fab to be in the right position! + playPauseButton.post(new Runnable() { @Override public void run() { - if (slidingUpPanelLayout.getPanelState() == SlidingUpPanelLayout.PanelState.EXPANDED) { - mediaControllerContainer.setVisibility(View.VISIBLE); - onPanelSlide(slidingUpPanelLayout, 1); - onPanelExpanded(slidingUpPanelLayout); - } + dummyFab.post(new Runnable() { + @Override + public void run() { + playPauseButton.requestLayout(); + if (slidingUpPanelLayout.getPanelState() == SlidingUpPanelLayout.PanelState.EXPANDED) { + mediaControllerContainer.setVisibility(View.VISIBLE); + onPanelSlide(slidingUpPanelLayout, 1); + onPanelExpanded(slidingUpPanelLayout); + } + } + }); } }); } @@ -401,11 +408,18 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi initFabColorAnimatorIfNecessary(); initMiniPlayerAlphaAnimatorIfNecessary(); - int durationProgress = (int) (SLIDING_PANEL_ANIMATION_STEPS * slideOffset); - fabXAnimator.setCurrentPlayTime(durationProgress); - fabYAnimator.setCurrentPlayTime(durationProgress); - fabColorAnimator.setCurrentPlayTime(durationProgress); - miniPlayerAlphaAnimator.setCurrentPlayTime(durationProgress); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) { + fabXAnimator.setCurrentFraction(slideOffset); + fabYAnimator.setCurrentFraction(slideOffset); + fabColorAnimator.setCurrentFraction(slideOffset); + miniPlayerAlphaAnimator.setCurrentFraction(slideOffset); + } else { + int durationProgress = (int) (SLIDING_PANEL_ANIMATION_STEPS * slideOffset); + fabXAnimator.setCurrentPlayTime(durationProgress); + fabYAnimator.setCurrentPlayTime(durationProgress); + fabColorAnimator.setCurrentPlayTime(durationProgress); + miniPlayerAlphaAnimator.setCurrentPlayTime(durationProgress); + } } @Override