From 856cc04d4d9532c5b6016526fcc7e35ab9d63922 Mon Sep 17 00:00:00 2001 From: CappielloAntonio Date: Mon, 10 Jan 2022 12:41:41 +0100 Subject: [PATCH] Removed bottom buttons from PlayerControllerFragment --- .../ui/fragment/PlayerControllerFragment.java | 73 +-------- ...nner_fragment_player_controller_layout.xml | 152 +++++------------- 2 files changed, 51 insertions(+), 174 deletions(-) diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerControllerFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerControllerFragment.java index c491f451..a5e00285 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerControllerFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/PlayerControllerFragment.java @@ -22,41 +22,26 @@ import androidx.media3.session.SessionToken; import androidx.navigation.fragment.NavHostFragment; import androidx.viewpager2.widget.ViewPager2; -import com.cappielloantonio.play.App; import com.cappielloantonio.play.R; import com.cappielloantonio.play.databinding.InnerFragmentPlayerControllerBinding; -import com.cappielloantonio.play.interfaces.MediaCallback; -import com.cappielloantonio.play.model.Song; -import com.cappielloantonio.play.repository.SongRepository; -import com.cappielloantonio.play.service.MediaManager; import com.cappielloantonio.play.service.MediaService; import com.cappielloantonio.play.ui.activity.MainActivity; -import com.cappielloantonio.play.ui.dialog.PlaylistChooserDialog; import com.cappielloantonio.play.ui.dialog.RatingDialog; import com.cappielloantonio.play.ui.fragment.pager.PlayerControllerHorizontalPager; -import com.cappielloantonio.play.util.DownloadUtil; -import com.cappielloantonio.play.util.MappingUtil; import com.cappielloantonio.play.util.MusicUtil; import com.cappielloantonio.play.viewmodel.PlayerBottomSheetViewModel; import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.MoreExecutors; -import java.util.List; - public class PlayerControllerFragment extends Fragment { private static final String TAG = "PlayerCoverFragment"; private InnerFragmentPlayerControllerBinding bind; private ImageView playerMoveDownBottomSheet; private ViewPager2 playerSongCoverViewPager; - private ImageButton buttonRating; private ToggleButton buttonFavorite; private TextView playerSongTitleLabel; private TextView playerArtistNameLabel; - private ImageButton buttonDownload; - private ImageButton buttonAddToPlaylist; - private ImageButton buttonStartMix; - private ImageButton buttonLyrics; private MainActivity activity; private PlayerBottomSheetViewModel playerBottomSheetViewModel; @@ -75,7 +60,6 @@ public class PlayerControllerFragment extends Fragment { initCoverLyricsSlideView(); initMediaListenable(); initArtistLabelButton(); - initButtonRow(); return view; } @@ -105,15 +89,9 @@ public class PlayerControllerFragment extends Fragment { playerMoveDownBottomSheet = bind.getRoot().findViewById(R.id.player_move_down_bottom_sheet); playerSongCoverViewPager = bind.getRoot().findViewById(R.id.player_song_cover_view_pager); buttonFavorite = bind.getRoot().findViewById(R.id.button_favorite); - buttonRating = bind.getRoot().findViewById(R.id.button_rating); playerSongTitleLabel = bind.getRoot().findViewById(R.id.player_song_title_label); playerArtistNameLabel = bind.getRoot().findViewById(R.id.player_artist_name_label); - buttonDownload = bind.getRoot().findViewById(R.id.button_download); - buttonAddToPlaylist = bind.getRoot().findViewById(R.id.button_playlist); - buttonStartMix = bind.getRoot().findViewById(R.id.button_mix); - buttonLyrics = bind.getRoot().findViewById(R.id.button_lyrics); - playerMoveDownBottomSheet.setOnClickListener(view -> activity.collapseBottomSheet()); } @@ -186,13 +164,15 @@ public class PlayerControllerFragment extends Fragment { buttonFavorite.setOnClickListener(v -> playerBottomSheetViewModel.setFavorite(requireContext(), song)); - buttonRating.setOnClickListener(v -> { + buttonFavorite.setOnLongClickListener(v -> { Bundle bundle = new Bundle(); bundle.putParcelable("song_object", song); RatingDialog dialog = new RatingDialog(); dialog.setArguments(bundle); dialog.show(requireActivity().getSupportFragmentManager(), null); + + return false; }); if (getActivity() != null) { @@ -215,48 +195,11 @@ public class PlayerControllerFragment extends Fragment { }); } - private void initButtonRow() { - playerBottomSheetViewModel.getLiveSong().observe(requireActivity(), song -> { - if (song != null) { - buttonDownload.setOnClickListener(view -> DownloadUtil - .getDownloadTracker(requireContext()) - .download( - MappingUtil.mapMediaItem(requireContext(), song, false), - MappingUtil.mapDownload(song, null, null) - )); - - buttonAddToPlaylist.setOnClickListener(view -> { - Bundle bundle = new Bundle(); - bundle.putParcelable("song_object", song); - - PlaylistChooserDialog dialog = new PlaylistChooserDialog(); - dialog.setArguments(bundle); - dialog.show(requireActivity().getSupportFragmentManager(), null); - }); - - buttonStartMix.setOnClickListener(view -> { - MediaManager.startQueue(mediaBrowserListenableFuture, requireContext(), song); - - SongRepository songRepository = new SongRepository(App.getInstance()); - songRepository.getInstantMix(song, 20, new MediaCallback() { - @Override - public void onError(Exception exception) { - Log.e(TAG, "onError() " + exception.getMessage()); - } - - @Override - public void onLoadMedia(List media) { - MediaManager.enqueue(mediaBrowserListenableFuture, requireContext(), (List) media, true); - } - }); - }); - } - }); - - buttonLyrics.setOnClickListener(view -> playerSongCoverViewPager.setCurrentItem(1, true)); - } - - public void goBackToFirstPage() { + public void goToControllerPage() { playerSongCoverViewPager.setCurrentItem(0, false); } + + public void goToLyricsPage() { + playerSongCoverViewPager.setCurrentItem(1, true); + } } \ No newline at end of file diff --git a/app/src/main/res/layout/inner_fragment_player_controller_layout.xml b/app/src/main/res/layout/inner_fragment_player_controller_layout.xml index b7a09de5..42b0022a 100644 --- a/app/src/main/res/layout/inner_fragment_player_controller_layout.xml +++ b/app/src/main/res/layout/inner_fragment_player_controller_layout.xml @@ -9,18 +9,14 @@ android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content" - android:theme="@style/ThemeOverlay.Material3.Dark.ActionBar" - app:elevation="0dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> - + android:layout_height="wrap_content"> - + - - @@ -136,25 +113,23 @@ android:textColor="@color/titleTextColor" android:textSize="12sp" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="@+id/exo_progress" - app:layout_constraintBottom_toBottomOf="@+id/exo_progress"/> + app:layout_constraintTop_toBottomOf="@+id/exo_progress" /> + app:buffered_color="?attr/colorOnSecondaryContainer" + app:played_color="?attr/colorOnPrimaryContainer" + app:scrubber_color="?attr/colorOnPrimaryContainer" + app:unplayed_color="?attr/colorPrimaryContainer"/> + app:layout_constraintTop_toBottomOf="@+id/exo_progress" /> + app:layout_constraintTop_toBottomOf="@+id/exo_progress" + app:layout_constraintVertical_bias=".60" /> + app:srcCompat="@drawable/ic_shuffle" + app:tint="?attr/colorOnPrimaryContainer" /> + app:srcCompat="@drawable/ic_skip_previous" + app:tint="?attr/colorOnPrimaryContainer" /> + app:layout_constraintTop_toBottomOf="@+id/exo_progress" + app:layout_constraintVertical_bias=".60" + app:tint="?attr/colorOnPrimaryContainer" /> + app:layout_constraintTop_toBottomOf="@+id/exo_progress" + app:layout_constraintVertical_bias=".60" + app:tint="?attr/colorOnPrimaryContainer" /> + app:srcCompat="@drawable/ic_skip_next" + app:tint="?attr/colorOnPrimaryContainer" /> + app:srcCompat="@drawable/ic_repeat" + app:tint="?attr/colorOnPrimaryContainer" /> - - - - - - - - - - - - \ No newline at end of file