Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! 이 PR은 리뷰 작성 화면에서 사진 추가 및 삭제 기능의 사용자 경험을 개선하는 것을 목표로 합니다. 사진 추가 버튼의 UI가 재설계되었고, 사진 삭제 방식이 사진 자체를 클릭하는 것에서 전용 마이너스 아이콘을 클릭하는 방식으로 업데이트되었습니다. 이는 사용자가 더욱 직관적으로 사진을 관리할 수 있도록 돕습니다. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
| Column( | ||
| modifier = Modifier | ||
| .size(120.dp) | ||
| .clip(RoundedCornerShape(8.dp)) | ||
| .clickable(enabled = !isPosting) { onImageDelete() } | ||
| .size(150.dp) | ||
| // .clickable(enabled = !isPosting) { onImageDelete() } | ||
| ) { | ||
| AsyncImage( | ||
| model = selectedImageUri, | ||
| contentDescription = "Selected image", | ||
| modifier = Modifier.fillMaxSize() | ||
| ) | ||
| Box( | ||
| modifier = Modifier.size(92.dp) | ||
| ) { | ||
| AsyncImage( | ||
| model = selectedImageUri, | ||
| contentDescription = "Selected image", | ||
| modifier = Modifier | ||
| .size(80.dp) | ||
| .clip(RoundedCornerShape(4.dp)) | ||
| ) | ||
|
|
||
| IconButton( | ||
| onClick = { onImageDelete() }, | ||
| modifier = Modifier | ||
| .size(24.dp) // 터치 영역 | ||
| .align(Alignment.TopEnd) | ||
| .offset(x = 5.dp, y = (-5).dp) // 이미지 위에 살짝 겹치게 | ||
| ) { | ||
| Icon( | ||
| painter = painterResource(R.drawable.ic_minus), | ||
| contentDescription = "remove photo", | ||
| tint = Color.Unspecified, | ||
| modifier = Modifier.size(20.dp) // 실제 아이콘 | ||
| ) | ||
| } | ||
| } | ||
| } |
There was a problem hiding this comment.
이 Column 컴포저블은 단일 Box를 감싸고 있으며, Box의 크기(92.dp)보다 큰 150.dp의 고정 크기를 설정하고 있습니다. 이는 불필요한 레이아웃 계층과 사용되지 않는 공간을 추가합니다. Column을 제거하고 Box를 직접 배치하는 것을 고려해 보세요. 이 변경은 주석 처리된 코드(clickable)도 함께 제거하여 코드를 더 깔끔하게 만듭니다.
Box(
modifier = Modifier.size(92.dp)
) {
AsyncImage(
model = selectedImageUri,
contentDescription = "Selected image",
modifier = Modifier
.size(80.dp)
.clip(RoundedCornerShape(4.dp))
)
IconButton(
onClick = { onImageDelete() },
modifier = Modifier
.size(24.dp) // 터치 영역
.align(Alignment.TopEnd)
.offset(x = 5.dp, y = (-5).dp) // 이미지 위에 살짝 겹치게
) {
Icon(
painter = painterResource(R.drawable.ic_minus),
contentDescription = "remove photo",
tint = Color.Unspecified,
modifier = Modifier.size(20.dp) // 실제 아이콘
)
}
}| .clip(RoundedCornerShape(5.dp)) | ||
| .background(Gray100) | ||
| .border(1.dp, Gray200, RoundedCornerShape(5.dp)) | ||
| // .background(White) | ||
| .border(1.dp, Gray200, RoundedCornerShape(12.dp)) |
There was a problem hiding this comment.
여기에 몇 가지 개선점이 있습니다:
clip수정자는5.dp의RoundedCornerShape을 사용하지만border수정자는12.dp를 사용합니다. 이 불일치로 인해 배경 클리핑이 테두리의 모서리와 일치하지 않을 수 있습니다. 일관된 UI를 위해 두 수정자 모두 동일한 모서리 반경을 사용해야 합니다.- 주석 처리된
background코드가 있습니다. 코드를 깔끔하게 유지하기 위해 제거해야 합니다.
아래 제안은 일관된 12.dp 반경을 사용하고 주석 처리된 코드를 제거하여 두 가지 문제를 모두 해결합니다.
.clip(RoundedCornerShape(12.dp))
.border(1.dp, Gray200, RoundedCornerShape(12.dp))
Summary
Describe your changes
Screen_recording_20260305_171402.webm
Issue
To reviewers