Skip to content

Commit

Permalink
update carditem padding
Browse files Browse the repository at this point in the history
add settings
  • Loading branch information
springeye committed Jan 20, 2024
1 parent 777b0d7 commit 049ab44
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,25 +28,25 @@ class AppScreenModel(private val api: MemosApi,
sealed class State {

object Loading : State()
data class Result(val isLogin:Boolean) : State()
data class Result(val isLogin:Boolean,val host:String) : State()
}

fun check(){
screenModelScope.launch {
checkUpdate()
val host=prefers.host()
val host=prefers.host()?:""
val username=prefers.username()
val password=prefers.password()
mutableState.value=State.Loading
delay(1000)
if(host!=null){
val cookies=httpClient.cookies(host)
if(cookies.isNotEmpty()){
mutableState.value=State.Result(true)
mutableState.value=State.Result(true,host)
return@launch
}
}
mutableState.value=State.Result(false)
mutableState.value=State.Result(false,host)
// println("cookies===>${cookies}")
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,37 +1,90 @@
package com.github.springeye.memosc.ui.home.tab

import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.defaultMinSize
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Add
import androidx.compose.material.icons.filled.Home
import androidx.compose.material.icons.filled.Settings
import androidx.compose.material.icons.outlined.Settings
import androidx.compose.material3.Checkbox
import androidx.compose.material3.OutlinedTextField
import androidx.compose.material3.RadioButton
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.collectAsState
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.vector.rememberVectorPainter
import androidx.compose.ui.unit.dp
import cafe.adriel.voyager.koin.getScreenModel
import cafe.adriel.voyager.navigator.tab.Tab
import cafe.adriel.voyager.navigator.tab.TabOptions
import com.github.springeye.memosc.components.CardItem
import com.github.springeye.memosc.components.ITextField
import com.github.springeye.memosc.model.MemosVisibility
import com.github.springeye.memosc.ui.app.AppScreenModel

object SettingsTab:Tab{
object SettingsTab : Tab {
@Composable
override fun Content() {
val model = getScreenModel<AppScreenModel>()
val config by model.state.collectAsState()
var host by remember {
mutableStateOf("")
}
if (config is AppScreenModel.State.Result) {
host = (config as AppScreenModel.State.Result).host;
}
var visibility by remember { mutableStateOf(MemosVisibility.PRIVATE) }
Scaffold {
CardItem(modifier = Modifier.verticalScroll(rememberScrollState()).padding(10.dp).fillMaxWidth()) {
Column {
ITextField("", onValueChange = {}, placeholder = {
Text("input server address")
})
CardItem(
modifier = Modifier.verticalScroll(rememberScrollState()).padding(10.dp)
.fillMaxWidth()
) {
Column(modifier = Modifier.fillMaxWidth()) {
OutlinedTextField(host, onValueChange = {},
modifier = Modifier.fillMaxWidth(),
label = {
Text("API Server")
},
placeholder = {
Text("input server address")
})
Text("默认备忘录可见性", modifier = Modifier.padding(top = 15.dp))
Row(verticalAlignment = Alignment.CenterVertically) {

RadioButton(visibility == MemosVisibility.PRIVATE, {
visibility = MemosVisibility.PRIVATE
})
Text("私有")
}
Row(verticalAlignment = Alignment.CenterVertically) {

RadioButton(visibility == MemosVisibility.PROTECTED, {
visibility = MemosVisibility.PROTECTED
})
Text("工作区")
}
Row(verticalAlignment = Alignment.CenterVertically) {

RadioButton(visibility == MemosVisibility.PUBLIC,{
visibility = MemosVisibility.PUBLIC
})
Text("公开")
}
}
}
}
Expand Down

0 comments on commit 049ab44

Please sign in to comment.