Skip to content

[#598] refreshable의 로딩 인디케이터와 LoadingView가 같이 뜨는 현상을 해결한다#625

Merged
opficdev merged 3 commits into
developfrom
fix/#598-LoadingView
Jun 17, 2026
Merged

[#598] refreshable의 로딩 인디케이터와 LoadingView가 같이 뜨는 현상을 해결한다#625
opficdev merged 3 commits into
developfrom
fix/#598-LoadingView

Conversation

@opficdev

Copy link
Copy Markdown
Owner

🔗 연관된 이슈

🎯 의도

  • pull-to-refresh 중 SwiftUI 자체 refresh indicator와 화면 overlay LoadingView가 함께 표시되는 중복 로딩 UI를 정리

📝 작업 내용

📌 요약

  • refreshable에서 호출하는 액션은 effect 완료까지 기다리도록 await store.send(...).finish() 적용
  • pull-to-refresh 경로에서는 overlay LoadingView를 띄우지 않도록 fetch effect에 showsIndicator 옵션 추가
  • PushNotificationListFeature는 초기 fetch와 refresh 액션을 분리하고, 알림 관찰 effect는 초기 fetch 이후에 이어서 실행되도록 정리

🔍 상세

  • TodayView, TodoListView, PushNotificationListViewrefreshable 호출을 async 완료 대기 방식으로 변경
  • TodayFeature, TodoListFeature, ProfileFeature, PushNotificationListFeature의 fetch effect에 showsIndicator 파라미터를 추가해 일반 fetch와 refresh fetch의 loading 표시 정책을 분리
  • refresh 액션에서는 showsIndicator: false를 전달해 SwiftUI refresh indicator만 표시되도록 처리
  • PushNotificationListFeature에서 .refresh는 첫 페이지 재조회만 수행하고, .fetchNotifications는 첫 페이지 fetch 이후 observe 재연결까지 수행하도록 역할 분리
  • fetchNotificationsPageEffect를 분리해 refresh와 초기 fetch가 같은 페이지 조회 로직을 공유하도록 정리

📸 영상 / 이미지 (Optional)

@opficdev opficdev self-assigned this Jun 17, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Code Review

이번 풀 리퀘스트는 할 일 목록, 프로필, 푸시 알림, 오늘 화면 등 여러 기능에서 새로고침(.refresh) 시 로딩 인디케이터를 노출하지 않도록 showsIndicator 옵션을 추가하고, SwiftUI의 .refreshable이 비동기적으로 완료를 대기할 수 있도록 await ... finish()를 적용하는 변경사항을 포함하고 있습니다. 리뷰 피드백에서는 PushNotificationListFeature에서 새로고침 시 기존 알림 관찰(Observation) 이펙트가 취소되지 않아 데이터가 덮어씌워질 수 있는 잠재적 버그를 지적하였으며, 이를 방지하기 위해 fetchNotificationsEffect를 호출하도록 수정할 것을 제안합니다.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@opficdev opficdev merged commit c9c9065 into develop Jun 17, 2026
5 checks passed
@opficdev opficdev deleted the fix/#598-LoadingView branch June 17, 2026 14:11
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.

refreshable의 로딩 인디케이터와 LoadingView가 같이 뜨는 현상을 해결한다

1 participant