Skip to content

Commit fd3f241

Browse files
alperozturk96backportbot[bot]
authored andcommitted
fix(upload-list): dismiss conflict resolve notification after resolving
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
1 parent 2a9df81 commit fd3f241

3 files changed

Lines changed: 16 additions & 6 deletions

File tree

app/src/main/java/com/nextcloud/client/jobs/utils/UploadErrorNotificationManager.kt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
package com.nextcloud.client.jobs.utils
99

1010
import android.app.Notification
11+
import android.app.NotificationManager
1112
import android.app.PendingIntent
1213
import android.content.Context
1314
import android.content.Intent
@@ -32,6 +33,11 @@ import kotlinx.coroutines.withContext
3233
object UploadErrorNotificationManager {
3334
private const val TAG = "UploadErrorNotificationManager"
3435

36+
fun dismissConflictResolveNotification(context: Context, id: Long) {
37+
val manager = context.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
38+
manager.cancel(id.toInt())
39+
}
40+
3541
/**
3642
* Processes the result of an upload operation and manages error notifications.
3743
* * It filters out successful or silent results and handles [ResultCode.SYNC_CONFLICT], [ResultCode.CONFLICT]

app/src/main/java/com/owncloud/android/ui/activity/ConflictsResolveActivity.kt

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
package com.owncloud.android.ui.activity
1111

1212
import android.annotation.SuppressLint
13-
import android.app.NotificationManager
1413
import android.content.Context
1514
import android.content.Intent
1615
import android.os.Bundle
@@ -24,6 +23,7 @@ import com.nextcloud.client.jobs.operation.FileOperationHelper
2423
import com.nextcloud.client.jobs.upload.FileUploadHelper
2524
import com.nextcloud.client.jobs.upload.FileUploadWorker
2625
import com.nextcloud.client.jobs.upload.UploadNotificationManager
26+
import com.nextcloud.client.jobs.utils.UploadErrorNotificationManager
2727
import com.nextcloud.model.HTTPStatusCodes
2828
import com.nextcloud.utils.extensions.getDecryptedPath
2929
import com.nextcloud.utils.extensions.getParcelableArgument
@@ -141,7 +141,10 @@ class ConflictsResolveActivity :
141141
}
142142

143143
withContext(Dispatchers.Main) {
144-
dismissConflictResolveNotification()
144+
UploadErrorNotificationManager.dismissConflictResolveNotification(
145+
this@ConflictsResolveActivity,
146+
conflictUploadId
147+
)
145148
finish()
146149
}
147150
}
@@ -332,10 +335,6 @@ class ConflictsResolveActivity :
332335
fileDataStorageManager.saveFile(file)
333336
}
334337

335-
private fun dismissConflictResolveNotification() {
336-
(getSystemService(NOTIFICATION_SERVICE) as NotificationManager).cancel(conflictUploadId.toInt())
337-
}
338-
339338
private fun showErrorAndFinish(code: Int? = null) {
340339
val message = if (code == HTTPStatusCodes.NOT_FOUND.code) {
341340
getString(R.string.uploader_file_not_found_on_server_message)

app/src/main/java/com/owncloud/android/ui/activity/UploadListActivity.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import com.nextcloud.client.core.Clock
2626
import com.nextcloud.client.device.PowerManagementService
2727
import com.nextcloud.client.jobs.upload.FileUploadEventBroadcaster
2828
import com.nextcloud.client.jobs.upload.FileUploadHelper
29+
import com.nextcloud.client.jobs.utils.UploadErrorNotificationManager
2930
import com.nextcloud.client.utils.Throttler
3031
import com.nextcloud.utils.extensions.webDavParentPath
3132
import com.owncloud.android.R
@@ -343,6 +344,10 @@ class UploadListActivity :
343344

344345
if (result.isSuccess) {
345346
withContext(Dispatchers.Main) {
347+
UploadErrorNotificationManager.dismissConflictResolveNotification(
348+
this@UploadListActivity,
349+
upload.uploadId
350+
)
346351
uploadListAdapter.loadUploadItemsFromDb()
347352
}
348353
}

0 commit comments

Comments
 (0)