Skip to content

Commit 63e3664

Browse files
authored
Merge pull request #96 from code-payments/fix/micropayment-coloring
style: update micropayment confirmation modal coloring
2 parents 66bf683 + b11e12f commit 63e3664

2 files changed

Lines changed: 27 additions & 4 deletions

File tree

app/src/main/java/com/getcode/view/components/SlideToConfirm.kt

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,9 @@ object SlideToConfirmDefaults {
8787
modifier = modifier,
8888
)
8989
}
90+
91+
val BlueTrackColor = Track.BlueColor
92+
val BlackTrackColor = Track.BlackColor
9093
}
9194

9295
private object Thumb {
@@ -101,7 +104,9 @@ private object Track {
101104
val VelocityThreshold = SwipeableDefaults.VelocityThreshold * 10
102105
val Shape: Shape
103106
@Composable get() = CodeTheme.shapes.small
104-
val Color = Color(0xFF201D1D)
107+
108+
val BlueColor = Color(0xFF11142A)
109+
val BlackColor = Color(0xFF201D1D)
105110
}
106111

107112

@@ -110,6 +115,7 @@ fun SlideToConfirm(
110115
onConfirm: () -> Unit,
111116
modifier: Modifier = Modifier,
112117
trackShape: Shape = Track.Shape,
118+
trackColor: Color = Track.BlackColor,
113119
thumbShape: Shape = Thumb.Shape,
114120
isLoading: Boolean = false,
115121
isSuccess: Boolean = false,
@@ -152,6 +158,7 @@ fun SlideToConfirm(
152158
enabled = !loading,
153159
modifier = modifier,
154160
shape = trackShape,
161+
color = trackColor,
155162
) {
156163
if (!isSuccess) {
157164
hint(swipeFraction, PaddingValues(horizontal = Thumb.Size + CodeTheme.dimens.grid.x2))
@@ -212,6 +219,7 @@ private fun Track(
212219
enabled: Boolean,
213220
modifier: Modifier = Modifier,
214221
shape: Shape = Track.Shape,
222+
color: Color = Track.BlackColor,
215223
content: @Composable (BoxScope.() -> Unit),
216224
) {
217225
val density = LocalDensity.current
@@ -251,7 +259,7 @@ private fun Track(
251259
velocityThreshold = Track.VelocityThreshold,
252260
)
253261
.background(
254-
color = Track.Color,
262+
color = color,
255263
shape = shape,
256264
)
257265
.padding(

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

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import androidx.compose.foundation.layout.padding
1919
import androidx.compose.foundation.layout.windowInsetsPadding
2020
import androidx.compose.foundation.layout.wrapContentHeight
2121
import androidx.compose.foundation.shape.RoundedCornerShape
22+
import androidx.compose.foundation.shape.ZeroCornerSize
2223
import androidx.compose.material.Text
2324
import androidx.compose.material.TextButton
2425
import androidx.compose.material.minimumInteractiveComponentSize
@@ -31,6 +32,7 @@ import androidx.compose.runtime.remember
3132
import androidx.compose.runtime.setValue
3233
import androidx.compose.ui.Alignment
3334
import androidx.compose.ui.Modifier
35+
import androidx.compose.ui.draw.clip
3436
import androidx.compose.ui.graphics.Color
3537
import androidx.compose.ui.res.stringResource
3638
import androidx.compose.ui.tooling.preview.Preview
@@ -45,11 +47,13 @@ import com.getcode.model.Kind
4547
import com.getcode.model.Rate
4648
import com.getcode.models.PaymentConfirmation
4749
import com.getcode.models.PaymentState
50+
import com.getcode.theme.Brand
4851
import com.getcode.theme.CodeTheme
4952
import com.getcode.theme.White50
5053
import com.getcode.view.components.ButtonState
5154
import com.getcode.view.components.CodeButton
5255
import com.getcode.view.components.SlideToConfirm
56+
import com.getcode.view.components.SlideToConfirmDefaults
5357
import kotlinx.coroutines.delay
5458

5559
@Composable
@@ -77,15 +81,25 @@ internal fun PaymentConfirmation(
7781
modifier = modifier
7882
.fillMaxWidth()
7983
.wrapContentHeight()
80-
.background(Color.Black)
84+
.clip(
85+
CodeTheme.shapes.medium.copy(
86+
bottomStart = ZeroCornerSize,
87+
bottomEnd = ZeroCornerSize
88+
)
89+
)
90+
.background(Brand)
8191
.padding(horizontal = 20.dp, vertical = 30.dp)
8292
.windowInsetsPadding(WindowInsets.navigationBars),
8393
horizontalAlignment = Alignment.CenterHorizontally,
8494
verticalArrangement = Arrangement.spacedBy(15.dp)
8595
) {
8696
val amount = requestedAmount
8797
if (state != null && amount != null && balance != null) {
88-
if (balance.kin >= amount.kin) {
98+
val balanceAmount = remember {
99+
balance.kin
100+
}
101+
102+
if (balanceAmount >= amount.kin) {
89103
PaymentConfirmationContent(
90104
amount = amount,
91105
isSending = isSending,
@@ -297,6 +311,7 @@ private fun PaymentConfirmationContent(
297311
}
298312
SlideToConfirm(
299313
isLoading = isSending,
314+
trackColor = SlideToConfirmDefaults.BlueTrackColor,
300315
isSuccess = state is PaymentState.Sent,
301316
onConfirm = { onApproved() },
302317
)

0 commit comments

Comments
 (0)