From 6a1c56678fec6be6f9fe1ab938de0671b51f67d3 Mon Sep 17 00:00:00 2001 From: Matte23 Date: Tue, 17 Sep 2019 18:46:44 +0200 Subject: [PATCH] Add buttons for view and download circulars --- app/src/main/AndroidManifest.xml | 1 + .../adapters/CircularLetterAdapter.kt | 26 ++++++++++ .../main/res/drawable/baseline_get_app_24.xml | 10 ++++ .../drawable/baseline_notifications_24.xml | 10 ++++ .../main/res/drawable/baseline_star_24.xml | 11 ++++ .../res/drawable/baseline_visibility_24.xml | 10 ++++ app/src/main/res/layout/item_circular.xml | 51 ++++++++++++++++++- 7 files changed, 117 insertions(+), 2 deletions(-) create mode 100755 app/src/main/res/drawable/baseline_get_app_24.xml create mode 100755 app/src/main/res/drawable/baseline_notifications_24.xml create mode 100644 app/src/main/res/drawable/baseline_star_24.xml create mode 100755 app/src/main/res/drawable/baseline_visibility_24.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 174589e..e40243f 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -3,6 +3,7 @@ package="net.underdesk.circolapp"> + ) : var title: TextView = view.circular_title_textview var number: TextView = view.circular_number_textview var date: TextView = view.circular_date_textview + var viewButton: ImageButton = view.circular_view_button + var downloadButton: ImageButton = view.circular_download_button + var favouriteButton: ImageButton = view.circular_favourite_button + var reminderButton: ImageButton = view.circular_reminder_button } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CircularLetterViewHolder { @@ -51,6 +60,23 @@ class CircularLetterAdapter(private val circulars: List) : holder.number.text = context.getString(R.string.notification_title, circulars[position].id) holder.title.text = circulars[position].name holder.date.text = circulars[position].date + + holder.viewButton.setOnClickListener { + val viewIntent = Intent(Intent.ACTION_VIEW) + viewIntent.setDataAndType(Uri.parse(circulars[position].url), "application/pdf") + context.startActivity(viewIntent) + } + + holder.downloadButton.setOnClickListener { + val request = DownloadManager.Request(Uri.parse(circulars[position].url)) + request.setTitle(circulars[position].name) + request.setDestinationInExternalPublicDir( + Environment.DIRECTORY_DOWNLOADS, + "Circolapp/" + circulars[position].id + ".pdf" + ) + + (context.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager).enqueue(request) + } } override fun getItemCount() = circulars.size diff --git a/app/src/main/res/drawable/baseline_get_app_24.xml b/app/src/main/res/drawable/baseline_get_app_24.xml new file mode 100755 index 0000000..ae14452 --- /dev/null +++ b/app/src/main/res/drawable/baseline_get_app_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/baseline_notifications_24.xml b/app/src/main/res/drawable/baseline_notifications_24.xml new file mode 100755 index 0000000..62aaa47 --- /dev/null +++ b/app/src/main/res/drawable/baseline_notifications_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/baseline_star_24.xml b/app/src/main/res/drawable/baseline_star_24.xml new file mode 100644 index 0000000..def9310 --- /dev/null +++ b/app/src/main/res/drawable/baseline_star_24.xml @@ -0,0 +1,11 @@ + + + + diff --git a/app/src/main/res/drawable/baseline_visibility_24.xml b/app/src/main/res/drawable/baseline_visibility_24.xml new file mode 100755 index 0000000..f8a0a5c --- /dev/null +++ b/app/src/main/res/drawable/baseline_visibility_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/layout/item_circular.xml b/app/src/main/res/layout/item_circular.xml index 8cfdbec..db71743 100644 --- a/app/src/main/res/layout/item_circular.xml +++ b/app/src/main/res/layout/item_circular.xml @@ -29,8 +29,7 @@ android:layout_marginStart="8dp" android:layout_marginTop="4dp" android:layout_marginEnd="8dp" - android:layout_marginBottom="8dp" - app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintBottom_toTopOf="@+id/circular_view_button" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/circular_number_textview" /> @@ -45,6 +44,54 @@ app:layout_constraintStart_toEndOf="@+id/circular_number_textview" app:layout_constraintTop_toTopOf="@+id/circular_number_textview" /> + + + + + + + + + + \ No newline at end of file