From 6b1cf1367d7c3ea80c7efc3e8488224cb6b9c84c Mon Sep 17 00:00:00 2001 From: mangbaam Date: Mon, 27 Jan 2025 14:22:26 +0900 Subject: [PATCH 1/9] =?UTF-8?q?release/1.10.0=20fix:=20=EA=B2=B0=EC=A0=9C?= =?UTF-8?q?=20=EC=98=A4=EB=A5=98=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../boolti/presentation/screen/ticketing/TicketingScreen.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/TicketingScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/TicketingScreen.kt index 9be2d0ff..210ce9aa 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/TicketingScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/TicketingScreen.kt @@ -39,6 +39,7 @@ import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberUpdatedState import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier @@ -153,6 +154,8 @@ private fun TicketingScreen( val context = LocalContext.current var bottomButtonHeight by remember { mutableStateOf(0.dp) } + val uiState by rememberUpdatedState(uiState) + val paymentLauncher = rememberLauncherForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> when (result.resultCode) { From 4741bb6ba65a08f542156d68c33094e359b8f66e Mon Sep 17 00:00:00 2001 From: mangbaam Date: Mon, 27 Jan 2025 15:08:05 +0900 Subject: [PATCH 2/9] =?UTF-8?q?release/1.10.0=20style:=20=EA=B3=A0?= =?UTF-8?q?=EC=A0=95=20=ED=95=98=EB=8B=A8=20=EC=98=81=EC=97=AD=20=EB=A7=88?= =?UTF-8?q?=EC=A7=84=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../presentation/screen/gift/GiftScreen.kt | 2 +- .../screen/giftcomplete/GiftCompleteScreen.kt | 27 ++++++++--- .../presentation/screen/login/LoginScreen.kt | 4 +- .../screen/payment/PaymentCompleteScreen.kt | 47 ++++++++++++------- .../screen/profileedit/link/LinkEditScreen.kt | 24 +++++++++- .../screen/profileedit/sns/SnsEditScreen.kt | 7 ++- .../screen/ticketing/TicketingScreen.kt | 2 +- 7 files changed, 81 insertions(+), 32 deletions(-) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/gift/GiftScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/gift/GiftScreen.kt index 2183d852..99287ca7 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/gift/GiftScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/gift/GiftScreen.kt @@ -242,7 +242,7 @@ fun GiftScreen( modifier = Modifier .fillMaxWidth() .background(MaterialTheme.colorScheme.background) - .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 24.dp), + .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 20.dp), enabled = uiState.isComplete, label = stringResource( R.string.ticketing_payment_button_label, diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/giftcomplete/GiftCompleteScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/giftcomplete/GiftCompleteScreen.kt index 562c0e28..1f6557c0 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/giftcomplete/GiftCompleteScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/giftcomplete/GiftCompleteScreen.kt @@ -7,6 +7,7 @@ import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height @@ -26,6 +27,9 @@ import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.Composable 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.draw.clip @@ -52,6 +56,7 @@ import com.nexters.boolti.presentation.R import com.nexters.boolti.presentation.component.BtCircularProgressIndicator import com.nexters.boolti.presentation.component.SecondaryButton import com.nexters.boolti.presentation.component.ShowItem +import com.nexters.boolti.presentation.component.TopGradientBackground import com.nexters.boolti.presentation.component.dummyReservationDetail import com.nexters.boolti.presentation.extension.cardCodeToCompanyName import com.nexters.boolti.presentation.screen.payment.PaymentToolbar @@ -102,6 +107,7 @@ fun GiftCompleteScreen( reservation: ReservationDetail, ) { val context = LocalContext.current + var bottomButtonHeight by remember { mutableStateOf(0.dp) } BackHandler(onBack = onClickClose) @@ -188,15 +194,21 @@ fun GiftCompleteScreen( ShowInformation( reservation = reservation ) + Spacer(modifier = Modifier.height(bottomButtonHeight)) } - SecondaryButton( - modifier = Modifier - .align(Alignment.BottomCenter) - .fillMaxWidth() - .padding(top = 16.dp, bottom = 20.dp), - label = stringResource(R.string.show_reservation), + TopGradientBackground( + modifier = Modifier.align(Alignment.BottomCenter), + onHeightChanged = { bottomButtonHeight = it }, ) { - navigateToReservation(reservation) + SecondaryButton( + modifier = Modifier + .align(Alignment.BottomCenter) + .fillMaxWidth() + .padding(bottom = 20.dp), + label = stringResource(R.string.show_reservation), + ) { + navigateToReservation(reservation) + } } } } @@ -392,6 +404,7 @@ private fun ShowInformation( } @Composable +@Preview(device = "spec:width=1080px,height=1340px,dpi=440") @Preview fun GiftCompleteScreenPreview( ) { diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/login/LoginScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/login/LoginScreen.kt index f3bde41b..323950b9 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/login/LoginScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/login/LoginScreen.kt @@ -172,9 +172,7 @@ private fun SignUpBottomSheet( MainButton( modifier = Modifier .fillMaxWidth() - .padding(top = 18.dp) - .padding(vertical = 8.dp) - .padding(bottom = 20.dp), + .padding(top = 18.dp, bottom = 20.dp), label = stringResource(id = R.string.signup_with_agreement), onClick = signUp, ) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/payment/PaymentCompleteScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/payment/PaymentCompleteScreen.kt index 7108b258..caf3835d 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/payment/PaymentCompleteScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/payment/PaymentCompleteScreen.kt @@ -7,8 +7,10 @@ import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.width import androidx.compose.foundation.rememberScrollState @@ -20,6 +22,9 @@ import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.runtime.Composable 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.platform.LocalContext @@ -37,6 +42,7 @@ import com.nexters.boolti.presentation.component.BtAppBarDefaults import com.nexters.boolti.presentation.component.MainButton import com.nexters.boolti.presentation.component.SecondaryButton import com.nexters.boolti.presentation.component.ShowItem +import com.nexters.boolti.presentation.component.TopGradientBackground import com.nexters.boolti.presentation.extension.cardCodeToCompanyName import com.nexters.boolti.presentation.theme.BooltiTheme import com.nexters.boolti.presentation.theme.Grey15 @@ -80,6 +86,7 @@ private fun PaymentCompleteScreen( ) { val context = LocalContext.current val scrollState = rememberScrollState() + var bottomButtonHeight by remember { mutableStateOf(0.dp) } Box( modifier = modifier.fillMaxSize(), @@ -161,27 +168,35 @@ private fun PaymentCompleteScreen( showName = reservation.showName, showDate = reservation.showDate, ) + + Spacer(modifier = Modifier.height(bottomButtonHeight)) } - Row( + TopGradientBackground( modifier = Modifier - .fillMaxWidth() - .align(Alignment.BottomCenter) - .padding(horizontal = marginHorizontal) - .padding(bottom = 20.dp), - horizontalArrangement = Arrangement.spacedBy(8.dp), + .align(Alignment.BottomCenter), + onHeightChanged = { bottomButtonHeight = it }, ) { - SecondaryButton( - modifier = Modifier.weight(1f), - label = stringResource(R.string.show_reservation), - ) { - navigateToReservation(reservation) - } - MainButton( - modifier = Modifier.weight(1f), - label = stringResource(R.string.show_ticket), + Row( + modifier = Modifier + .fillMaxWidth() + .align(Alignment.BottomCenter) + .padding(horizontal = marginHorizontal) + .padding(bottom = 20.dp), + horizontalArrangement = Arrangement.spacedBy(8.dp), ) { - navigateToTicketDetail(reservation) + SecondaryButton( + modifier = Modifier.weight(1f), + label = stringResource(R.string.show_reservation), + ) { + navigateToReservation(reservation) + } + MainButton( + modifier = Modifier.weight(1f), + label = stringResource(R.string.show_ticket), + ) { + navigateToTicketDetail(reservation) + } } } } diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/link/LinkEditScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/link/LinkEditScreen.kt index dd99367c..0f3b882c 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/link/LinkEditScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/link/LinkEditScreen.kt @@ -24,6 +24,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.text.input.KeyboardType +import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle @@ -34,6 +35,7 @@ import com.nexters.boolti.presentation.component.BTTextFieldDefaults import com.nexters.boolti.presentation.component.BtAppBar import com.nexters.boolti.presentation.component.BtAppBarDefaults import com.nexters.boolti.presentation.component.MainButton +import com.nexters.boolti.presentation.theme.BooltiTheme import com.nexters.boolti.presentation.theme.Grey30 import com.nexters.boolti.presentation.theme.Grey90 import com.nexters.boolti.presentation.theme.marginHorizontal @@ -113,9 +115,10 @@ fun LinkEditScreen( .padding(innerPadding), ) { Column( - modifier = Modifier.padding(20.dp), + modifier = Modifier.padding(horizontal = 20.dp), ) { Row( + modifier = Modifier.padding(top = 20.dp), verticalAlignment = Alignment.CenterVertically, ) { Text( @@ -141,7 +144,7 @@ fun LinkEditScreen( ) } Row( - modifier = Modifier.padding(top = 16.dp), + modifier = Modifier.padding(top = 16.dp, bottom = 20.dp), verticalAlignment = Alignment.CenterVertically, ) { Text( @@ -201,3 +204,20 @@ fun LinkEditScreen( } } } + +@Preview +@Composable +private fun LinkEditScreenPreview() { + BooltiTheme { + LinkEditScreen( + isEditMode = true, + linkName = "링크 이름", + linkUrl = "링크 URL", + onClickBack = {}, + onClickComplete = {}, + onChangeLinkName = {}, + onChangeLinkUrl = {}, + requireRemove = {}, + ) + } +} diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/sns/SnsEditScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/sns/SnsEditScreen.kt index 825bc231..072e47c0 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/sns/SnsEditScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/sns/SnsEditScreen.kt @@ -123,11 +123,12 @@ private fun SnsEditScreen( .fillMaxSize(), ) { Column( - modifier = Modifier.padding(marginHorizontal), + modifier = Modifier.padding(horizontal = marginHorizontal), verticalArrangement = Arrangement.spacedBy(20.dp), ) { // SNS Row( + modifier = Modifier.padding(top = 20.dp), verticalAlignment = Alignment.CenterVertically, ) { Label(stringResource(R.string.sns)) @@ -147,7 +148,9 @@ private fun SnsEditScreen( } // Username - Row { + Row( + modifier = Modifier.padding(bottom = 20.dp), + ) { Label( label = stringResource(R.string.username), modifier = Modifier.centerToTop(top = 24.dp), diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/TicketingScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/TicketingScreen.kt index 210ce9aa..4b1b952f 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/TicketingScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/TicketingScreen.kt @@ -321,7 +321,7 @@ private fun TicketingScreen( modifier = Modifier .fillMaxWidth() .background(MaterialTheme.colorScheme.background) - .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 24.dp), + .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 20.dp), enabled = uiState.reservationButtonEnabled, label = stringResource( R.string.ticketing_payment_button_label, From e204ad89525eb5607e4b3ccd40fba6dd55137e7e Mon Sep 17 00:00:00 2001 From: mangbaam Date: Mon, 27 Jan 2025 15:46:38 +0900 Subject: [PATCH 3/9] =?UTF-8?q?release/1.10.0=20style:=20=EC=8A=A4?= =?UTF-8?q?=ED=81=AC=EB=A1=A4=20=ED=95=98=EB=8B=A8=20=EC=98=81=EC=97=AD=20?= =?UTF-8?q?=EB=A7=88=EC=A7=84=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../screen/profile/ProfileScreen.kt | 2 + .../presentation/screen/qr/QrScanScreen.kt | 7 ++- .../presentation/screen/refund/ReasonPage.kt | 2 +- .../screen/refund/RefundInfoPage.kt | 2 +- .../ReservationDetailScreen.kt | 6 +-- .../screen/showdetail/ShowDetailButtons.kt | 44 +++++++++---------- .../screen/showdetail/ShowDetailScreen.kt | 4 +- .../ticketing/ChooseTicketBottomSheet.kt | 4 +- 8 files changed, 38 insertions(+), 33 deletions(-) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/profile/ProfileScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/profile/ProfileScreen.kt index f073b18f..0f0d630b 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/profile/ProfileScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/profile/ProfileScreen.kt @@ -246,6 +246,8 @@ fun ProfileScreen( } } } + + Spacer(Modifier.size(32.dp)) } backDialogMessage?.let { msg -> diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/qr/QrScanScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/qr/QrScanScreen.kt index 6fc7d4f8..d1d5c3e7 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/qr/QrScanScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/qr/QrScanScreen.kt @@ -39,6 +39,7 @@ import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.vectorResource +import androidx.compose.ui.semantics.Role import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.IntOffset import androidx.compose.ui.unit.dp @@ -236,8 +237,10 @@ private fun QrScanBottombar(onClick: () -> Unit) { ) Row( modifier = Modifier - .clickable(onClick = onClick) - .padding(top = 20.dp, bottom = 32.dp), + .padding(bottom = 12.dp) + .clip(MaterialTheme.shapes.medium) + .clickable(onClick = onClick, role = Role.Button) + .padding(vertical = 20.dp, horizontal = 10.dp), verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.Center, ) { diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/ReasonPage.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/ReasonPage.kt index d48e9a3f..707570bc 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/ReasonPage.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/ReasonPage.kt @@ -49,7 +49,7 @@ fun ReasonPage( modifier = Modifier .fillMaxWidth() .padding(horizontal = marginHorizontal) - .padding(bottom = 20.dp), + .padding(bottom = 32.dp), onClick = onNextClick, enabled = reason.isNotBlank(), label = stringResource(id = R.string.next), diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/RefundInfoPage.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/RefundInfoPage.kt index d0a25bec..8ddca435 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/RefundInfoPage.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/RefundInfoPage.kt @@ -136,7 +136,7 @@ fun RefundInfoPage( modifier = Modifier .fillMaxWidth() .padding(horizontal = marginHorizontal) - .padding(top = 16.dp, bottom = 20.dp), + .padding(top = 16.dp, bottom = 32.dp), onClick = onRequest, enabled = uiState.isAbleToRequest, label = stringResource(id = R.string.refund_button) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/reservationdetail/ReservationDetailScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/reservationdetail/ReservationDetailScreen.kt index ed6921a4..e4c1c6b4 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/reservationdetail/ReservationDetailScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/reservationdetail/ReservationDetailScreen.kt @@ -146,7 +146,7 @@ fun ReservationDetailScreen( MainButton( modifier = modifier .padding(horizontal = marginHorizontal) - .padding(top = 8.dp, bottom = 20.dp) + .padding(top = 8.dp, bottom = 32.dp) .fillMaxWidth(), colors = MainButtonDefaults.buttonColors( containerColor = Grey15, @@ -161,9 +161,9 @@ fun ReservationDetailScreen( } } ) + } else { + Spacer(Modifier.size(32.dp)) } - - Spacer(Modifier.size(32.dp)) } if (showRefundDialog) { diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showdetail/ShowDetailButtons.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showdetail/ShowDetailButtons.kt index 27d60431..2aaddcf6 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showdetail/ShowDetailButtons.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showdetail/ShowDetailButtons.kt @@ -1,15 +1,14 @@ package com.nexters.boolti.presentation.screen.showdetail -import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier -import androidx.compose.ui.layout.onGloballyPositioned -import androidx.compose.ui.platform.LocalDensity import androidx.compose.ui.res.stringResource import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.Dp @@ -20,7 +19,6 @@ import com.nexters.boolti.presentation.component.MainButton import com.nexters.boolti.presentation.component.MainButtonDefaults import com.nexters.boolti.presentation.component.TopGradientBackground import com.nexters.boolti.presentation.extension.asString -import com.nexters.boolti.presentation.extension.toDp import com.nexters.boolti.presentation.theme.BooltiTheme import com.nexters.boolti.presentation.theme.Grey50 import com.nexters.boolti.presentation.theme.Grey80 @@ -34,18 +32,14 @@ fun ShowDetailButtons( onGiftClicked: () -> Unit, onHeightChanged: (height: Dp) -> Unit = {}, ) { - val density = LocalDensity.current TopGradientBackground( - modifier = Modifier.onGloballyPositioned { coord -> - onHeightChanged(coord.size.height.toDp(density)) - } + onHeightChanged = onHeightChanged, ) { Row( modifier = Modifier .fillMaxWidth() - .background(color = MaterialTheme.colorScheme.background) .padding(horizontal = marginHorizontal) - .padding(top = 8.dp, bottom = 20.dp), + .padding(bottom = 20.dp), horizontalArrangement = Arrangement.spacedBy(9.dp), ) { if (showState == ShowState.TicketingInProgress) { @@ -114,11 +108,14 @@ private fun TicketingButton( @Composable fun ShowDetailButtonsPreview() { BooltiTheme { - ShowDetailButtons( - showState = ShowState.TicketingInProgress, - onTicketingClicked = {}, - onGiftClicked = {} - ) + Column { + Spacer(Modifier.weight(1f)) + ShowDetailButtons( + showState = ShowState.TicketingInProgress, + onTicketingClicked = {}, + onGiftClicked = {} + ) + } } } @@ -126,12 +123,15 @@ fun ShowDetailButtonsPreview() { @Composable fun ShowDetailButtonsBeforeTicketingPreview() { BooltiTheme { - ShowDetailButtons( - showState = ShowState.WaitingTicketing( - Duration.ofSeconds(1 * 86400 + 2 * 3600 + 17) - ), - onTicketingClicked = {}, - onGiftClicked = {} - ) + Column { + Spacer(Modifier.weight(1f)) + ShowDetailButtons( + showState = ShowState.WaitingTicketing( + Duration.ofSeconds(1 * 86400 + 2 * 3600 + 17) + ), + onTicketingClicked = {}, + onGiftClicked = {} + ) + } } } \ No newline at end of file diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showdetail/ShowDetailScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showdetail/ShowDetailScreen.kt index 6d23c32f..4d13ce62 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showdetail/ShowDetailScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showdetail/ShowDetailScreen.kt @@ -231,7 +231,7 @@ fun ShowDetailScreen( var showBottomSheet by remember { mutableStateOf(null) } Box( - modifier = Modifier.fillMaxSize(), + modifier = modifier.fillMaxSize(), ) { val showCountdownBanner = showDetail.salesEndDateTime.toLocalDate() == LocalDate.now() @@ -248,7 +248,7 @@ fun ShowDetailScreen( val paddingTop = if (showCountdownBanner) (38 + 40).dp else 16.dp Poster( - modifier = modifier + modifier = Modifier .fillMaxWidth() .clip( shape = RoundedCornerShape( diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt index 356b6df9..643a83d5 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt @@ -250,8 +250,8 @@ private fun ChooseTicketBottomSheetContent2( label = stringResource(buttonTextId), modifier = Modifier .fillMaxWidth() - .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 20.dp) - .height(48.dp), + .height(48.dp) + .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 32.dp), onClick = { onTicketingClicked(ticket, ticketCount) }, ) } From 732b24cd09cae1e8c19efcec84bcde6397fac9f7 Mon Sep 17 00:00:00 2001 From: mangbaam Date: Mon, 27 Jan 2025 15:52:24 +0900 Subject: [PATCH 4/9] =?UTF-8?q?release/1.10.0=20=EB=B2=84=EC=A0=84=20?= =?UTF-8?q?=EC=97=85=20(35,=201.10.0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle/libs.versions.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c819e0a7..95d4e0a6 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,8 +1,8 @@ [versions] minSdk = "26" targetSdk = "34" -versionCode = "34" -versionName = "1.10.1" +versionCode = "35" +versionName = "1.10.0" packageName = "com.nexters.boolti" compileSdk = "34" targetJvm = "17" From 55eaa838eb48b3265ceb5a383d4609c2fcadcf20 Mon Sep 17 00:00:00 2001 From: mangbaam Date: Mon, 27 Jan 2025 16:03:13 +0900 Subject: [PATCH 5/9] =?UTF-8?q?release/1.10.0=20=EB=88=84=EB=9D=BD?= =?UTF-8?q?=EB=90=9C=20=EC=B9=B4=EB=A9=94=EB=9D=BC=20=EA=B6=8C=ED=95=9C=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/nexters/boolti/presentation/QrScanActivity.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/QrScanActivity.kt b/presentation/src/main/java/com/nexters/boolti/presentation/QrScanActivity.kt index 66dd29b4..59cb9fed 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/QrScanActivity.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/QrScanActivity.kt @@ -1,5 +1,6 @@ package com.nexters.boolti.presentation +import android.Manifest import android.graphics.Color import android.hardware.Camera import android.os.Bundle @@ -19,6 +20,7 @@ import com.journeyapps.barcodescanner.BarcodeCallback import com.journeyapps.barcodescanner.BarcodeResult import com.journeyapps.barcodescanner.DecoratedBarcodeView import com.journeyapps.barcodescanner.DefaultDecoderFactory +import com.nexters.boolti.presentation.extension.requestPermission import com.nexters.boolti.presentation.extension.vibrator import com.nexters.boolti.presentation.screen.qr.QrScanScreen import com.nexters.boolti.presentation.theme.BooltiTheme @@ -65,6 +67,8 @@ class QrScanActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + requestPermission(Manifest.permission.CAMERA, 100) + enableEdgeToEdge( statusBarStyle = SystemBarStyle.dark(Color.TRANSPARENT), navigationBarStyle = SystemBarStyle.dark(0xFF090A0B.toInt()) From 4fab0557c312f04729a2cbfdef48a616ade0c317 Mon Sep 17 00:00:00 2001 From: mangbaam Date: Wed, 29 Jan 2025 12:19:46 +0900 Subject: [PATCH 6/9] =?UTF-8?q?release/1.10.0=20=ED=95=98=EB=8B=A8=20?= =?UTF-8?q?=EB=B2=84=ED=8A=BC=20=EA=B3=A0=EC=A0=95=20=ED=8C=A8=EB=94=A9=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../presentation/screen/profileedit/link/LinkEditScreen.kt | 2 +- .../com/nexters/boolti/presentation/screen/refund/ReasonPage.kt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/link/LinkEditScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/link/LinkEditScreen.kt index 0f3b882c..1b604ac1 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/link/LinkEditScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/profileedit/link/LinkEditScreen.kt @@ -175,7 +175,7 @@ fun LinkEditScreen( MainButton( modifier = Modifier .align(Alignment.BottomCenter) - .padding(marginHorizontal) + .padding(horizontal = marginHorizontal) .padding(bottom = 20.dp) .fillMaxWidth(), label = stringResource(R.string.link_remove), diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/ReasonPage.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/ReasonPage.kt index 707570bc..d48e9a3f 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/ReasonPage.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/refund/ReasonPage.kt @@ -49,7 +49,7 @@ fun ReasonPage( modifier = Modifier .fillMaxWidth() .padding(horizontal = marginHorizontal) - .padding(bottom = 32.dp), + .padding(bottom = 20.dp), onClick = onNextClick, enabled = reason.isNotBlank(), label = stringResource(id = R.string.next), From bda1aa82fba635bda6146ad8d7e37284ac2e87f3 Mon Sep 17 00:00:00 2001 From: mangbaam Date: Wed, 29 Jan 2025 12:26:15 +0900 Subject: [PATCH 7/9] =?UTF-8?q?release/1.10.0=20=ED=8B=B0=EC=BC=93=20?= =?UTF-8?q?=EC=84=A0=ED=83=9D=20=EB=B0=94=ED=85=80=EC=8B=9C=ED=8A=B8=20?= =?UTF-8?q?=EB=B2=84=ED=8A=BC=20=EC=9E=98=EB=A6=AC=EB=8A=94=20=EB=AC=B8?= =?UTF-8?q?=EC=A0=9C=20=ED=95=B4=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../presentation/screen/ticketing/ChooseTicketBottomSheet.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt index 643a83d5..6a3f2644 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt @@ -250,8 +250,8 @@ private fun ChooseTicketBottomSheetContent2( label = stringResource(buttonTextId), modifier = Modifier .fillMaxWidth() - .height(48.dp) - .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 32.dp), + .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 32.dp) + .height(48.dp), onClick = { onTicketingClicked(ticket, ticketCount) }, ) } From 862bf16d8e95f049a6c2ae40fd44f5f82d64e306 Mon Sep 17 00:00:00 2001 From: mangbaam Date: Wed, 29 Jan 2025 12:29:31 +0900 Subject: [PATCH 8/9] =?UTF-8?q?release/1.10.0=20=EB=B2=84=EC=A0=84=20?= =?UTF-8?q?=EC=97=85=20(36,=201.10.0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 95d4e0a6..ebe41dcd 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,7 +1,7 @@ [versions] minSdk = "26" targetSdk = "34" -versionCode = "35" +versionCode = "36" versionName = "1.10.0" packageName = "com.nexters.boolti" compileSdk = "34" From 2005a089a5751e820a6c51426f19ab6d1d5cf701 Mon Sep 17 00:00:00 2001 From: mangbaam Date: Wed, 29 Jan 2025 12:47:24 +0900 Subject: [PATCH 9/9] =?UTF-8?q?release/1.10.0=20=ED=8B=B0=EC=BC=93=20?= =?UTF-8?q?=EC=88=98=EB=9F=89=20=EC=84=A0=ED=83=9D=20=EB=B0=94=ED=85=80?= =?UTF-8?q?=EC=8B=9C=ED=8A=B8=20=ED=95=98=EB=8B=A8=20=EC=98=81=EC=97=AD=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../presentation/screen/ticketing/ChooseTicketBottomSheet.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt index 6a3f2644..356b6df9 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/ticketing/ChooseTicketBottomSheet.kt @@ -250,7 +250,7 @@ private fun ChooseTicketBottomSheetContent2( label = stringResource(buttonTextId), modifier = Modifier .fillMaxWidth() - .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 32.dp) + .padding(start = 20.dp, end = 20.dp, top = 8.dp, bottom = 20.dp) .height(48.dp), onClick = { onTicketingClicked(ticket, ticketCount) }, )