Use getBindingAdapterPosition() instead of getAdapterPosition()

This commit is contained in:
CappielloAntonio 2021-04-12 14:51:25 +02:00
parent bbba68bc70
commit 41c04ab302
17 changed files with 39 additions and 41 deletions

View file

@ -74,14 +74,14 @@ public class AlbumAdapter extends RecyclerView.Adapter<AlbumAdapter.ViewHolder>
@Override @Override
public void onClick(View view) { public void onClick(View view) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("album_object", albums.get(getAdapterPosition())); bundle.putParcelable("album_object", albums.get(getBindingAdapterPosition()));
Navigation.findNavController(view).navigate(R.id.action_libraryFragment_to_albumPageFragment, bundle); Navigation.findNavController(view).navigate(R.id.action_libraryFragment_to_albumPageFragment, bundle);
} }
@Override @Override
public boolean onLongClick(View v) { public boolean onLongClick(View v) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("album_object", albums.get(getAdapterPosition())); bundle.putParcelable("album_object", albums.get(getBindingAdapterPosition()));
Navigation.findNavController(v).navigate(R.id.albumBottomSheetDialog, bundle); Navigation.findNavController(v).navigate(R.id.albumBottomSheetDialog, bundle);
return true; return true;
} }

View file

@ -71,14 +71,14 @@ public class AlbumArtistPageAdapter extends RecyclerView.Adapter<AlbumArtistPage
@Override @Override
public void onClick(View view) { public void onClick(View view) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("album_object", albums.get(getAdapterPosition())); bundle.putParcelable("album_object", albums.get(getBindingAdapterPosition()));
Navigation.findNavController(view).navigate(R.id.action_artistPageFragment_to_albumPageFragment, bundle); Navigation.findNavController(view).navigate(R.id.action_artistPageFragment_to_albumPageFragment, bundle);
} }
@Override @Override
public boolean onLongClick(View v) { public boolean onLongClick(View v) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("album_object", albums.get(getAdapterPosition())); bundle.putParcelable("album_object", albums.get(getBindingAdapterPosition()));
Navigation.findNavController(v).navigate(R.id.albumBottomSheetDialog, bundle); Navigation.findNavController(v).navigate(R.id.albumBottomSheetDialog, bundle);
return true; return true;
} }

View file

@ -76,7 +76,7 @@ public class AlbumCatalogueAdapter extends RecyclerView.Adapter<AlbumCatalogueAd
@Override @Override
public void onClick(View view) { public void onClick(View view) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("album_object", albums.get(getAdapterPosition())); bundle.putParcelable("album_object", albums.get(getBindingAdapterPosition()));
if (Objects.requireNonNull(Navigation.findNavController(view).getCurrentDestination()).getId() == R.id.searchFragment) { if (Objects.requireNonNull(Navigation.findNavController(view).getCurrentDestination()).getId() == R.id.searchFragment) {
Navigation.findNavController(view).navigate(R.id.action_searchFragment_to_albumPageFragment, bundle); Navigation.findNavController(view).navigate(R.id.action_searchFragment_to_albumPageFragment, bundle);
@ -92,7 +92,7 @@ public class AlbumCatalogueAdapter extends RecyclerView.Adapter<AlbumCatalogueAd
@Override @Override
public boolean onLongClick(View v) { public boolean onLongClick(View v) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("album_object", albums.get(getAdapterPosition())); bundle.putParcelable("album_object", albums.get(getBindingAdapterPosition()));
Navigation.findNavController(v).navigate(R.id.albumBottomSheetDialog, bundle); Navigation.findNavController(v).navigate(R.id.albumBottomSheetDialog, bundle);
return true; return true;
} }

View file

@ -71,14 +71,14 @@ public class ArtistAdapter extends RecyclerView.Adapter<ArtistAdapter.ViewHolder
@Override @Override
public void onClick(View view) { public void onClick(View view) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("artist_object", artists.get(getAdapterPosition())); bundle.putParcelable("artist_object", artists.get(getBindingAdapterPosition()));
Navigation.findNavController(view).navigate(R.id.action_libraryFragment_to_artistPageFragment, bundle); Navigation.findNavController(view).navigate(R.id.action_libraryFragment_to_artistPageFragment, bundle);
} }
@Override @Override
public boolean onLongClick(View v) { public boolean onLongClick(View v) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("artist_object", artists.get(getAdapterPosition())); bundle.putParcelable("artist_object", artists.get(getBindingAdapterPosition()));
Navigation.findNavController(v).navigate(R.id.artistBottomSheetDialog, bundle); Navigation.findNavController(v).navigate(R.id.artistBottomSheetDialog, bundle);
return true; return true;
} }

View file

@ -72,7 +72,7 @@ public class ArtistCatalogueAdapter extends RecyclerView.Adapter<ArtistCatalogue
@Override @Override
public void onClick(View view) { public void onClick(View view) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("artist_object", artists.get(getAdapterPosition())); bundle.putParcelable("artist_object", artists.get(getBindingAdapterPosition()));
if (Objects.requireNonNull(Navigation.findNavController(view).getCurrentDestination()).getId() == R.id.searchFragment) { if (Objects.requireNonNull(Navigation.findNavController(view).getCurrentDestination()).getId() == R.id.searchFragment) {
Navigation.findNavController(view).navigate(R.id.action_searchFragment_to_artistPageFragment, bundle); Navigation.findNavController(view).navigate(R.id.action_searchFragment_to_artistPageFragment, bundle);
@ -88,7 +88,7 @@ public class ArtistCatalogueAdapter extends RecyclerView.Adapter<ArtistCatalogue
@Override @Override
public boolean onLongClick(View v) { public boolean onLongClick(View v) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("artist_object", artists.get(getAdapterPosition())); bundle.putParcelable("artist_object", artists.get(getBindingAdapterPosition()));
Navigation.findNavController(v).navigate(R.id.artistBottomSheetDialog, bundle); Navigation.findNavController(v).navigate(R.id.artistBottomSheetDialog, bundle);
return true; return true;
} }

View file

@ -72,7 +72,7 @@ public class DiscoverSongAdapter extends RecyclerView.Adapter<DiscoverSongAdapte
@Override @Override
public void onClick(View view) { public void onClick(View view) {
SongRepository songRepository = new SongRepository(App.getInstance()); SongRepository songRepository = new SongRepository(App.getInstance());
songRepository.increasePlayCount(songs.get(getAdapterPosition())); songRepository.increasePlayCount(songs.get(getBindingAdapterPosition()));
} }
} }

View file

@ -60,7 +60,7 @@ public class GenreAdapter extends RecyclerView.Adapter<GenreAdapter.ViewHolder>
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (itemClickListener != null) if (itemClickListener != null)
itemClickListener.onItemClick(view, getAdapterPosition()); itemClickListener.onItemClick(view, getBindingAdapterPosition());
} }
} }

View file

@ -61,7 +61,7 @@ public class GenreCatalogueAdapter extends RecyclerView.Adapter<GenreCatalogueAd
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (itemClickListener != null) itemClickListener.onItemClick(view, getAdapterPosition()); if (itemClickListener != null) itemClickListener.onItemClick(view, getBindingAdapterPosition());
} }
} }

View file

@ -67,7 +67,7 @@ public class PlayerNowPlayingSongAdapter extends RecyclerView.Adapter<PlayerNowP
@Override @Override
public void onClick(View view) { public void onClick(View view) {
SongRepository songRepository = new SongRepository(App.getInstance()); SongRepository songRepository = new SongRepository(App.getInstance());
songRepository.increasePlayCount(songs.get(getAdapterPosition())); songRepository.increasePlayCount(songs.get(getBindingAdapterPosition()));
if (MusicPlayerRemote.isPlaying()) { if (MusicPlayerRemote.isPlaying()) {
MusicPlayerRemote.pauseSong(); MusicPlayerRemote.pauseSong();

View file

@ -80,10 +80,10 @@ public class PlayerSongQueueAdapter extends RecyclerView.Adapter<PlayerSongQueue
@Override @Override
public void onClick(View view) { public void onClick(View view) {
SongRepository songRepository = new SongRepository(App.getInstance()); SongRepository songRepository = new SongRepository(App.getInstance());
songRepository.increasePlayCount(songs.get(getAdapterPosition())); songRepository.increasePlayCount(songs.get(getBindingAdapterPosition()));
playerBottomSheetFragment.scrollPager(songs.get(getAdapterPosition()), getAdapterPosition(), true); playerBottomSheetFragment.scrollPager(songs.get(getBindingAdapterPosition()), getAdapterPosition(), true);
MusicPlayerRemote.openQueue(songs, getAdapterPosition(), true); MusicPlayerRemote.openQueue(songs, getBindingAdapterPosition(), true);
} }
} }

View file

@ -62,7 +62,7 @@ public class PlaylistAdapter extends RecyclerView.Adapter<PlaylistAdapter.ViewHo
@Override @Override
public void onClick(View view) { public void onClick(View view) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("playlist_object", playlists.get(getAdapterPosition())); bundle.putParcelable("playlist_object", playlists.get(getBindingAdapterPosition()));
Navigation.findNavController(view).navigate(R.id.action_libraryFragment_to_playlistPageFragment, bundle); Navigation.findNavController(view).navigate(R.id.action_libraryFragment_to_playlistPageFragment, bundle);
} }

View file

@ -91,22 +91,22 @@ public class RecentMusicAdapter extends RecyclerView.Adapter<RecentMusicAdapter.
SongRepository songRepository = new SongRepository(App.getInstance()); SongRepository songRepository = new SongRepository(App.getInstance());
QueueRepository queueRepository = new QueueRepository(App.getInstance()); QueueRepository queueRepository = new QueueRepository(App.getInstance());
songRepository.increasePlayCount(songs.get(getAdapterPosition())); songRepository.increasePlayCount(songs.get(getBindingAdapterPosition()));
queueRepository.insertAllAndStartNew(songs.subList(getAdapterPosition(), songs.size())); queueRepository.insertAllAndStartNew(songs.subList(getBindingAdapterPosition(), songs.size()));
mainActivity.isBottomSheetInPeek(true); mainActivity.isBottomSheetInPeek(true);
mainActivity.setBottomSheetMusicInfo(songs.get(getAdapterPosition())); mainActivity.setBottomSheetMusicInfo(songs.get(getBindingAdapterPosition()));
PlayerBottomSheetViewModel playerBottomSheetViewModel = new ViewModelProvider(mainActivity).get(PlayerBottomSheetViewModel.class); PlayerBottomSheetViewModel playerBottomSheetViewModel = new ViewModelProvider(mainActivity).get(PlayerBottomSheetViewModel.class);
playerBottomSheetViewModel.setNowPlayingSong(songs.get(getAdapterPosition())); playerBottomSheetViewModel.setNowPlayingSong(songs.get(getBindingAdapterPosition()));
MusicPlayerRemote.openQueue(songs.subList(getAdapterPosition(), songs.size()), 0, true); MusicPlayerRemote.openQueue(songs.subList(getBindingAdapterPosition(), songs.size()), 0, true);
} }
@Override @Override
public boolean onLongClick(View view) { public boolean onLongClick(View view) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("song_object", songs.get(getAdapterPosition())); bundle.putParcelable("song_object", songs.get(getBindingAdapterPosition()));
Navigation.findNavController(view).navigate(R.id.songBottomSheetDialog, bundle); Navigation.findNavController(view).navigate(R.id.songBottomSheetDialog, bundle);
return true; return true;
} }

View file

@ -60,7 +60,7 @@ public class RecentSearchAdapter extends RecyclerView.Adapter<RecentSearchAdapte
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (itemClickListener != null) if (itemClickListener != null)
itemClickListener.onItemClick(view, getAdapterPosition()); itemClickListener.onItemClick(view, getBindingAdapterPosition());
} }
} }

View file

@ -95,22 +95,22 @@ public class SongResultSearchAdapter extends RecyclerView.Adapter<SongResultSear
SongRepository songRepository = new SongRepository(App.getInstance()); SongRepository songRepository = new SongRepository(App.getInstance());
QueueRepository queueRepository = new QueueRepository(App.getInstance()); QueueRepository queueRepository = new QueueRepository(App.getInstance());
songRepository.increasePlayCount(songs.get(getAdapterPosition())); songRepository.increasePlayCount(songs.get(getBindingAdapterPosition()));
queueRepository.insertAllAndStartNew(songs.subList(getAdapterPosition(), songs.size())); queueRepository.insertAllAndStartNew(songs.subList(getBindingAdapterPosition(), songs.size()));
mainActivity.isBottomSheetInPeek(true); mainActivity.isBottomSheetInPeek(true);
mainActivity.setBottomSheetMusicInfo(songs.get(getAdapterPosition())); mainActivity.setBottomSheetMusicInfo(songs.get(getBindingAdapterPosition()));
PlayerBottomSheetViewModel playerBottomSheetViewModel = new ViewModelProvider(mainActivity).get(PlayerBottomSheetViewModel.class); PlayerBottomSheetViewModel playerBottomSheetViewModel = new ViewModelProvider(mainActivity).get(PlayerBottomSheetViewModel.class);
playerBottomSheetViewModel.setNowPlayingSong(songs.get(getAdapterPosition())); playerBottomSheetViewModel.setNowPlayingSong(songs.get(getBindingAdapterPosition()));
MusicPlayerRemote.openQueue(songs.subList(getAdapterPosition(), songs.size()), 0, true); MusicPlayerRemote.openQueue(songs.subList(getBindingAdapterPosition(), songs.size()), 0, true);
} }
@Override @Override
public boolean onLongClick(View v) { public boolean onLongClick(View v) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putParcelable("song_object", songs.get(getAdapterPosition())); bundle.putParcelable("song_object", songs.get(getBindingAdapterPosition()));
Navigation.findNavController(v).navigate(R.id.songBottomSheetDialog, bundle); Navigation.findNavController(v).navigate(R.id.songBottomSheetDialog, bundle);
return true; return true;
} }

View file

@ -56,7 +56,7 @@ public class YearAdapter extends RecyclerView.Adapter<YearAdapter.ViewHolder> {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (itemClickListener != null) itemClickListener.onItemClick(view, getAdapterPosition()); if (itemClickListener != null) itemClickListener.onItemClick(view, getBindingAdapterPosition());
} }
} }

View file

@ -3,9 +3,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginStart="24dp" android:layout_margin="24dp"
android:layout_marginEnd="24dp"
android:layout_marginBottom="8dp"
android:backgroundTint="@color/cardColor" android:backgroundTint="@color/cardColor"
app:cardCornerRadius="4dp"> app:cardCornerRadius="4dp">
@ -13,6 +11,6 @@
android:id="@+id/now_playing_song_cover_image_view" android:id="@+id/now_playing_song_cover_image_view"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?android:attr/selectableItemBackground"/> android:foreground="?android:attr/selectableItemBackground"/>
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>

View file

@ -13,6 +13,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@android:color/transparent" android:background="@android:color/transparent"
android:layout_marginBottom="-4dp"
android:paddingStart="24dp" android:paddingStart="24dp"
android:paddingTop="20dp" android:paddingTop="20dp"
android:text="Now playing" android:text="Now playing"
@ -26,11 +27,10 @@
android:id="@+id/player_song_cover_view_pager" android:id="@+id/player_song_cover_view_pager"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="0dp" android:layout_height="0dp"
android:layout_marginTop="20dp"
app:layout_constraintDimensionRatio="H,1:1" app:layout_constraintDimensionRatio="H,1:1"
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/collapse_bottom_sheet_button" /> app:layout_constraintTop_toBottomOf="@+id/collapse_bottom_sheet_button"/>
<LinearLayout <LinearLayout
android:id="@+id/player_big_timer" android:id="@+id/player_big_timer"
@ -92,7 +92,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:layout_marginTop="18dp" android:layout_marginTop="12dp"
android:paddingStart="24dp" android:paddingStart="24dp"
android:text="@string/label_placeholder" android:text="@string/label_placeholder"
android:textColor="@color/titleTextColor" android:textColor="@color/titleTextColor"
@ -106,7 +106,7 @@
android:background="@drawable/button_favorite_selector" android:background="@drawable/button_favorite_selector"
android:checked="false" android:checked="false"
android:gravity="center_vertical" android:gravity="center_vertical"
android:layout_marginTop="18dp" android:layout_marginTop="12dp"
android:layout_marginEnd="24dp" android:layout_marginEnd="24dp"
android:text="" android:text=""
android:textOff="" android:textOff=""
@ -121,6 +121,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:paddingStart="24dp" android:paddingStart="24dp"
android:paddingEnd="24dp" android:paddingEnd="24dp"
android:paddingBottom="18dp"
android:text="@string/label_placeholder" android:text="@string/label_placeholder"
android:textColor="@color/subtitleTextColor" android:textColor="@color/subtitleTextColor"
android:textSize="14sp" android:textSize="14sp"
@ -129,7 +130,6 @@
<View style="@style/Divider" <View style="@style/Divider"
android:id="@+id/player_divider" android:id="@+id/player_divider"
android:layout_marginTop="24dp"
android:layout_marginStart="18dp" android:layout_marginStart="18dp"
android:layout_marginEnd="18dp" android:layout_marginEnd="18dp"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"