diff --git a/app/src/main/java/com/cappielloantonio/play/ui/activity/base/BaseActivity.java b/app/src/main/java/com/cappielloantonio/play/ui/activity/base/BaseActivity.java
index b84bf265..70ce0f2f 100644
--- a/app/src/main/java/com/cappielloantonio/play/ui/activity/base/BaseActivity.java
+++ b/app/src/main/java/com/cappielloantonio/play/ui/activity/base/BaseActivity.java
@@ -250,7 +250,6 @@ public class BaseActivity extends AppCompatActivity implements EasyPermissions.P
public void onDownloadsChanged() {
// TODO Notificare all'item scaricato che lo stato di download รจ cambiato
// sampleAdapter.notifyDataSetChanged();
- Toast.makeText(this, "Download changed", Toast.LENGTH_SHORT).show();
}
private static final class MusicStateReceiver extends BroadcastReceiver {
diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java
index 8b040c31..9a054428 100644
--- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java
+++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/AlbumPageFragment.java
@@ -1,10 +1,15 @@
package com.cappielloantonio.play.ui.fragment;
+import android.os.Build;
import android.os.Bundle;
import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.view.ViewCompat;
import androidx.fragment.app.Fragment;
@@ -12,6 +17,7 @@ import androidx.lifecycle.ViewModelProvider;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.cappielloantonio.play.App;
+import com.cappielloantonio.play.R;
import com.cappielloantonio.play.adapter.SongResultSearchAdapter;
import com.cappielloantonio.play.databinding.FragmentAlbumPageBinding;
import com.cappielloantonio.play.glide.CustomGlideRequest;
@@ -32,6 +38,18 @@ public class AlbumPageFragment extends Fragment {
private SongResultSearchAdapter songResultSearchAdapter;
+ @Override
+ public void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setHasOptionsMenu(true);
+ }
+
+ @Override
+ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+ super.onCreateOptionsMenu(menu, inflater);
+ inflater.inflate(R.menu.album_page_menu, menu);
+ }
+
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
@@ -48,7 +66,6 @@ public class AlbumPageFragment extends Fragment {
albumPageViewModel = new ViewModelProvider(requireActivity()).get(AlbumPageViewModel.class);
init();
- initDownloadButton();
initBackCover();
initSongsView();
@@ -67,12 +84,21 @@ public class AlbumPageFragment extends Fragment {
bind = null;
}
- private void init() {
- albumPageViewModel.setAlbum(getArguments().getParcelable("album_object"));
+ @Override
+ public boolean onOptionsItemSelected(@NonNull MenuItem item) {
+ switch (item.getItemId()) {
+ case R.id.action_download_album:
+ DownloadUtil.getDownloadTracker(requireContext()).toggleDownload(albumPageViewModel.getAlbumSongList());
+ return true;
+ default:
+ break;
+ }
+
+ return false;
}
- private void initDownloadButton() {
- bind.downloadIconButton.setOnClickListener(v -> DownloadUtil.getDownloadTracker(requireContext()).toggleDownload(albumPageViewModel.getAlbumSongList()));
+ private void init() {
+ albumPageViewModel.setAlbum(getArguments().getParcelable("album_object"));
}
private void initAppBar() {
diff --git a/app/src/main/res/drawable/ic_file_download.xml b/app/src/main/res/drawable/ic_file_download.xml
new file mode 100644
index 00000000..3f16729b
--- /dev/null
+++ b/app/src/main/res/drawable/ic_file_download.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/layout/fragment_album_page.xml b/app/src/main/res/layout/fragment_album_page.xml
index c8c29b7b..7626e0b6 100644
--- a/app/src/main/res/layout/fragment_album_page.xml
+++ b/app/src/main/res/layout/fragment_album_page.xml
@@ -50,6 +50,7 @@
android:ellipsize="end"
android:maxLines="2"
android:singleLine="false"
+ android:text="American Idiot"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/album_cover_image_view"
app:layout_constraintTop_toTopOf="@+id/album_cover_image_view" />
@@ -63,6 +64,7 @@
android:layout_marginEnd="16dp"
android:ellipsize="end"
android:maxLines="1"
+ android:text="Green Day"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/album_cover_image_view"
app:layout_constraintTop_toBottomOf="@+id/album_name_label" />
@@ -74,26 +76,11 @@
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="16dp"
+ android:text="2004"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/album_cover_image_view"
app:layout_constraintTop_toBottomOf="@+id/album_artist_label" />
-
-
+
\ No newline at end of file
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 70c60bf2..53761777 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -97,7 +97,7 @@