Skip to content

fix(timeletter): 「더보기 설정」 아이콘이 #9E9E9E 하드코딩으로 대비 2.57:1 (#1861 분리) #2007

Open

Description

@OnlyReadOneBook

작업 유형

bug — 버그·오동작

주 담당 모듈

timeletter — 타임레터

개요

타임레터의 「더보기 설정」 아이콘이 #9E9E9E 하드코딩이라 라이트 배경 #FAFAFA 위에서 대비 2.57:1 이다. 아이콘·UI 컴포넌트 기준 3:1(WCAG 1.4.11)에 미달한다.

#1798(PR #1799)이 gray5 토큰을 거치는 자리만 고쳤고, 색을 드로어블에 박고 Image 로 그려 tint 를 받지 않는 자리는 그대로 남았다. Icon(tint = ...) 은 드로어블의 색을 덮어쓰지만 Image 는 덮어쓰지 않는다.

드로어블 호출부
feature/timeletter/presentation/src/main/res/drawable/setting.xml (#9E9E9E 3곳) component/TimeLetterBlockItem.kt:98 · component/TimeletterListItem.kt:79

두 호출부 모두 이 모양이다.

Image(
    painterResource(R.drawable.setting),
    contentDescription = "더보기 설정",
    modifier = Modifier.clickable { showMenu = true },
)

완료 조건

  • 두 자리가 하드코딩 대신 gray5 토큰을 지나게 한다 — Image → Icon(painter = ..., tint = AfternoteDesign.colors.gray5)
  • 라이트 대비가 3:1 이상인지 실측한다(gray5 는 라이트에서 Gray5OnLight = #6E6E6E 로 매핑돼 #FAFAFA 위 4.89:1)
  • 다크에서도 아이콘이 보이는지 확인한다 — gray5 는 다크에서 #9E9E9E 그대로이고 다크 배경 대비 6.01:1 이다
  • 스크린샷 골든이 있으면 갱신한다

자식 이슈

참고

#1861 에서 분리했다. #1861 은 같은 원인의 6곳을 한 이슈로 묶었는데 afternote·setting·timeletter 세 모듈에 걸쳐 있어, 담당 경계에 맞춰 timeletter 몫을 여기로 뗐다. afternote(afternote_ic_more_horizontal_1) · setting(ic_vector1 · ic_vector2) 몫은 #1861 에서 처리한다.

토큰 정의와 라이트 대체값의 근거는 core/ui/.../theme/Color.kt 의 Gray5OnLight KDoc 에 있다.

실기동 화면

에뮬레이터 Pixel 7(API 34) 실기동, QA823 계정, 실서버 afternote.kro.kr. 타임레터 목록의 더보기 아이콘을 실제 렌더에서 확대한 것이다.

타임레터 더보기 아이콘 실기동

Activity

  1. github-actions commented on Sep 13, 2026

    @github-actions
    Contributor

    bug 이슈는 사이드바 Fields > Priority 로 심각도를 지정해야 합니다. 판정 기준:

    • Urgent: 치명 — 크래시·데이터 소실·보안 무력화·핵심 경로 차단·가짜 성공
    • High: 심각 — 실패·틀린 값의 정상 위장, 핵심 기능 무동작
    • Medium: 불편 — 우회로가 있는 오동작·틀린 표시, 핵심 흐름은 유지
    • Low: 경미 — 문구·정렬·마감 품질 흠, 기능 영향 없음

    값이 비어 있어도 이슈를 닫지는 않습니다. 이 안내는 이슈당 한 번만 답니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:timeletter타임레터 기능 영역bugSomething isn't working

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions