Skip to content

Commit 24bcf52

Browse files
committed
FIX: 루틴 작성시 루틴 제목 글자 제한 추가
1 parent c7ae0c4 commit 24bcf52

3 files changed

Lines changed: 16 additions & 1 deletion

File tree

presentation/src/main/java/com/threegap/bitnagil/presentation/writeroutine/WriteRoutineScreen.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,12 @@ import androidx.compose.foundation.layout.width
1616
import androidx.compose.foundation.layout.windowInsetsPadding
1717
import androidx.compose.foundation.rememberScrollState
1818
import androidx.compose.foundation.verticalScroll
19+
import androidx.compose.material3.Text
1920
import androidx.compose.runtime.Composable
2021
import androidx.compose.runtime.getValue
2122
import androidx.compose.ui.Alignment
2223
import androidx.compose.ui.Modifier
24+
import androidx.compose.ui.text.style.TextAlign
2325
import androidx.compose.ui.tooling.preview.Preview
2426
import androidx.compose.ui.unit.dp
2527
import androidx.hilt.navigation.compose.hiltViewModel
@@ -166,7 +168,17 @@ private fun WriteRoutineScreen(
166168
onClickRemove = null,
167169
)
168170

169-
Spacer(modifier = Modifier.height(40.dp))
171+
Spacer(modifier = Modifier.height(6.dp))
172+
173+
Text(
174+
text = "${state.routineName.length} / ${WriteRoutineState.MAX_ROUTINE_NAME_LENGTH}",
175+
style = BitnagilTheme.typography.caption1Medium,
176+
color = BitnagilTheme.colors.coolGray80,
177+
textAlign = TextAlign.End,
178+
modifier = Modifier.fillMaxWidth(),
179+
)
180+
181+
Spacer(modifier = Modifier.height(28.dp))
170182

171183
Column(
172184
verticalArrangement = Arrangement.spacedBy(12.dp),

presentation/src/main/java/com/threegap/bitnagil/presentation/writeroutine/WriteRoutineViewModel.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ class WriteRoutineViewModel @AssistedInject constructor(
158158
}
159159

160160
fun setRoutineName(name: String) = intent {
161+
if (name.length > WriteRoutineState.MAX_ROUTINE_NAME_LENGTH) return@intent
161162
reduce {
162163
state.copy(
163164
routineName = name,

presentation/src/main/java/com/threegap/bitnagil/presentation/writeroutine/contract/WriteRoutineState.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ data class WriteRoutineState(
3333
val recommendedRoutineType: RecommendCategory?,
3434
) : Parcelable {
3535
companion object {
36+
const val MAX_ROUTINE_NAME_LENGTH = 20
37+
3638
val INIT = WriteRoutineState(
3739
routineName = "",
3840
subRoutineNames = listOf("", "", ""),

0 commit comments

Comments
 (0)