docs(content): 추천 오디오 폭 보정 요구를 기록한다
This commit is contained in:
@@ -554,3 +554,39 @@
|
||||
- 2026-07-09: 사용자 후속 지적에 따라 Figma `24:6823`을 재확인했다. item root는 `gray_900(#202020)`, radius 14dp, padding 14dp 배경 컨테이너이고 내부 댓글 영역은 Figma `24:6822` 기준 `gray_800(#343434)` 박스다. 이에 `item_content_commented_audio.xml` root에 기존 `bg_feed_card` 배경과 `spacing_14` padding을 적용했다. root 폭은 고정 dp가 아니라 device width에서 좌우 margin 14dp씩 총 28dp를 뺀 값으로 `ContentCommentedAudioAdapter`에서 설정한다. 여러 item 사이 margin은 기존 `ContentHorizontalItemDecoration`의 8dp를 유지한다. 댓글 작성자 profile image는 원형 outline으로 clipping하고, 콘텐츠 cover image는 기존 `radius_14` outline clipping을 유지한다.
|
||||
- 2026-07-09: root 배경 보정 후 `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:installDebug`, `git diff --check` 결과 모두 성공했다. 실제 기기 `SM-G960N - Android 10`에서 `adb shell am start -W -n kr.co.vividnext.sodalive.debug/kr.co.vividnext.sodalive.splash.SplashActivity`가 `Status: ok`, `LaunchState: COLD`로 완료됐고, `dumpsys window`에서 `kr.co.vividnext.sodalive.v2.main.MainV2Activity` focus를 확인했다.
|
||||
- 2026-07-09: 추가 요청에 따라 댓글 많은 오디오 item이 여러 개 표시될 때 각 item width를 device width에서 좌우 margin 14dp씩 총 28dp를 뺀 값으로 설정하고, item 사이 간격은 기존 horizontal item decoration의 8dp를 유지했다. 댓글 작성자 profile image는 원형 outline clipping을 적용했고, 콘텐츠 cover image는 `radius_14` outline clipping을 유지했다. `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:installDebug`, `git diff --check` 결과 모두 성공했다. 실제 기기에서 `adb shell am start -W -n kr.co.vividnext.sodalive.debug/kr.co.vividnext.sodalive.splash.SplashActivity`가 `Status: ok`, `LaunchState: COLD`로 완료됐고, `dumpsys window`에서 `kr.co.vividnext.sodalive.v2.main.MainV2Activity` focus를 확인했다.
|
||||
|
||||
### 2026-07-09 후속 변경: 추천 오디오 2열 그리드 동적 폭 보정
|
||||
|
||||
- [x] **Task 10.1: 추천 오디오 grid item width 자동 계산 적용**
|
||||
- 수정:
|
||||
- `app/src/main/java/kr/co/vividnext/sodalive/v2/main/content/ContentMainFragment.kt`
|
||||
- `app/src/main/java/kr/co/vividnext/sodalive/v2/main/content/ui/ContentAudioCardAdapter.kt`
|
||||
- `app/src/main/java/kr/co/vividnext/sodalive/v2/main/content/ui/ContentRecyclerItemLayoutParams.kt`
|
||||
- `app/src/test/java/kr/co/vividnext/sodalive/v2/main/content/ContentMainFragmentSourceTest.kt`
|
||||
- 작업:
|
||||
- 추천 오디오 2열 그리드의 item width를 `rvContentRecommendedAudios` 측정 폭과 `CONTENT_RECOMMENDED_GRID_SPAN_COUNT` 기준으로 계산한다.
|
||||
- 추천 오디오 item 간격은 `CONTENT_RECOMMENDED_GRID_GAP_DP = 4`를 사용하고, 기존 전체 탭 기본 grid 간격은 유지한다.
|
||||
- `ContentAudioCardAdapter`는 grid width가 주입된 경우 `AudioContentCardView.setGridItemWidthPx()`를 사용하고, 주입되지 않은 기존 가로 섹션은 기존 `AudioContentCardSize`를 유지한다.
|
||||
- 검증:
|
||||
- `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.content.ContentMainFragmentSourceTest.content 추천 오디오 adapter는 fixed Large card width 대신 2열 grid item width를 사용한다"`
|
||||
- `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.content.ContentMainFragmentSourceTest"`
|
||||
- `./gradlew :app:compileDebugKotlin`
|
||||
- `git diff --check`
|
||||
- 검증 기록:
|
||||
- 2026-07-09: 먼저 `ContentMainFragmentSourceTest.content 추천 오디오 adapter는 fixed Large card width 대신 2열 grid item width를 사용한다`를 추가하고 기존 코드에서 `ContentAudioCardAdapter`의 `setGridItemWidthPx` 계약 부재로 RED 실패를 확인했다.
|
||||
- 2026-07-09: 구현 후 같은 테스트와 `ContentMainFragmentSourceTest` 전체를 재실행해 GREEN을 확인했다. `./gradlew :app:compileDebugKotlin`도 `BUILD SUCCESSFUL`로 통과했다.
|
||||
|
||||
|
||||
### 2026-07-09 후속 변경: ContentAudioCardAdapter notify 범위 이벤트 보정
|
||||
|
||||
- [x] **Task 10.2: ContentAudioCardAdapter notifyDataSetChanged 제거**
|
||||
- 수정:
|
||||
- `app/src/main/java/kr/co/vividnext/sodalive/v2/main/content/ui/ContentAudioCardAdapter.kt`
|
||||
- `app/src/test/java/kr/co/vividnext/sodalive/v2/main/content/ContentMainFragmentSourceTest.kt`
|
||||
- 작업:
|
||||
- grid width 변경 시 전체 갱신 대신 현재 item 범위만 `notifyItemRangeChanged`로 갱신한다.
|
||||
- item submit 시 이전/현재 item 개수에 따라 changed/inserted/removed range 이벤트를 사용한다.
|
||||
- 검증:
|
||||
- `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.content.ContentMainFragmentSourceTest.content 추천 오디오 adapter는 fixed Large card width 대신 2열 grid item width를 사용한다"`
|
||||
- `./gradlew :app:compileDebugKotlin`
|
||||
- `git diff --check`
|
||||
|
||||
Reference in New Issue
Block a user