Skip to content

fix: 16kb 지원#858

Merged
Sadturtleman merged 3 commits into
developfrom
fix/857
Apr 21, 2026
Merged

fix: 16kb 지원#858
Sadturtleman merged 3 commits into
developfrom
fix/857

Conversation

@Sadturtleman
Copy link
Copy Markdown
Contributor

@Sadturtleman Sadturtleman commented Apr 7, 2026

📌𝘐𝘴𝘴𝘶𝘦𝘴

📎𝘞𝘰𝘳𝘬 𝘋𝘦𝘴𝘤𝘳𝘪𝘱𝘵𝘪𝘰𝘯

📷𝘚𝘤𝘳𝘦𝘦𝘯𝘴𝘩𝘰𝘵

💬𝘛𝘰 𝘙𝘦𝘷𝘪𝘦𝘸𝘦𝘳𝘴

kakao sdk가 android-gif-drawable 라이브러리를 16kb 미지원하는 버전으로 의존해서 생긴 문제라 sdk 업데이트 후 drawable 라이브러리를 강제로 업데이트 했습니다.

Summary by CodeRabbit

  • Chores
    • 새로고침 라이브러리를 AndroidX SwipeRefreshLayout으로 교체하여 빌드 의존성 정리 및 불필요한 주석 제거
  • Refactor
    • 새로고침 관련 구현을 단순화하여 표준 위젯으로 통일(사용자 관점의 새로고침 동작과 표시 종료 처리는 유지)

Copy link
Copy Markdown
Member

@s9hn s9hn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

카카오SDK 릴리즈 노트엔 2.21.1->2로 상향되면서 16KB 및 gif관련 업데이트 사항은 없긴합니다!
카카오 로그인 sdk가 내부적으로 gif라이브러리를 쓰는건가요?
그렇지 않다면 gif라이브러리를 사용하는 상위 라이브러리를 찾아서 버전업데이트 해줘야할 것 같아요

Comment thread app/build.gradle.kts Outdated
Comment on lines 83 to 84
// 룸 디비 제거
// 좋아요 기능 좀더 생각해보기
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이거 주석좀 지워주실 수 있나요 ㅋㅋ;

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

넵!

Comment thread gradle/libs.versions.toml Outdated

# Social Login Libraries
kakao = "2.23.1"
kakao = "2.23.2"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

버전 릴리즈 노트 확인 해보셨나요?

Comment thread app/build.gradle.kts Outdated
resolutionStrategy {
force("pl.droidsonroids.gif:android-gif-drawable:1.2.29")
}
}
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

버전 강제를 해버리면, 이후에 해당 라이브러리를 사용하는 sdk 혹은 상위 라이브러리에서 버전호환으로 인한 문제가 생길 수 있습니다!

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 9, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: ff6c7e9c-1b7e-4572-97d7-fa6f2fbefd17

📥 Commits

Reviewing files that changed from the base of the PR and between 6109998 and 552801f.

📒 Files selected for processing (4)
  • app/build.gradle.kts
  • app/src/main/java/com/into/websoso/ui/novelFeed/NovelFeedFragment.kt
  • app/src/main/res/layout/fragment_novel_feed.xml
  • gradle/libs.versions.toml

Walkthrough

앱의 풀-투-리프레시 구현을 Simform의 SSPullToRefresh에서 AndroidX의 SwipeRefreshLayout으로 교체하고, 관련 버전 카탈로그 및 Gradle 의존성을 갱신했습니다. 프래그먼트에서 커스텀 리프레시 설정을 제거하고 OnRefreshListener 등록과 isRefreshing 제어만 남겼습니다.

Changes

Cohort / File(s) Summary
빌드 설정
gradle/libs.versions.toml, app/build.gradle.kts
버전 카탈로그에서 pull-to-refresh 항목을 제거하고 swipe-refresh-layout으로 추가. app/build.gradle.kts의 의존성에서 implementation(libs.pull.to.refresh)implementation(libs.swipe.refresh.layout)로 변경; 상단의 한국어 주석 2줄 제거.
UI 레이아웃
app/src/main/res/layout/fragment_novel_feed.xml
루트 리프레시 컨테이너를 com.simform.refresh.SSPullToRefreshLayoutandroidx.swiperefreshlayout.widget.SwipeRefreshLayout로 교체(뷰 ID 및 레이아웃 제약은 유지).
프래그먼트 로직
app/src/main/java/com/into/websoso/ui/novelFeed/NovelFeedFragment.kt
커스텀 리프레시 뷰 초기화(레이아웃 파라미터, Lottie 애니메이션 등) 제거. setupRefreshView()OnRefreshListener만 등록하도록 단순화. 리프레시 완료 시 isRefreshing = false로 설정하도록 변경.

Sequence Diagram(s)

(생성 조건에 부합하지 않아 생략)

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested labels

🔨 [FIX]

Suggested reviewers

  • devfeijoa
  • m6z1

Poem

🐰 바람에 살짝 스와이프하네
오래된 스프링 하나 내려놓고
새 위젯에 가볍게 안착했지 🌿
리프레시가 톡 — 피식 웃음처럼
당근 한입, 코드 한 줄로 폴짝 🥕

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive 제목이 pull-to-refresh에서 swipe-refresh-layout으로의 라이브러리 교체라는 실제 변경사항과 명확하게 연결되지 않음. 제목을 더 구체적으로 변경하여 라이브러리 교체 또는 16KB 지원을 위한 의존성 업데이트임을 명확히 하세요.
✅ Passed checks (3 passed)
Check name Status Explanation
Description check ✅ Passed PR 설명이 작업 설명 섹션을 비워두었고, 스크린샷도 제공하지 않았으며, 검토자를 위한 주석도 최소한의 정보만 포함했습니다.
Linked Issues check ✅ Passed 코드 변경사항이 16KB 메모리 페이지 지원 문제를 해결하기 위해 android-gif-drawable 라이브러리를 업데이트했으므로 #857의 목표를 충족합니다.
Out of Scope Changes check ✅ Passed 모든 변경사항이 16KB 메모리 페이지 지원을 위한 라이브러리 교체에만 집중되어 있으며, PR 목표 범위 내에 있습니다.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/857

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
app/src/main/java/com/into/websoso/ui/novelFeed/NovelFeedFragment.kt (1)

362-369: ⚠️ Potential issue | 🟠 Major

새로고침 실패 시 스피너가 종료되지 않습니다

when 분기 순서 때문에 실패 상태(error=true, loading=false)에서는 Line 368이 실행되지 않습니다. 실패 분기에서도 isRefreshing = false를 명시해 주세요.

수정 예시
                 novelFeedUiState.error -> {
                     binding.wllNovelFeed.setLoadingLayoutVisibility(false)
+                    binding.sptrNovelFeedRefresh.isRefreshing = false
                 }

                 !novelFeedUiState.loading -> {
                     binding.wllNovelFeed.setWebsosoLoadingVisibility(false)
                     binding.sptrNovelFeedRefresh.isRefreshing = false
                     updateFeeds(novelFeedUiState)
                 }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@app/src/main/java/com/into/websoso/ui/novelFeed/NovelFeedFragment.kt` around
lines 362 - 369, The error branch in the when on novelFeedUiState doesn't stop
the SwipeRefresh spinner because the !novelFeedUiState.loading branch (which
clears binding.sptrNovelFeedRefresh.isRefreshing) is skipped when error==true;
modify the error handling in NovelFeedFragment (the when handling
novelFeedUiState) to also set binding.sptrNovelFeedRefresh.isRefreshing = false
(or move the isRefreshing clear to run for both error and non-loading cases)
along with the existing binding.wllNovelFeed.setLoadingLayoutVisibility(false)
so the spinner is always stopped on refresh failure.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In `@app/src/main/java/com/into/websoso/ui/novelFeed/NovelFeedFragment.kt`:
- Around line 362-369: The error branch in the when on novelFeedUiState doesn't
stop the SwipeRefresh spinner because the !novelFeedUiState.loading branch
(which clears binding.sptrNovelFeedRefresh.isRefreshing) is skipped when
error==true; modify the error handling in NovelFeedFragment (the when handling
novelFeedUiState) to also set binding.sptrNovelFeedRefresh.isRefreshing = false
(or move the isRefreshing clear to run for both error and non-loading cases)
along with the existing binding.wllNovelFeed.setLoadingLayoutVisibility(false)
so the spinner is always stopped on refresh failure.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 8a34d8ef-a26d-4253-bc57-0bd4fa443341

📥 Commits

Reviewing files that changed from the base of the PR and between e45fab7 and 6109998.

📒 Files selected for processing (4)
  • app/build.gradle.kts
  • app/src/main/java/com/into/websoso/ui/novelFeed/NovelFeedFragment.kt
  • app/src/main/res/layout/fragment_novel_feed.xml
  • gradle/libs.versions.toml
🚧 Files skipped from review as they are similar to previous changes (1)
  • app/build.gradle.kts

Copy link
Copy Markdown
Member

@m6z1 m6z1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Copy link
Copy Markdown
Contributor

@devfeijoa devfeijoa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다 👍🏻

@Sadturtleman Sadturtleman merged commit 15b9cf3 into develop Apr 21, 2026
1 of 2 checks passed
@Sadturtleman Sadturtleman deleted the fix/857 branch April 21, 2026 06:39
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.

fix: 16KB 메모리 페이지 지원

4 participants