Revert "handle click when have unsaved changes"

This reverts commit 39ca03f9c0.
This commit is contained in:
spaced4ndy
2024-11-22 17:45:24 +04:00
parent 243b2825dd
commit ba53cc63c6
3 changed files with 13 additions and 24 deletions
@@ -431,10 +431,8 @@ fun DesktopScreen(userPickerState: MutableStateFlow<AnimatedViewState>) {
.fillMaxSize()
.padding(start = DEFAULT_START_MODAL_WIDTH * fontSizeSqrtMultiplier)
.clickable(interactionSource = remember { MutableInteractionSource() }, indication = null, onClick = {
if (chatModel.centerPanelBackgroundClickHandler == null || chatModel.centerPanelBackgroundClickHandler?.invoke() == false) {
ModalManager.start.closeModals()
userPickerState.value = AnimatedViewState.HIDING
}
ModalManager.start.closeModals()
userPickerState.value = AnimatedViewState.HIDING
})
)
}
@@ -167,9 +167,6 @@ object ChatModel {
val processedCriticalError: ProcessedErrors<AgentErrorType.CRITICAL> = ProcessedErrors(60_000)
val processedInternalError: ProcessedErrors<AgentErrorType.INTERNAL> = ProcessedErrors(20_000)
// return true if you handled the click
var centerPanelBackgroundClickHandler: (() -> Boolean)? = null
fun getUser(userId: Long): User? = if (currentUser.value?.userId == userId) {
currentUser.value
} else {
@@ -52,24 +52,18 @@ fun ModalData.NetworkAndServersView(close: () -> Unit) {
val scope = rememberCoroutineScope()
val proxyPort = remember { derivedStateOf { appPrefs.networkProxy.state.value.port } }
fun onClose(): Boolean = if (!serversCanBeSaved(currUserServers.value, userServers.value, serverErrors.value)) {
close()
false
} else {
showUnsavedChangesAlert(
{ scope.launch { saveServers(currentRemoteHost?.remoteHostId, currUserServers, userServers) }},
close
)
true
}
DisposableEffect(Unit) {
chatModel.centerPanelBackgroundClickHandler = ::onClose
onDispose {
chatModel.centerPanelBackgroundClickHandler = null
ModalView(
close = {
if (!serversCanBeSaved(currUserServers.value, userServers.value, serverErrors.value)) {
close()
} else {
showUnsavedChangesAlert(
{ scope.launch { saveServers(currentRemoteHost?.remoteHostId, currUserServers, userServers) }},
close
)
}
}
}
ModalView(close = ::onClose) {
) {
NetworkAndServersLayout(
currentRemoteHost = currentRemoteHost,
networkUseSocksProxy = networkUseSocksProxy,