From 505b7335f2ab89333a1c93ef1be3a22c22df0b7a Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Sun, 19 Apr 2026 17:30:52 +0900 Subject: [PATCH 1/9] #1036 [layout] Fix image edit button text wrapping --- .../presentation/screen/write/WriteScreen.kt | 30 ++++++++++++------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt index 693aa1fe..8571d126 100644 --- a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt +++ b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt @@ -31,7 +31,9 @@ import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.itemsIndexed import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.foundation.text.BasicTextField +import androidx.compose.foundation.text.TextAutoSize import androidx.compose.material.Surface +import androidx.compose.material3.Icon import androidx.compose.material3.Divider import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.SnackbarHostState @@ -64,6 +66,7 @@ import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.text.withStyle import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp import androidx.compose.ui.zIndex import androidx.core.content.ContextCompat import androidx.hilt.navigation.compose.hiltViewModel @@ -445,26 +448,33 @@ fun WriteUploadImages( ) { Row( modifier = Modifier - .width(112.dp) + .width(116.dp) .height(36.dp) .clickable { onEditImage(index) } - .padding(horizontal = 12.dp) + .padding(horizontal = 12.dp), + horizontalArrangement = Arrangement.Center, + verticalAlignment = Alignment.CenterVertically ) { - Image( - painter = painterResource(id = R.drawable.ic_crop), - contentDescription = "edit image", - modifier = Modifier - .align(Alignment.CenterVertically) - .size(20.dp) + Icon( + painter = painterResource(id = R.drawable.ic_plus_green), + contentDescription = stringResource(R.string.write_post_image_edit), + tint = White_FFFFFF, + modifier = Modifier.size(20.dp) ) Spacer(modifier = Modifier.width(4.dp)) Text( text = stringResource(R.string.write_post_image_edit), style = DayoTheme.typography.b5, color = White_FFFFFF, - modifier = Modifier.align(Alignment.CenterVertically) + autoSize = TextAutoSize.StepBased( + minFontSize = 12.sp, + maxFontSize = 14.sp, + stepSize = 0.25.sp, + ), + maxLines = 1, + overflow = TextOverflow.Ellipsis ) } } @@ -787,4 +797,4 @@ fun WriteFolderLayout( contentDescription = stringResource(R.string.write_post_select_folder_title) ) } -} \ No newline at end of file +} From b763963e2e218e0b65ba80121c5bdf7d7eeb232d Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Sun, 19 Apr 2026 17:58:12 +0900 Subject: [PATCH 2/9] #1037 [QA] Fix tag summary truncation in Write_tag_complete --- .../daily/dayo/presentation/screen/write/WriteScreen.kt | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt index 8571d126..682e74e0 100644 --- a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt +++ b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt @@ -688,13 +688,9 @@ fun WriteTagLayout( style = DayoTheme.typography.b3, color = Dark ) - Spacer( - modifier = Modifier - .weight(1f) - .widthIn(min = 54.dp) - ) + Spacer(modifier = Modifier.width(12.dp)) if (tags.isNotEmpty()) { - val tag = tags.joinToString(separator = ", ", postfix = " ") { + val tag = tags.joinToString(separator = ", ") { ContextCompat.getString(context, R.string.write_post_select_tag_contents).format(it) } Text( From d149375c0bc5a4eae0aac499450a1f806a594a99 Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Sun, 19 Apr 2026 18:48:10 +0900 Subject: [PATCH 3/9] #1038 [QA] Fix selected check icon in Write_folder_selected --- .../screen/write/WriteFolderScreen.kt | 22 +++++++++---------- .../res/drawable/ic_check_corner_round.xml | 15 +++++++++++++ 2 files changed, 26 insertions(+), 11 deletions(-) create mode 100644 presentation/src/main/res/drawable/ic_check_corner_round.xml diff --git a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt index ab809b72..0d00a971 100644 --- a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt +++ b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt @@ -290,17 +290,17 @@ fun WriteFolderItemLayout( .clip(RoundedCornerShape(size = FOLDER_THUMBNAIL_RADIUS_SIZE.dp)) .background(Primary_23C882.copy(alpha = 0.6f)) ) { - Image( - painter = painterResource(id = R.drawable.ic_check), - contentDescription = "Selected", - contentScale = ContentScale.Crop, - colorFilter = ColorFilter.tint(White_FFFFFF), - modifier = Modifier - .size(18.dp) - .align(Alignment.Center) - ) - } - } + Image( + painter = painterResource(id = R.drawable.ic_check_corner_round), + contentDescription = "Selected", + contentScale = ContentScale.Fit, + colorFilter = ColorFilter.tint(White_FFFFFF), + modifier = Modifier + .align(Alignment.Center) + .size(18.dp) + ) + } + } } Spacer(modifier = Modifier.width(12.dp)) Column( diff --git a/presentation/src/main/res/drawable/ic_check_corner_round.xml b/presentation/src/main/res/drawable/ic_check_corner_round.xml new file mode 100644 index 00000000..4b957218 --- /dev/null +++ b/presentation/src/main/res/drawable/ic_check_corner_round.xml @@ -0,0 +1,15 @@ + + + + \ No newline at end of file From 2f0a8d39ff6962b45482e1e0a778739fb784a0a1 Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Sun, 19 Apr 2026 18:56:32 +0900 Subject: [PATCH 4/9] #1039 [QA] Fix private folder lock icon in Write_folder_selected --- .../screen/write/WriteFolderScreen.kt | 13 +++++-------- presentation/src/main/res/drawable/ic_lock.xml | 18 ++++-------------- 2 files changed, 9 insertions(+), 22 deletions(-) diff --git a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt index 0d00a971..93fa5b57 100644 --- a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt +++ b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt @@ -51,6 +51,7 @@ import daily.dayo.presentation.common.extension.clickableSingle import daily.dayo.presentation.common.extension.limitTo import daily.dayo.presentation.theme.Dark import daily.dayo.presentation.theme.DayoTheme +import daily.dayo.presentation.theme.Gray1_50545B import daily.dayo.presentation.theme.Gray2_767B83 import daily.dayo.presentation.theme.Gray3_9FA5AE import daily.dayo.presentation.theme.Primary_23C882 @@ -308,24 +309,20 @@ fun WriteFolderItemLayout( .fillMaxHeight() .wrapContentHeight(Alignment.CenterVertically) ) { - Row { + Row(verticalAlignment = Alignment.CenterVertically) { if (folder.privacy == Privacy.ONLY_ME) { Image( modifier = Modifier - .height(24.dp) - .wrapContentHeight(Alignment.CenterVertically), + .size(16.dp), painter = painterResource(id = R.drawable.ic_lock), contentDescription = "Only Me", - colorFilter = ColorFilter.tint(Dark) + colorFilter = ColorFilter.tint(Gray1_50545B) ) Spacer(modifier = Modifier.width(4.dp)) } Text( modifier = Modifier - .fillMaxWidth() - .height(24.dp) - .wrapContentWidth(Alignment.Start) - .wrapContentHeight(Alignment.CenterVertically), + .fillMaxWidth(), text = folder.title, style = DayoTheme.typography.b4.copy( color = Dark, diff --git a/presentation/src/main/res/drawable/ic_lock.xml b/presentation/src/main/res/drawable/ic_lock.xml index f760683f..455f0a60 100644 --- a/presentation/src/main/res/drawable/ic_lock.xml +++ b/presentation/src/main/res/drawable/ic_lock.xml @@ -1,15 +1,5 @@ - - - + + + + From f52197bf3f84dbb077ad6665b1ba6cbdfe68304b Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Sun, 19 Apr 2026 20:38:37 +0900 Subject: [PATCH 5/9] #1040 [QA] Fix default folder thumbnail in Write_folder_selected --- .../screen/write/WriteFolderScreen.kt | 8 ++++- .../drawable/img_default_folder_dayo_logo.xml | 35 +++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 presentation/src/main/res/drawable/img_default_folder_dayo_logo.xml diff --git a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt index 93fa5b57..f72d9b22 100644 --- a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt +++ b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteFolderScreen.kt @@ -265,6 +265,11 @@ fun WriteFolderItemLayout( isSelected: Boolean = true, onFolderClick: (Long, String) -> Unit = { _, _ -> }, ) { + val thumbnailModel: Any = folder.thumbnailImage + .takeIf { it.isNotBlank() } + ?.let { "${BuildConfig.BASE_URL}/images/$it" } + ?: R.drawable.img_default_folder_dayo_logo + Row( modifier = Modifier .fillMaxWidth() @@ -279,10 +284,11 @@ fun WriteFolderItemLayout( ) { RoundImageView( context = LocalContext.current, - imageUrl = "${BuildConfig.BASE_URL}/images/${folder.thumbnailImage}", + imageUrl = thumbnailModel, modifier = Modifier.size(FOLDER_THUMBNAIL_SIZE.dp), imageSize = Size(FOLDER_THUMBNAIL_SIZE, FOLDER_THUMBNAIL_SIZE), roundSize = FOLDER_THUMBNAIL_RADIUS_SIZE.dp, + placeholderResId = R.drawable.img_default_folder_dayo_logo, ) if (isSelected) { Box( diff --git a/presentation/src/main/res/drawable/img_default_folder_dayo_logo.xml b/presentation/src/main/res/drawable/img_default_folder_dayo_logo.xml new file mode 100644 index 00000000..8addc568 --- /dev/null +++ b/presentation/src/main/res/drawable/img_default_folder_dayo_logo.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + From b9943e869d5d84799a29cb813896b634244103ca Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Sun, 19 Apr 2026 22:07:51 +0900 Subject: [PATCH 6/9] #1041 [QA] Fix category bottom sheet spacing in Write_category --- .../dayo/presentation/view/dialog/BottomSheetDialog.kt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/presentation/src/main/java/daily/dayo/presentation/view/dialog/BottomSheetDialog.kt b/presentation/src/main/java/daily/dayo/presentation/view/dialog/BottomSheetDialog.kt index 156533d1..c20c3a78 100644 --- a/presentation/src/main/java/daily/dayo/presentation/view/dialog/BottomSheetDialog.kt +++ b/presentation/src/main/java/daily/dayo/presentation/view/dialog/BottomSheetDialog.kt @@ -12,8 +12,8 @@ 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.offset import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentSize import androidx.compose.foundation.shape.RoundedCornerShape @@ -127,7 +127,7 @@ fun BottomSheetDialog( interactionSource = interactionSource ) .background(White_FFFFFF) - .padding(12.dp), + .padding(vertical = 8.dp, horizontal = 12.dp), horizontalArrangement = Arrangement.SpaceBetween, verticalAlignment = Alignment.CenterVertically ) { @@ -139,14 +139,14 @@ fun BottomSheetDialog( tint = Color.Unspecified ) } + Spacer(modifier = Modifier.width(12.dp)) Text( text = button.first, - modifier = Modifier.offset(8.dp, 0.dp), + modifier = Modifier.weight(1f), color = if ((isFirstButtonColored && index == 0) || (checkedButtonIndex == index)) checkedColor else normalColor, fontSize = 16.sp, style = DayoTheme.typography.b4 ) - Spacer(modifier = Modifier.weight(1f)) if (checkedButtonIndex == index) { Icon( imageVector = rightIcon, @@ -241,4 +241,4 @@ fun PreviewMyBottomSheetDialog() { checkedButtonIndex = 0, ) } -} \ No newline at end of file +} From 4dcfc9e8159a80c324ddfa5e2267b30a7f558ef3 Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Sun, 19 Apr 2026 22:21:38 +0900 Subject: [PATCH 7/9] [QA] Unify write summary spacing --- .../dayo/presentation/screen/write/WriteScreen.kt | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt index 682e74e0..ce30ca56 100644 --- a/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt +++ b/presentation/src/main/java/daily/dayo/presentation/screen/write/WriteScreen.kt @@ -25,7 +25,6 @@ import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width -import androidx.compose.foundation.layout.widthIn import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.itemsIndexed @@ -102,6 +101,8 @@ const val WRITE_POST_DETAIL_MAX_LENGTH = 200 const val WRITE_POST_IMAGE_SIZE = 220 const val WRITE_POST_TOP_Z_INDEX = 1f +private val WriteSummaryLabelSpacing = 12.dp + @OptIn(ExperimentalMaterial3Api::class) @Composable internal fun WriteRoute( @@ -688,7 +689,7 @@ fun WriteTagLayout( style = DayoTheme.typography.b3, color = Dark ) - Spacer(modifier = Modifier.width(12.dp)) + Spacer(modifier = Modifier.width(WriteSummaryLabelSpacing)) if (tags.isNotEmpty()) { val tag = tags.joinToString(separator = ", ") { ContextCompat.getString(context, R.string.write_post_select_tag_contents).format(it) @@ -753,11 +754,7 @@ fun WriteFolderLayout( style = DayoTheme.typography.b3, color = Dark ) - Spacer( - modifier = Modifier - .weight(1f) - .widthIn(min = 54.dp) - ) + Spacer(modifier = Modifier.width(WriteSummaryLabelSpacing)) if (!folderName.isNullOrEmpty()) { Text( modifier = Modifier From 0c62b26100ebcac5c2ffd9066de7d95739a3ad51 Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Wed, 22 Apr 2026 20:57:41 +0900 Subject: [PATCH 8/9] Disable auto mirror img_default_folder_dayo_logo.xml --- .../src/main/res/drawable/img_default_folder_dayo_logo.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/presentation/src/main/res/drawable/img_default_folder_dayo_logo.xml b/presentation/src/main/res/drawable/img_default_folder_dayo_logo.xml index 8addc568..a2b98185 100644 --- a/presentation/src/main/res/drawable/img_default_folder_dayo_logo.xml +++ b/presentation/src/main/res/drawable/img_default_folder_dayo_logo.xml @@ -1,7 +1,7 @@ From 1341244404f7148dba7434cdbce81328754c030c Mon Sep 17 00:00:00 2001 From: DongJun Huh Date: Wed, 22 Apr 2026 20:58:14 +0900 Subject: [PATCH 9/9] Disable auto mirror ic_check_corner_round.xml --- presentation/src/main/res/drawable/ic_check_corner_round.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/presentation/src/main/res/drawable/ic_check_corner_round.xml b/presentation/src/main/res/drawable/ic_check_corner_round.xml index 4b957218..96f06c51 100644 --- a/presentation/src/main/res/drawable/ic_check_corner_round.xml +++ b/presentation/src/main/res/drawable/ic_check_corner_round.xml @@ -1,7 +1,7 @@ @@ -12,4 +12,4 @@ android:strokeColor="#ffffff" android:strokeLineCap="round" android:strokeLineJoin="round" /> - \ No newline at end of file +