From 6cf975fe497689bea0a609853ce4001b5b158eb6 Mon Sep 17 00:00:00 2001 From: Kanahia Date: Thu, 20 Jun 2024 00:32:30 +0530 Subject: [PATCH] Improved Tap to View notification --- .../free/nrw/commons/upload/PendingUploadsContract.java | 3 ++- .../fr/free/nrw/commons/upload/PendingUploadsFragment.kt | 2 +- .../free/nrw/commons/upload/PendingUploadsPresenter.java | 8 +++++--- .../fr/free/nrw/commons/upload/worker/UploadWorker.kt | 5 ++++- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsContract.java b/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsContract.java index 2efd48a76..2b56e901d 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsContract.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsContract.java @@ -1,5 +1,6 @@ package fr.free.nrw.commons.upload; +import android.content.Context; import fr.free.nrw.commons.BasePresenter; import fr.free.nrw.commons.contributions.Contribution; @@ -17,6 +18,6 @@ public class PendingUploadsContract { public interface UserActionListener extends BasePresenter { - void deleteUpload(Contribution contribution); + void deleteUpload(Contribution contribution, Context context); } } diff --git a/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsFragment.kt b/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsFragment.kt index 5fa2ad811..8e649a15c 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsFragment.kt @@ -193,7 +193,7 @@ class PendingUploadsFragment : CommonsDaggerSupportFragment(), PendingUploadsCon String.format(Locale.getDefault(), getString(R.string.no)), { ViewUtil.showShortToast(context, R.string.cancelling_upload) - pendingUploadsPresenter.deleteUpload(contribution) + pendingUploadsPresenter.deleteUpload(contribution, this.requireContext().applicationContext) CommonsApplication.cancelledUploads.add(contribution!!.pageId) }, {} diff --git a/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsPresenter.java b/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsPresenter.java index caf9d1f11..d55ac27b2 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsPresenter.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/PendingUploadsPresenter.java @@ -108,11 +108,14 @@ public class PendingUploadsPresenter implements UserActionListener { * Delete a failed contribution from the local db */ @Override - public void deleteUpload(final Contribution contribution) { + public void deleteUpload(final Contribution contribution, Context context) { compositeDisposable.add(repository .deleteContributionFromDB(contribution) .subscribeOn(ioThreadScheduler) - .subscribe()); + .subscribe(() -> + WorkRequestHelper.Companion.makeOneTimeWorkRequest( + context, ExistingWorkPolicy.KEEP) + )); } public void saveContribution(Contribution contribution, Context context) { @@ -126,7 +129,6 @@ public class PendingUploadsPresenter implements UserActionListener { } public void pauseUploads(List l, int index, Context context) { - Timber.tag("PRINT").e(CommonsApplication.pauseUploads.toString()); if (index >= l.size()) { return; } diff --git a/app/src/main/java/fr/free/nrw/commons/upload/worker/UploadWorker.kt b/app/src/main/java/fr/free/nrw/commons/upload/worker/UploadWorker.kt index 296ffe6a1..abfc6d71b 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/worker/UploadWorker.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/worker/UploadWorker.kt @@ -34,6 +34,7 @@ import fr.free.nrw.commons.upload.FileUtilsWrapper import fr.free.nrw.commons.upload.StashUploadResult import fr.free.nrw.commons.upload.StashUploadState import fr.free.nrw.commons.upload.UploadClient +import fr.free.nrw.commons.upload.UploadProgressActivity import fr.free.nrw.commons.upload.UploadResult import fr.free.nrw.commons.wikidata.WikidataEditService import kotlinx.coroutines.Dispatchers @@ -543,6 +544,7 @@ class UploadWorker(var appContext: Context, workerParams: WorkerParameters) : private fun showSuccessNotification(contribution: Contribution) { val displayTitle = contribution.media.displayTitle contribution.state=Contribution.STATE_COMPLETED + curentNotification.setContentIntent(getPendingIntent(MainActivity::class.java)) curentNotification.setContentTitle( appContext.getString( R.string.upload_completed_notification_title, @@ -565,7 +567,7 @@ class UploadWorker(var appContext: Context, workerParams: WorkerParameters) : @SuppressLint("StringFormatInvalid") private fun showFailedNotification(contribution: Contribution) { val displayTitle = contribution.media.displayTitle - curentNotification.setContentIntent(getPendingIntent(MainActivity::class.java)) + curentNotification.setContentIntent(getPendingIntent(UploadProgressActivity::class.java)) curentNotification.setContentTitle( appContext.getString( R.string.upload_failed_notification_title, @@ -604,6 +606,7 @@ class UploadWorker(var appContext: Context, workerParams: WorkerParameters) : */ private fun showPausedNotification(contribution: Contribution) { val displayTitle = contribution.media.displayTitle + curentNotification.setContentIntent(getPendingIntent(UploadProgressActivity::class.java)) curentNotification.setContentTitle( appContext.getString( R.string.upload_paused_notification_title,