fix: snackbar and restarts bug

This commit is contained in:
Zane Schepke
2025-11-02 02:54:03 -05:00
parent 765785ff41
commit 880d30fdfa
4 changed files with 10 additions and 10 deletions
@@ -204,7 +204,7 @@ class MainActivity : AppCompatActivity() {
SnackbarInfo(
message =
buildAnnotatedString {
sideEffect.message.asString(context)
append(sideEffect.message.asString(context))
},
type = sideEffect.type ?: SnackbarType.INFO,
durationMs = sideEffect.durationMs ?: 4000L,
@@ -74,14 +74,14 @@ constructor(
if (tunnelConfig != null) {
tunnelRepository.save(tunnelConfig)
if (state.isRunning) tunnelManager.restartActiveTunnel(tunnelConfig.id)
postSideEffect(
GlobalSideEffect.Toast(
StringValue.StringResource(R.string.config_changes_saved)
)
)
postSideEffect(GlobalSideEffect.PopBackStack)
if (state.isRunning) tunnelManager.restartActiveTunnel(tunnelConfig.id)
}
}
.onFailure {
@@ -39,11 +39,6 @@ constructor(
reduce { state.copy(showSaveModal = false) }
lockdownSettingsRepository.upsert(lockdownSettings)
postSideEffect(GlobalSideEffect.PopBackStack)
postSideEffect(
GlobalSideEffect.Toast(StringValue.StringResource(R.string.config_changes_saved))
)
tunnelManager.setBackendMode(BackendMode.Inactive)
val allowedIps =
if (lockdownSettings.bypassLan) TunnelConfig.LAN_BYPASS_ALLOWED_IPS else emptySet()
@@ -54,6 +49,11 @@ constructor(
dualStack = lockdownSettings.dualStack,
)
)
postSideEffect(GlobalSideEffect.PopBackStack)
postSideEffect(
GlobalSideEffect.Toast(StringValue.StringResource(R.string.config_changes_saved))
)
}
suspend fun postSideEffect(globalSideEffect: GlobalSideEffect) {
@@ -111,12 +111,12 @@ constructor(
proxySettingsRepository.upsert(updated)
if (state.activeTuns.isNotEmpty()) tunnelManager.restartActiveTunnels()
postSideEffect(
GlobalSideEffect.Snackbar(StringValue.StringResource(R.string.config_changes_saved))
)
postSideEffect(GlobalSideEffect.PopBackStack)
if (state.activeTuns.isNotEmpty()) tunnelManager.restartActiveTunnels()
}
fun clearHttpBindError() = intent { reduce { state.copy(isHttpBindAddressError = false) } }