Skip to content

Commit 8bd0329

Browse files
committed
[BOOK-473] refactor: 람다 기반 modifier 적용
1 parent 0b5e477 commit 8bd0329

File tree

15 files changed

+61
-27
lines changed

15 files changed

+61
-27
lines changed

core/designsystem/src/main/kotlin/com/ninecraft/booket/core/designsystem/component/checkbox/SquareCheckBox.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ import androidx.compose.runtime.remember
1414
import androidx.compose.runtime.setValue
1515
import androidx.compose.ui.Alignment
1616
import androidx.compose.ui.Modifier
17+
import androidx.compose.ui.draw.drawBehind
18+
import androidx.compose.ui.geometry.CornerRadius
1719
import androidx.compose.ui.graphics.Color
1820
import androidx.compose.ui.graphics.vector.ImageVector
1921
import androidx.compose.ui.res.vectorResource

feature/home/src/main/kotlin/com/ninecraft/booket/feature/home/HomeUi.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import android.content.pm.PackageManager
66
import android.os.Build
77
import androidx.activity.compose.rememberLauncherForActivityResult
88
import androidx.activity.result.contract.ActivityResultContracts
9-
import androidx.compose.foundation.background
109
import androidx.compose.foundation.layout.Arrangement
1110
import androidx.compose.foundation.layout.Box
1211
import androidx.compose.foundation.layout.Column
@@ -28,6 +27,7 @@ import androidx.compose.runtime.Composable
2827
import androidx.compose.runtime.LaunchedEffect
2928
import androidx.compose.ui.Modifier
3029
import androidx.compose.ui.draw.clip
30+
import androidx.compose.ui.draw.drawBehind
3131
import androidx.compose.ui.platform.LocalContext
3232
import androidx.compose.ui.res.stringResource
3333
import androidx.compose.ui.unit.dp
@@ -100,7 +100,7 @@ internal fun HomeUi(
100100
Column(
101101
modifier = Modifier
102102
.fillMaxSize()
103-
.background(HomeBg)
103+
.drawBehind { drawRect(color = HomeBg) }
104104
.padding(innerPadding),
105105
) {
106106
HomeHeader(

feature/home/src/main/kotlin/com/ninecraft/booket/feature/home/component/HomeBanner.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import androidx.compose.runtime.Composable
1515
import androidx.compose.runtime.getValue
1616
import androidx.compose.ui.Alignment
1717
import androidx.compose.ui.Modifier
18+
import androidx.compose.ui.draw.drawBehind
1819
import androidx.compose.ui.graphics.vector.ImageVector
1920
import androidx.compose.ui.res.stringResource
2021
import androidx.compose.ui.res.vectorResource
@@ -48,7 +49,7 @@ fun HomeBanner(
4849
modifier = modifier
4950
.fillMaxWidth()
5051
.height(160.dp)
51-
.background(HomeBg)
52+
.drawBehind { drawRect(HomeBg) }
5253
.padding(end = ReedTheme.spacing.spacing5),
5354
) {
5455
Column(

feature/home/src/main/kotlin/com/ninecraft/booket/feature/home/component/HomeHeader.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package com.ninecraft.booket.feature.home.component
22

33
import androidx.compose.foundation.Image
4-
import androidx.compose.foundation.background
54
import androidx.compose.foundation.layout.Row
65
import androidx.compose.foundation.layout.Spacer
76
import androidx.compose.foundation.layout.fillMaxWidth
@@ -12,6 +11,7 @@ import androidx.compose.material3.IconButton
1211
import androidx.compose.runtime.Composable
1312
import androidx.compose.ui.Alignment
1413
import androidx.compose.ui.Modifier
14+
import androidx.compose.ui.draw.drawBehind
1515
import androidx.compose.ui.graphics.vector.ImageVector
1616
import androidx.compose.ui.res.painterResource
1717
import androidx.compose.ui.res.vectorResource
@@ -30,7 +30,7 @@ fun HomeHeader(
3030
Row(
3131
modifier = modifier
3232
.fillMaxWidth()
33-
.background(HomeBg)
33+
.drawBehind { drawRect(color = HomeBg) }
3434
.height(60.dp),
3535
verticalAlignment = Alignment.CenterVertically,
3636
) {

feature/library/src/main/kotlin/com/ninecraft/booket/feature/library/component/LibraryHeader.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.ninecraft.booket.feature.library.component
22

3-
import androidx.compose.foundation.background
43
import androidx.compose.foundation.layout.Row
54
import androidx.compose.foundation.layout.Spacer
65
import androidx.compose.foundation.layout.fillMaxWidth
@@ -12,6 +11,7 @@ import androidx.compose.material3.Text
1211
import androidx.compose.runtime.Composable
1312
import androidx.compose.ui.Alignment
1413
import androidx.compose.ui.Modifier
14+
import androidx.compose.ui.draw.drawBehind
1515
import androidx.compose.ui.graphics.vector.ImageVector
1616
import androidx.compose.ui.res.stringResource
1717
import androidx.compose.ui.res.vectorResource
@@ -31,7 +31,7 @@ fun LibraryHeader(
3131
modifier = modifier
3232
.fillMaxWidth()
3333
.height(60.dp)
34-
.background(White),
34+
.drawBehind { drawRect(color = White) },
3535
verticalAlignment = Alignment.CenterVertically,
3636
) {
3737
Spacer(modifier = Modifier.width(ReedTheme.spacing.spacing5))

feature/login/src/main/kotlin/com/ninecraft/booket/feature/login/LoginUi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import androidx.compose.material3.Text
1515
import androidx.compose.runtime.Composable
1616
import androidx.compose.ui.Alignment
1717
import androidx.compose.ui.Modifier
18+
import androidx.compose.ui.draw.drawBehind
1819
import androidx.compose.ui.graphics.Color
1920
import androidx.compose.ui.graphics.vector.ImageVector
2021
import androidx.compose.ui.res.painterResource
@@ -55,7 +56,7 @@ internal fun LoginUi(
5556
Column(
5657
modifier = modifier
5758
.fillMaxSize()
58-
.background(White)
59+
.drawBehind { drawRect(White) }
5960
.padding(innerPadding),
6061
horizontalAlignment = Alignment.CenterHorizontally,
6162
verticalArrangement = Arrangement.Center,

feature/record/src/main/kotlin/com/ninecraft/booket/feature/record/component/CustomTooltipBox.kt

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import androidx.compose.ui.Modifier
1515
import androidx.compose.ui.draw.shadow
1616
import androidx.compose.ui.graphics.graphicsLayer
1717
import androidx.compose.ui.res.stringResource
18+
import androidx.compose.ui.unit.IntOffset
1819
import androidx.compose.ui.unit.dp
1920
import com.ninecraft.booket.core.designsystem.ComponentPreview
2021
import com.ninecraft.booket.core.designsystem.theme.ReedTheme
@@ -47,9 +48,12 @@ internal fun CustomTooltipBox(
4748
Modifier
4849
.padding(start = 2.dp)
4950
.size(ReedTheme.spacing.spacing3)
50-
.offset(
51-
x = (-10).dp,
52-
)
51+
.offset {
52+
IntOffset(
53+
x = (-10).dp.roundToPx(),
54+
y = 0,
55+
)
56+
}
5357
.graphicsLayer {
5458
rotationZ = 45f
5559
shadowElevation = 8.dp.toPx()

feature/record/src/main/kotlin/com/ninecraft/booket/feature/record/ocr/OcrUi.kt

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.ninecraft.booket.feature.record.ocr
22

3+
import android.R.attr.x
34
import android.content.Intent
45
import android.content.pm.PackageManager
56
import android.net.Uri
@@ -41,12 +42,14 @@ import androidx.compose.runtime.produceState
4142
import androidx.compose.runtime.remember
4243
import androidx.compose.ui.Alignment
4344
import androidx.compose.ui.Modifier
45+
import androidx.compose.ui.draw.drawBehind
4446
import androidx.compose.ui.graphics.Color
4547
import androidx.compose.ui.graphics.vector.ImageVector
4648
import androidx.compose.ui.platform.LocalContext
4749
import androidx.compose.ui.res.stringResource
4850
import androidx.compose.ui.res.vectorResource
4951
import androidx.compose.ui.text.style.TextAlign
52+
import androidx.compose.ui.unit.IntOffset
5053
import androidx.compose.ui.unit.dp
5154
import androidx.compose.ui.viewinterop.AndroidView
5255
import androidx.core.content.ContextCompat
@@ -191,7 +194,7 @@ private fun CameraPreview(
191194
) {
192195
ReedCloseTopAppBar(
193196
modifier = Modifier
194-
.background(color = Color.Black)
197+
.drawBehind { drawRect(color = Color.Black) }
195198
.align(Alignment.TopCenter),
196199
isDark = true,
197200
onClose = {
@@ -202,7 +205,12 @@ private fun CameraPreview(
202205
text = stringResource(R.string.ocr_guide),
203206
modifier = Modifier
204207
.align(Alignment.Center)
205-
.offset(y = (-164).dp),
208+
.offset {
209+
IntOffset(
210+
x = 0,
211+
y = (-164).dp.roundToPx(),
212+
)
213+
},
206214
color = ReedTheme.colors.contentInverse,
207215
textAlign = TextAlign.Center,
208216
style = ReedTheme.typography.headline2Medium,
@@ -212,7 +220,7 @@ private fun CameraPreview(
212220
Box(
213221
modifier = Modifier
214222
.fillMaxWidth()
215-
.background(White)
223+
.drawBehind { drawRect(color = White) }
216224
.height(200.dp)
217225
.align(Alignment.Center),
218226
) {

feature/record/src/main/kotlin/com/ninecraft/booket/feature/record/ocr/component/CameraFrame.kt

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ import androidx.compose.material3.Icon
1010
import androidx.compose.runtime.Composable
1111
import androidx.compose.ui.Alignment
1212
import androidx.compose.ui.Modifier
13-
import androidx.compose.ui.draw.scale
1413
import androidx.compose.ui.graphics.Color
14+
import androidx.compose.ui.graphics.graphicsLayer
1515
import androidx.compose.ui.res.painterResource
1616
import androidx.compose.ui.unit.dp
1717
import com.ninecraft.booket.core.designsystem.ComponentPreview
@@ -47,8 +47,11 @@ fun CameraFrame(modifier: Modifier = Modifier) {
4747
painter = painterResource(R.drawable.img_frame_marker),
4848
contentDescription = "Frame Marker",
4949
modifier = Modifier
50-
.scale(scaleX = -1f, scaleY = 1f)
5150
.align(Alignment.TopEnd)
51+
.graphicsLayer {
52+
scaleX = -1f
53+
scaleY = 1f
54+
}
5255
.padding(
5356
start = ReedTheme.spacing.spacing5,
5457
top = ReedTheme.spacing.spacing5,
@@ -59,8 +62,11 @@ fun CameraFrame(modifier: Modifier = Modifier) {
5962
painter = painterResource(R.drawable.img_frame_marker),
6063
contentDescription = "Frame Marker",
6164
modifier = Modifier
62-
.scale(scaleX = 1f, scaleY = -1f)
6365
.align(Alignment.BottomStart)
66+
.graphicsLayer {
67+
scaleX = 1f
68+
scaleY = -1f
69+
}
6470
.padding(
6571
start = ReedTheme.spacing.spacing5,
6672
top = ReedTheme.spacing.spacing5,
@@ -71,8 +77,11 @@ fun CameraFrame(modifier: Modifier = Modifier) {
7177
painter = painterResource(R.drawable.img_frame_marker),
7278
contentDescription = "Frame Marker",
7379
modifier = Modifier
74-
.scale(scaleX = -1f, scaleY = -1f)
7580
.align(Alignment.BottomEnd)
81+
.graphicsLayer {
82+
scaleX = -1f
83+
scaleY = -1f
84+
}
7685
.padding(
7786
start = ReedTheme.spacing.spacing5,
7887
top = ReedTheme.spacing.spacing5,

feature/record/src/main/kotlin/com/ninecraft/booket/feature/record/step/EmotionStep.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import androidx.compose.runtime.remember
2020
import androidx.compose.ui.Alignment
2121
import androidx.compose.ui.Modifier
2222
import androidx.compose.ui.draw.clip
23+
import androidx.compose.ui.draw.drawBehind
2324
import androidx.compose.ui.layout.ContentScale
2425
import androidx.compose.ui.res.painterResource
2526
import androidx.compose.ui.res.stringResource
@@ -50,7 +51,7 @@ fun EmotionStep(
5051
Box(
5152
modifier = modifier
5253
.fillMaxSize()
53-
.background(White),
54+
.drawBehind { drawRect(color = White) },
5455
) {
5556
LazyColumn(
5657
modifier = Modifier

0 commit comments

Comments
 (0)