diff --git a/app/src/main/java/com/nextcloud/client/jobs/utils/UploadErrorNotificationManager.kt b/app/src/main/java/com/nextcloud/client/jobs/utils/UploadErrorNotificationManager.kt index 5a6b142f8724..b23dc65962d7 100644 --- a/app/src/main/java/com/nextcloud/client/jobs/utils/UploadErrorNotificationManager.kt +++ b/app/src/main/java/com/nextcloud/client/jobs/utils/UploadErrorNotificationManager.kt @@ -210,7 +210,7 @@ object UploadErrorNotificationManager { context, operation.ocUploadId.toInt(), intent, - PendingIntent.FLAG_IMMUTABLE + PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE ) } } diff --git a/app/src/main/java/com/owncloud/android/ui/activity/ConflictsResolveActivity.kt b/app/src/main/java/com/owncloud/android/ui/activity/ConflictsResolveActivity.kt index 7059576a2a19..9df9ce325ab4 100644 --- a/app/src/main/java/com/owncloud/android/ui/activity/ConflictsResolveActivity.kt +++ b/app/src/main/java/com/owncloud/android/ui/activity/ConflictsResolveActivity.kt @@ -84,6 +84,22 @@ class ConflictsResolveActivity : offlineOperationNotificationManager = OfflineOperationsNotificationManager(this, viewThemeUtils) } + override fun onNewIntent(intent: Intent) { + super.onNewIntent(intent) + + setIntent(intent) + + // re-read extras from new intent + restoreState(null) + + // force fresh remote file fetch in onStart + existingFile = null + + val upload = uploadsStorageManager.getUploadById(conflictUploadId) + newFile = file + setupDecisionListener(upload) + } + private fun restoreState(savedInstanceState: Bundle?) { if (savedInstanceState != null) { conflictUploadId = savedInstanceState.getLong(EXTRA_CONFLICT_UPLOAD_ID)