[GMSS-210] 설정/닉네임 변경 화면 시안 반영 및 다크 모드 색 정합 - #48
Merged
Hidden character warning
The head ref may contain hidden characters: "soyeonLee126/\uc124\uc815\ud654\uba74-sync"
Conversation
- 설정 목록에 알림 설정 항목과 ON/OFF 배지 추가 - OS 알림 허용 여부를 읽어 표시하고, 탭하면 앱별 알림 설정으로 이동 - 화면이 다시 보일 때마다 다시 읽어 배지를 갱신 - 목록 항목 높이/여백과 화면 배경을 시안 값으로 정렬 - 상단 내비게이션 배경을 화면 배경색으로 명시 기본값이 기기 다크 모드를 따라가 라이트로 고정된 셸과 어긋났다 - 시스템 바 아이콘 색을 밝은 배경용으로 고정 같은 이유로 기기가 다크 모드면 흰 배경에 흰 아이콘이 겹쳤다 - 닉네임 변경 화면 안내 문구/입력 필드/버튼 여백을 시안에 맞춤 입력 필드는 모서리가 직각이고 높이가 52dp라 OutlinedTextField 대신 BasicTextField 로 다시 그렸다
- GamssTopNavigation 의 배경 기본값과 로고 분기를 isSystemInDarkTheme() 대신 앱 테마 기준으로 바꿈 셸이 라이트로 고정된 동안 기기 다크 모드를 직접 보면 흰 배경에 검은 상단바가 나왔다 - 판정에 쓸 GamssColors.isDark 토큰 추가 - 호출부 5곳에서 기본값을 우회하던 backgroundColor 인자와 주석 제거 - MainActivity 의 테마도 라이트로 고정 시스템 바 아이콘만 라이트로 고정돼 있어 다크 모드 기기의 로그인/온보딩 화면에서 검은 배경에 검은 아이콘이 겹쳤다 - values-night 윈도우 배경도 라이트로 통일해 첫 프레임 깜빡임 제거 - Material 색 스킴에 primary/onPrimary 를 지정 CircularProgressIndicator 가 M3 기본 보라를 쓰고 있었다
- GamssTextField 에 placeholder, errorMessage 파라미터 추가 placeholder 는 값이 비었을 때만, 안내 문구는 필드 아래에 시안 색/타이포로 그린다 - 닉네임 변경 화면에 두 문구 연결 안내 문구는 한 글자라도 입력한 뒤 공백 제외 길이가 최소 길이 미만일 때 뜬다 - 입력 길이 제한 기준을 원본에서 공백 제외 길이로 변경 저장 판정과 기준이 달라 뒤에 공백이 붙으면 유효 글자를 다 채우지 못했다
- 앱 정보 화면 폴백도 runCatching 으로 감쌈 두 설정 화면이 모두 없는 기기에서 폴백이 그대로 터져 앱이 죽을 수 있었다 - 설정 목록 항목의 제목에 weight 를 줘 배지가 밀려 잘리지 않도록 함 제목이 길거나 글꼴이 커지면 알림 상태를 알리는 ON/OFF 배지가 사라졌다
soyeonLee126
marked this pull request as draft
August 18, 2026 02:41
develop 병합 시 양쪽에서 같은 항목을 추가해 androidx-lifecycle-runtime-compose 가 두 번 정의되어 TOML 파싱이 실패했다.
- 입력 필드 테두리를 시안의 손그림 벡터로 교체하고 gray950 으로 틴트해 다크 모드에서도 색만 반전되게 한다. pathData 는 aapt2 문자열 길이 한계(32767자)를 넘어 path 를 나눴다. - 최대 길이를 10자로 줄이고, 초과 입력을 막는 대신 안내 문구를 띄우고 저장 버튼을 막는다. - 키보드가 올라올 때 내비게이션 바 inset 이 이중으로 더해지던 여백을 없앤다.
…sync # Conflicts: # core/designsystem/src/main/java/com/gamss/android/core/designsystem/topnavigation/GamssTopNavigation.kt
제목과 Spacer 가 남는 폭을 1:1 로 나눠 가져, 제목이 짧아도 남은 몫이 Spacer 로 넘어가지 않아 앱 버전이 끝까지 밀리지 않았다. 제목과 배지를 weight 를 가진 Row 로 묶어 남는 폭을 모두 차지하게 한다.
soyeonLee126
marked this pull request as ready for review
August 18, 2026 15:14
- 상한을 넘는 입력은 받지 않고, 초과를 시도했을 때만 안내 문구를 띄운다. 차단하면 상태만으로는 초과 시도를 알 수 없어 화면 로컬 플래그로 기억한다. - placeholder 를 빼고 쓰이지 않게 된 문자열도 지운다. - 하단 여백을 ime 와 내비게이션 바 중 큰 쪽으로 잡는다. Scaffold 가 contentWindowInsets 를 0 으로 두어 상세 화면에는 내비게이션 바 인셋이 전달되지 않아, 키보드가 내려가면 저장 버튼이 3버튼 내비에 가려졌다.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
작업 개요
설정 / 계정 정보 / 닉네임 변경 화면을 시안에 맞추고, 그 과정에서 드러난 다크 모드 색 불일치를 정리했습니다. 앱 셸이 라이트로 고정돼 있는데 일부 컴포넌트가 앱 테마 대신 기기의 다크 모드 설정을 직접 읽고 있어, 다크 모드 기기에서 흰 배경에 검은 상단바가 나오거나 로그인 화면에서 검은 배경에 검은 시스템 바 아이콘이 겹치는 문제가 있었습니다.
작업 유형
변경 사항
OutlinedTextField대신BasicTextField로 다시 그렸습니다. 시안의 필드는 모서리가 직각이고 높이가 52dp라 Material 기본 여백과 맞지 않았습니다.GamssTextField에placeholder와errorMessage를 추가하고, 닉네임 변경 화면에 빈 값 안내와 최소 길이 안내를 연결했습니다.GamssTopNavigation의 배경 기본값과 로고 분기가isSystemInDarkTheme()를 직접 보던 것을 앱 테마 기준으로 바꾸고, 이를 우회하려고 호출부 5곳에 넣었던backgroundColor인자를 제거했습니다. 판정용으로GamssColors.isDark토큰을 추가했습니다.MainActivity의 테마와values-night윈도우 배경도 라이트로 고정했습니다. 시스템 바 아이콘만 라이트로 고정돼 있어 다크 모드 기기의 로그인/온보딩 화면에서 검은 배경에 검은 아이콘이 겹쳤습니다.primary/onPrimary를 지정했습니다.CircularProgressIndicator가 색 인자 없이 쓰이면서 M3 기본 보라색으로 나오고 있었습니다.runCatching으로 감쌌습니다. 두 설정 화면이 모두 없는 기기에서 폴백이 그대로 터져 앱이 죽을 수 있었습니다.weight를 줘, 제목이 길거나 글꼴이 커져도 ON/OFF 배지가 밀려 잘리지 않도록 했습니다.관련 이슈
관련 작업 (Notion)
스크린샷 / 동작 화면
3977-15510(빈 값),3973-15391(최소 길이 미달) 기준으로 맞췄습니다.체크리스트
develop으로 설정되어 있다feat:,fix:등)을 따른다리뷰 요청 사항
MainActivity,MainScreen,values-night세 곳을 모두 라이트로 고정하는 쪽을 택했습니다. 컴포넌트 단위로 기기 설정을 읽던 것을 앱 테마로 모았기 때문에, 나중에 다크 시안이 나오면 이 고정만 풀어도 상단바/로고/로딩 인디케이터가 함께 따라옵니다.primary를gray950,onPrimary를gray025로 잡았습니다. 디자인 시스템에 primary 토큰이 없어 Primary 버튼과 같은 값을 썼는데, 별도 토큰을 두는 편이 나을지 의견 부탁드립니다.