commit 722cf89331294a195c4504b0de07f83540e124bf
parent f86b19c49b4889d3cc644a542415826f78c8670e
Author: MTRNord <mtrnord1@gmail.com>
Date: Fri, 29 Sep 2023 11:51:26 +0200
Fix: Cleanup
Diffstat:
3 files changed, 8 insertions(+), 16 deletions(-)
diff --git a/src/jsMain/kotlin/Main.kt b/src/jsMain/kotlin/Main.kt
@@ -62,10 +62,6 @@ fun Base(rootViewModel: RootViewModel) {
// Trixnity messenger router
val routerState by rootViewModel.rootStack.subscribeAsState()
when (val route = routerState.active.instance) {
- is RootRouter.RootWrapper.None -> {
- None()
- }
-
is RootRouter.RootWrapper.MatrixClientInitialization -> {
Init(route.matrixClientInitializationViewModel)
} // show initialization of the MatrixClient (aka loading screen)
@@ -89,15 +85,8 @@ fun Base(rootViewModel: RootViewModel) {
@Composable
fun Init(matrixClientInitializationViewModel: MatrixClientInitializationViewModel) {
- val initState by matrixClientInitializationViewModel.currentState.collectAsState();
+ val initState by matrixClientInitializationViewModel.currentState.collectAsState()
Div({ style { padding(25.px) } }) {
Text(initState)
}
-}
-
-@Composable
-fun None() {
- Div({ style { padding(25.px) } }) {
- Text("Initializing matrix")
- }
}
\ No newline at end of file
diff --git a/src/jsMain/kotlin/pages/Login.kt b/src/jsMain/kotlin/pages/Login.kt
@@ -7,6 +7,7 @@ import com.varabyte.kobweb.compose.ui.modifiers.*
import com.varabyte.kobweb.silk.components.forms.InputGroup
import com.varabyte.kobweb.silk.components.forms.TextInput
import de.connect2x.trixnity.messenger.viewmodel.connecting.AddMatrixAccountMethod
+import de.connect2x.trixnity.messenger.viewmodel.connecting.AddMatrixAccountState
import de.connect2x.trixnity.messenger.viewmodel.connecting.AddMatrixAccountViewModel
import de.connect2x.trixnity.messenger.viewmodel.connecting.PasswordLoginViewModel
import kotlinx.coroutines.flow.update
@@ -20,6 +21,7 @@ fun PasswordLogin(passwordLoginViewModel: PasswordLoginViewModel) {
val username by passwordLoginViewModel.username.collectAsState();
val password by passwordLoginViewModel.password.collectAsState();
val canLogin by passwordLoginViewModel.canLogin.collectAsState();
+ val loginState by passwordLoginViewModel.addMatrixAccountState.collectAsState();
Row(
Modifier
.display(DisplayStyle.Flex)
@@ -64,7 +66,7 @@ fun PasswordLogin(passwordLoginViewModel: PasswordLoginViewModel) {
}
})
}
- if (canLogin) {
+ if (canLogin && loginState !is AddMatrixAccountState.Connecting) {
Button(attrs = {
onClick {
if (username.isNotBlank() && password.isNotBlank() && canLogin) {
@@ -74,6 +76,10 @@ fun PasswordLogin(passwordLoginViewModel: PasswordLoginViewModel) {
}) {
Text("Login")
}
+ } else if (loginState is AddMatrixAccountState.Connecting) {
+ Div({
+ classes("lds-dual-ring")
+ })
}
}
}
diff --git a/src/jsMain/kotlin/pages/Main.kt b/src/jsMain/kotlin/pages/Main.kt
@@ -17,14 +17,11 @@ import de.connect2x.trixnity.messenger.viewmodel.room.timeline.TimelineRouter
import de.connect2x.trixnity.messenger.viewmodel.roomlist.RoomListElementViewModel
import de.connect2x.trixnity.messenger.viewmodel.roomlist.RoomListRouter
import de.connect2x.trixnity.messenger.viewmodel.roomlist.RoomListViewModel
-import io.github.oshai.kotlinlogging.KotlinLogging
import net.folivo.trixnity.core.model.RoomId
import org.jetbrains.compose.web.css.*
import org.jetbrains.compose.web.dom.Div
import org.jetbrains.compose.web.dom.Text
-private val log = KotlinLogging.logger { }
-
@Composable
fun Main(mainViewModel: MainViewModel) {
suspend {