diff options
author | ByteHamster <ByteHamster@users.noreply.github.com> | 2023-02-02 00:05:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-02 00:05:02 +0100 |
commit | db5d47967a6de37604ffa938d4100dcf7d28b917 (patch) | |
tree | 5f1c77132cb2b6225ca6072fd95322c47db79adf /app | |
parent | 7af00f7e83bc5047ef3873494cdd1f43d31c026b (diff) | |
download | AntennaPod-db5d47967a6de37604ffa938d4100dcf7d28b917.zip |
Use nicer animation when sliding up player (#6301)
Diffstat (limited to 'app')
3 files changed, 11 insertions, 9 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java index f30c3d456..6b2267926 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java @@ -209,10 +209,7 @@ public class MainActivity extends CastEnabledActivity { audioPlayer.scrollToPage(AudioPlayerFragment.POS_COVER); } - float condensedSlideOffset = Math.max(0.0f, Math.min(0.2f, slideOffset - 0.2f)) / 0.2f; - audioPlayer.getExternalPlayerHolder().setAlpha(1 - condensedSlideOffset); - audioPlayer.getExternalPlayerHolder().setVisibility( - condensedSlideOffset > 0.99f ? View.GONE : View.VISIBLE); + audioPlayer.fadePlayerToToolbar(slideOffset); } }; diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java index 530d87e7f..e93db2d2a 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java @@ -183,10 +183,6 @@ public class AudioPlayerFragment extends Fragment implements sbPosition.setDividerPos(dividerPos); } - public View getExternalPlayerHolder() { - return getView().findViewById(R.id.playerFragment); - } - private void setupControlButtons() { butRev.setOnClickListener(v -> { if (controller != null) { @@ -528,6 +524,16 @@ public class AudioPlayerFragment extends Fragment implements return false; } + public void fadePlayerToToolbar(float slideOffset) { + float playerFadeProgress = Math.max(0.0f, Math.min(0.2f, slideOffset - 0.2f)) / 0.2f; + View player = getView().findViewById(R.id.playerFragment); + player.setAlpha(1 - playerFadeProgress); + player.setVisibility(playerFadeProgress > 0.99f ? View.GONE : View.VISIBLE); + float toolbarFadeProgress = Math.max(0.0f, Math.min(0.2f, slideOffset - 0.6f)) / 0.2f; + toolbar.setAlpha(toolbarFadeProgress); + toolbar.setVisibility(toolbarFadeProgress < 0.01f ? View.INVISIBLE : View.VISIBLE); + } + private static class AudioPlayerPagerAdapter extends FragmentStateAdapter { private static final String TAG = "AudioPlayerPagerAdapter"; diff --git a/app/src/main/res/layout/audioplayer_fragment.xml b/app/src/main/res/layout/audioplayer_fragment.xml index 78d2a9a49..496875a5f 100644 --- a/app/src/main/res/layout/audioplayer_fragment.xml +++ b/app/src/main/res/layout/audioplayer_fragment.xml @@ -13,7 +13,6 @@ android:layout_gravity="top" android:elevation="8dp" android:outlineProvider="none" - android:paddingBottom="1dp" tools:layout_height="@dimen/external_player_height" /> <RelativeLayout |