add loading indicator for mini player controls

This commit is contained in:
dkanada 2021-02-21 21:26:06 +09:00
commit e26fe8d017
3 changed files with 17 additions and 12 deletions

View file

@ -55,11 +55,14 @@ public class MiniPlayerFragment extends AbsMusicServiceFragment implements Music
private void setUpMiniPlayer() { private void setUpMiniPlayer() {
setUpPlayPauseButton(); setUpPlayPauseButton();
binding.progressBar.setProgressTintList(ColorStateList.valueOf(ThemeStore.accentColor(requireActivity()))); binding.progressBar.setProgressTintList(ColorStateList.valueOf(ThemeStore.accentColor(requireActivity())));
binding.progressBar.setIndeterminateTintList(ColorStateList.valueOf(ThemeStore.accentColor(requireActivity())));
} }
private void setUpPlayPauseButton() { private void setUpPlayPauseButton() {
miniPlayerPlayPauseDrawable = new PlayPauseDrawable(requireActivity()); miniPlayerPlayPauseDrawable = new PlayPauseDrawable(requireActivity());
binding.miniPlayerPlayPauseButton.setImageDrawable(miniPlayerPlayPauseDrawable); binding.miniPlayerPlayPauseButton.setImageDrawable(miniPlayerPlayPauseDrawable);
binding.miniPlayerPlayPauseButton.setColorFilter(ATHUtil.resolveColor(requireActivity(), R.attr.iconColor, ThemeStore.textColorSecondary(requireActivity())), PorterDuff.Mode.SRC_IN); binding.miniPlayerPlayPauseButton.setColorFilter(ATHUtil.resolveColor(requireActivity(), R.attr.iconColor, ThemeStore.textColorSecondary(requireActivity())), PorterDuff.Mode.SRC_IN);
binding.miniPlayerPlayPauseButton.setOnClickListener(new PlayPauseButtonOnClickHandler()); binding.miniPlayerPlayPauseButton.setOnClickListener(new PlayPauseButtonOnClickHandler());
@ -87,6 +90,7 @@ public class MiniPlayerFragment extends AbsMusicServiceFragment implements Music
@Override @Override
public void onUpdateProgressViews(int progress, int total) { public void onUpdateProgressViews(int progress, int total) {
binding.progressBar.setIndeterminate(MusicPlayerRemote.isBuffering());
binding.progressBar.setMax(total); binding.progressBar.setMax(total);
binding.progressBar.setProgress(progress); binding.progressBar.setProgress(progress);
} }

View file

@ -13,14 +13,14 @@
android:layout_height="@dimen/progress_container_height" android:layout_height="@dimen/progress_container_height"
android:background="@color/twenty_percent_black_overlay"> android:background="@color/twenty_percent_black_overlay">
<me.zhanghai.android.materialprogressbar.MaterialProgressBar <me.zhanghai.android.materialprogressbar.MaterialProgressBar
android:id="@+id/player_buffering_indicator" android:id="@+id/player_buffering_indicator"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/progress_container_height" android:layout_height="@dimen/progress_container_height"
android:indeterminate="true" android:indeterminate="true"
app:mpb_progressStyle="horizontal" app:mpb_progressStyle="horizontal"
app:mpb_useIntrinsicPadding="false" app:mpb_useIntrinsicPadding="false"
style="@style/Widget.MaterialProgressBar.ProgressBar.Horizontal.NoPadding" /> style="@style/Widget.MaterialProgressBar.ProgressBar.Horizontal.NoPadding" />
</RelativeLayout> </RelativeLayout>

View file

@ -6,7 +6,7 @@
android:layout_height="@dimen/mini_player_height" android:layout_height="@dimen/mini_player_height"
android:background="?cardBackgroundColor" android:background="?cardBackgroundColor"
android:clickable="true" android:clickable="true"
android:focusable="false" android:focusable="true"
android:transitionName="@string/transition_mini_player" android:transitionName="@string/transition_mini_player"
tools:ignore="UnusedAttribute"> tools:ignore="UnusedAttribute">
@ -49,11 +49,12 @@
<me.zhanghai.android.materialprogressbar.MaterialProgressBar <me.zhanghai.android.materialprogressbar.MaterialProgressBar
android:id="@+id/progress_bar" android:id="@+id/progress_bar"
style="@style/Widget.MaterialProgressBar.ProgressBar.Horizontal"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="3dp" android:layout_height="4dp"
android:layout_gravity="bottom" android:layout_gravity="bottom"
app:mpb_progressStyle="horizontal" app:mpb_progressStyle="horizontal"
app:mpb_useIntrinsicPadding="false" /> app:mpb_useIntrinsicPadding="false"
app:mpb_setBothDrawables="true"
style="@style/Widget.MaterialProgressBar.ProgressBar.Horizontal" />
</FrameLayout> </FrameLayout>