From 7b039741c3042ea78c2f58e07dfb5768e5c62cc2 Mon Sep 17 00:00:00 2001 From: Eugene Cheung Date: Tue, 13 Jun 2017 15:33:37 -0400 Subject: [PATCH] Prevent flat controls from animating on every show --- .../FlatPlayerPlaybackControlsFragment.java | 37 +++++++++++-------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/flat/FlatPlayerPlaybackControlsFragment.java b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/flat/FlatPlayerPlaybackControlsFragment.java index db40c306..e3bdf379 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/flat/FlatPlayerPlaybackControlsFragment.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/fragments/player/flat/FlatPlayerPlaybackControlsFragment.java @@ -67,6 +67,8 @@ public class FlatPlayerPlaybackControlsFragment extends AbsMusicServiceFragment private AnimatorSet musicControllerAnimationSet; + private boolean hidden = false; + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -253,25 +255,28 @@ public class FlatPlayerPlaybackControlsFragment extends AbsMusicServiceFragment } public void show() { - if (musicControllerAnimationSet == null) { - TimeInterpolator interpolator = new FastOutSlowInInterpolator(); - final int duration = 300; + if (hidden) { + if (musicControllerAnimationSet == null) { + TimeInterpolator interpolator = new FastOutSlowInInterpolator(); + final int duration = 300; - LinkedList animators = new LinkedList<>(); + LinkedList animators = new LinkedList<>(); - addAnimation(animators, playPauseButton, interpolator, duration, 0); - addAnimation(animators, nextButton, interpolator, duration, 100); - addAnimation(animators, prevButton, interpolator, duration, 100); - addAnimation(animators, shuffleButton, interpolator, duration, 200); - addAnimation(animators, repeatButton, interpolator, duration, 200); + addAnimation(animators, playPauseButton, interpolator, duration, 0); + addAnimation(animators, nextButton, interpolator, duration, 100); + addAnimation(animators, prevButton, interpolator, duration, 100); + addAnimation(animators, shuffleButton, interpolator, duration, 200); + addAnimation(animators, repeatButton, interpolator, duration, 200); - - musicControllerAnimationSet = new AnimatorSet(); - musicControllerAnimationSet.playTogether(animators); - } else { - musicControllerAnimationSet.cancel(); + musicControllerAnimationSet = new AnimatorSet(); + musicControllerAnimationSet.playTogether(animators); + } else { + musicControllerAnimationSet.cancel(); + } + musicControllerAnimationSet.start(); } - musicControllerAnimationSet.start(); + + hidden = false; } public void hide() { @@ -283,6 +288,8 @@ public class FlatPlayerPlaybackControlsFragment extends AbsMusicServiceFragment prepareForAnimation(prevButton); prepareForAnimation(shuffleButton); prepareForAnimation(repeatButton); + + hidden = true; } private static void addAnimation(Collection animators, View view, TimeInterpolator interpolator, int duration, int delay) {