aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/app/passwordstore/ui/list/ListDestination.kt8
-rw-r--r--app/src/main/java/app/passwordstore/ui/list/ListScreen.kt2
-rw-r--r--app/src/main/java/app/passwordstore/ui/main/MainActivity.kt3
3 files changed, 9 insertions, 4 deletions
diff --git a/app/src/main/java/app/passwordstore/ui/list/ListDestination.kt b/app/src/main/java/app/passwordstore/ui/list/ListDestination.kt
index a9228484..54a7e66c 100644
--- a/app/src/main/java/app/passwordstore/ui/list/ListDestination.kt
+++ b/app/src/main/java/app/passwordstore/ui/list/ListDestination.kt
@@ -38,9 +38,11 @@ import app.passwordstore.ui.git.base.BaseGitActivity.GitOp
import app.passwordstore.ui.main.MainActivity
import app.passwordstore.util.extensions.isInsideRepository
import app.passwordstore.util.extensions.sharedPrefs
+import app.passwordstore.util.extensions.snackbar
import app.passwordstore.util.settings.AuthMode
import app.passwordstore.util.settings.PreferenceKeys
import app.passwordstore.util.viewmodel.SearchableRepositoryViewModel
+import com.github.michaelbull.result.onSuccess
import java.io.File
import kotlinx.collections.immutable.toImmutableSet
import kotlinx.coroutines.launch
@@ -115,7 +117,11 @@ fun ListDestination(
fun runGit(op: GitOp) {
refreshing = true
activity.lifecycleScope.launch {
- activity.runGit(op)
+ activity.runGit(op).onSuccess {
+ activity.snackbar(
+ message = activity.getString(R.string.git_tool_done, activity.getString(op.label))
+ )
+ }
refreshing = false
refresh()
}
diff --git a/app/src/main/java/app/passwordstore/ui/list/ListScreen.kt b/app/src/main/java/app/passwordstore/ui/list/ListScreen.kt
index 720cfc0a..1b359d5b 100644
--- a/app/src/main/java/app/passwordstore/ui/list/ListScreen.kt
+++ b/app/src/main/java/app/passwordstore/ui/list/ListScreen.kt
@@ -331,7 +331,7 @@ private fun ActionIcon(@DrawableRes icon: Int, @StringRes label: Int, onClick: (
}
}
-private val GitOp.label: Int
+internal val GitOp.label: Int
get() =
when (this) {
GitOp.SYNC -> R.string.git_sync
diff --git a/app/src/main/java/app/passwordstore/ui/main/MainActivity.kt b/app/src/main/java/app/passwordstore/ui/main/MainActivity.kt
index ce5fb1df..462bdb18 100644
--- a/app/src/main/java/app/passwordstore/ui/main/MainActivity.kt
+++ b/app/src/main/java/app/passwordstore/ui/main/MainActivity.kt
@@ -228,9 +228,8 @@ class MainActivity : BaseGitActivity() {
}
/** Runs [op]; failures show the usual git error dialog. */
- suspend fun runGit(op: GitOp) {
+ suspend fun runGit(op: GitOp): Result<Unit, Throwable> =
launchGitOperation(op).onFailure { promptOnErrorHandler(it) }
- }
/** Runs [op] (a hard reset against [branch]) and returns its outcome; the caller reports it. */
suspend fun gitOperation(op: GitOp, branch: String = ""): Result<Unit, Throwable> {