Skip to content

fix: Compose UI 품질 개선 — contentType, derivedStateOf, 색상 토큰, 접근성#78

Merged
gagip merged 1 commit intomainfrom
fix/ui-polish
Mar 25, 2026
Merged

fix: Compose UI 품질 개선 — contentType, derivedStateOf, 색상 토큰, 접근성#78
gagip merged 1 commit intomainfrom
fix/ui-polish

Conversation

@gagip
Copy link
Copy Markdown
Owner

@gagip gagip commented Mar 25, 2026

Summary

  • 성능: isSelectionMode(ZenAllTracksTabContent), playbackProgress(ZenPlayerBar)에 derivedStateOf 적용으로 불필요한 리컴포지션 감소
  • 성능: itemsIndexedcontentType 추가(ZenAllTracksTabContent, PlaylistDetailScreen)로 LazyColumn 재사용 최적화
  • 테마 일관성: Color.WhiteMaterialTheme.colorScheme.surface/onPrimary, TealThemeColor 하드코딩 → MaterialTheme.colorScheme.primary/onPrimary로 교체
  • 접근성: AlbumArtThumbnail contentDescription 보완, ZenPomodoroTimer 타이머 숫자에 semantics 추가

변경 파일

  • zen/musicselect/ZenAllTracksTabContent.kt
  • zen/miniplayer/ZenPlayerBar.kt
  • features/playlist/ui/PlaylistDetailScreen.kt
  • core/ui/component/AlbumArtThumbnail.kt
  • features/timer/ui/components/ZenPomodoroTimer.kt

- ZenAllTracksTabContent: isSelectionMode에 derivedStateOf 적용, itemsIndexed에 contentType 추가
- ZenPlayerBar: playbackProgress에 derivedStateOf 적용, Color.White → MaterialTheme 토큰으로 교체
- PlaylistDetailScreen: itemsIndexed contentType 추가, TealThemeColor 하드코딩 → MaterialTheme 토큰으로 교체
- AlbumArtThumbnail: contentDescription null → '앨범 아트'로 접근성 보완
- ZenPomodoroTimer: 타이머 Text에 semantics contentDescription 추가
@github-actions
Copy link
Copy Markdown

Coverage Report

Module Coverage Covered Total
Total 19.25% 910 4727
Player 34.19% 93 272
Playlist 17.97% 71 395
Timer 48.15% 365 758
Music 21.91% 39 178

@gagip gagip merged commit 716e499 into main Mar 25, 2026
1 check passed
@gagip gagip deleted the fix/ui-polish branch March 25, 2026 23:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant