Skip to content

Commit 72b34ff

Browse files
authored
Merge pull request #83 from code-payments/chore/design-review
Chore/design review
2 parents 55f4899 + 40c7201 commit 72b34ff

2 files changed

Lines changed: 25 additions & 16 deletions

File tree

app/src/main/java/com/getcode/view/main/currency/CurrencySelectionSheet.kt

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,14 @@ import androidx.compose.runtime.collectAsState
3232
import androidx.compose.runtime.getValue
3333
import androidx.compose.runtime.mutableStateOf
3434
import androidx.compose.runtime.remember
35+
import androidx.compose.runtime.rememberCoroutineScope
3536
import androidx.compose.runtime.setValue
3637
import androidx.compose.ui.Alignment
38+
import androidx.compose.ui.ExperimentalComposeUiApi
3739
import androidx.compose.ui.Modifier
3840
import androidx.compose.ui.draw.alpha
3941
import androidx.compose.ui.draw.clip
42+
import androidx.compose.ui.platform.LocalSoftwareKeyboardController
4043
import androidx.compose.ui.res.painterResource
4144
import androidx.compose.ui.res.stringResource
4245
import androidx.compose.ui.text.input.TextFieldValue
@@ -56,22 +59,25 @@ import com.getcode.util.rememberedClickable
5659
import com.getcode.view.components.CodeCircularProgressIndicator
5760
import com.getcode.view.components.SwipeableView
5861
import com.getcode.view.main.giveKin.CurrencyListItem
62+
import kotlinx.coroutines.delay
5963
import kotlinx.coroutines.flow.distinctUntilChanged
6064
import kotlinx.coroutines.flow.filter
6165
import kotlinx.coroutines.flow.filterIsInstance
6266
import kotlinx.coroutines.flow.launchIn
6367
import kotlinx.coroutines.flow.map
6468
import kotlinx.coroutines.flow.onEach
69+
import kotlinx.coroutines.launch
6570
import timber.log.Timber
6671

67-
@OptIn(ExperimentalMaterialApi::class)
72+
@OptIn(ExperimentalMaterialApi::class, ExperimentalComposeUiApi::class)
6873
@Composable
6974
fun CurrencySelectionSheet(
7075
viewModel: CurrencyViewModel,
7176
) {
7277
val navigator = LocalCodeNavigator.current
7378
val state by viewModel.stateFlow.collectAsState()
74-
79+
val keyboardController = LocalSoftwareKeyboardController.current
80+
val composeScope = rememberCoroutineScope()
7581
var searchQuery by remember {
7682
mutableStateOf(TextFieldValue())
7783
}
@@ -89,7 +95,11 @@ fun CurrencySelectionSheet(
8995
.map { it.currency }
9096
.distinctUntilChanged()
9197
.onEach {
92-
navigator.hideWithResult(it)
98+
composeScope.launch {
99+
keyboardController?.hide()
100+
delay(500)
101+
navigator.hideWithResult(it)
102+
}
93103
}.launchIn(this)
94104
}
95105

app/src/main/java/com/getcode/view/main/home/components/BillManagementOptions.kt

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@ package com.getcode.view.main.home.components
22

33
import androidx.compose.foundation.Image
44
import androidx.compose.foundation.background
5+
import androidx.compose.foundation.layout.Arrangement
56
import androidx.compose.foundation.layout.Box
67
import androidx.compose.foundation.layout.Row
78
import androidx.compose.foundation.layout.Spacer
89
import androidx.compose.foundation.layout.fillMaxWidth
910
import androidx.compose.foundation.layout.padding
1011
import androidx.compose.foundation.layout.size
1112
import androidx.compose.foundation.layout.width
13+
import androidx.compose.foundation.shape.CircleShape
1214
import androidx.compose.foundation.shape.RoundedCornerShape
1315
import androidx.compose.material.Text
1416
import androidx.compose.runtime.Composable
@@ -20,8 +22,10 @@ import androidx.compose.ui.res.painterResource
2022
import androidx.compose.ui.res.stringResource
2123
import androidx.compose.ui.unit.dp
2224
import com.getcode.R
25+
import com.getcode.theme.CodeTheme
2326
import com.getcode.theme.Gray50
2427
import com.getcode.theme.White
28+
import com.getcode.util.debugBounds
2529
import com.getcode.util.rememberedClickable
2630
import com.getcode.view.components.CodeCircularProgressIndicator
2731

@@ -43,16 +47,15 @@ internal fun BillManagementOptions(
4347
Row(
4448
modifier = Modifier
4549
.padding(bottom = 30.dp)
46-
.align(Alignment.BottomCenter)
50+
.align(Alignment.BottomCenter),
51+
horizontalArrangement = Arrangement.spacedBy(CodeTheme.dimens.inset)
4752
) {
4853
if (showSend) {
4954
Row(
5055
modifier = Modifier
51-
.background(Gray50, RoundedCornerShape(30.dp))
52-
.clip(RoundedCornerShape(30.dp))
53-
.rememberedClickable(enabled = !isSending) {
54-
onSend()
55-
}
56+
.background(Gray50, CircleShape)
57+
.clip(CircleShape)
58+
.rememberedClickable(enabled = !isSending) { onSend() }
5659
.padding(vertical = 15.dp, horizontal = 20.dp),
5760
verticalAlignment = Alignment.CenterVertically,
5861
) {
@@ -83,17 +86,13 @@ internal fun BillManagementOptions(
8386
}
8487

8588
}
86-
87-
Spacer(modifier = Modifier.width(16.dp))
8889
}
8990
if (showCancel) {
9091
Row(
9192
modifier = Modifier
92-
.background(Gray50, RoundedCornerShape(30.dp))
93-
.clip(RoundedCornerShape(30.dp))
94-
.rememberedClickable(enabled = canCancel) {
95-
onCancel()
96-
}
93+
.background(Gray50, CircleShape)
94+
.clip(CircleShape)
95+
.rememberedClickable(enabled = canCancel) { onCancel() }
9796
.padding(vertical = 15.dp, horizontal = 20.dp),
9897
verticalAlignment = Alignment.CenterVertically,
9998
) {

0 commit comments

Comments
 (0)