Skip to content

refactor: HomeDrawer 리팩토링 2차#502

Merged
JuTaK97 merged 17 commits intodevelopfrom
refactor/timetable-tab
Jan 31, 2026
Merged

refactor: HomeDrawer 리팩토링 2차#502
JuTaK97 merged 17 commits intodevelopfrom
refactor/timetable-tab

Conversation

@qdrptd
Copy link
Collaborator

@qdrptd qdrptd commented Dec 26, 2025

  • 한 일:
    • BottomSheet 남은 거 구현
      • 08c10d4: 시간표 이미지 공유하기
      • 8b62e4c: 테마 설정하기
    • 에러 처리
      • 273e8f2: "로컬 도메인 에러" 추가
        • 앱 전체에 클라 로직으로 띄우는 에러가 딱 두 개뿐이라(UI로 막는 것 제외, 참고) 하드코딩함
  • 보면 좋은 것:
    • 08c10d4: uiEvent로 tableDto + tableTrimParam 넘기는 게 걸리는데, 이건 다른 방법을 더 생각해볼 예정
    • 8b62e4c: 테마 설정하기 바텀시트 구현(슬랙으로 말한 이슈)
    • 273e8f2: 하드코딩한거 어떤지
    • 지금은 previewTheme을 Prop Drilling해서 TimeTable()에서 쓰고 있는데, 이걸 추후 timetableUIState로 확장할 예정

@qdrptd qdrptd requested a review from a team as a code owner December 26, 2025 06:13
@JuTaK97
Copy link
Collaborator

JuTaK97 commented Dec 30, 2025

1월3일에볼게요

@qdrptd
Copy link
Collaborator Author

qdrptd commented Jan 5, 2026

바텀시트: 원래 구현 맞춰서 수정해야 함

Comment on lines +81 to +86
onDismiss = {
// 시트가 닫힐 때 수행해야 할 로직은 Route에서 주입할 수밖에 없음
scope.launch {
if (uiState is HomeDrawerUiState.Loaded && (uiState as HomeDrawerUiState.Loaded).homeDrawerBottomSheetType is HomeDrawerBottomSheetType.SelectTheme) {
timetableViewModel.setPreviewTheme(null)
}
Copy link
Collaborator

Choose a reason for hiding this comment

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

rememberModalBottomSheetState 요런 컴포즈 의존성 있는 상태값들이 만악의 근원 같기도 해
우리는 뷰모델에서 상태관리 일원화하려고 하는데, 얘네의 존재 때문에

  • 뷰모델에서 UIEvent 발사 -> UI에서 구독 후 sheetState.hide()
  • 그냥 UI에서 자체적 로직으로 sheetState.hide()

이 두 가지 중에 하나만 제한할 수가 없어

Copy link
Collaborator

Choose a reason for hiding this comment

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

그래도 옛날에는 이런 UI에서 담당하는 로직이 컴포넌트 안쪽에 깊게 박혀 있었지만 지금은 잘 보이는 Route로 끌어올린 것에 일단 만족하긴 해 ㅋㅋ

Comment on lines +119 to +122
scope.launch {
timetableViewModel.updateTheme()
sheetState.hide()
}
Copy link
Collaborator

Choose a reason for hiding this comment

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

아오 이거 hide가 또 suspend 함수네 ㅋㅋ

Copy link
Collaborator

@JuTaK97 JuTaK97 left a comment

Choose a reason for hiding this comment

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

고고고

Comment on lines +64 to +66
withFrameNanos {}
withFrameNanos {}
withFrameNanos {} // FIXME: 안전한가??
Copy link
Collaborator

Choose a reason for hiding this comment

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

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 아 이거 진짜 어떡하지

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

@JuTaK97 JuTaK97 merged commit be12cc4 into develop Jan 31, 2026
3 checks passed
@JuTaK97 JuTaK97 deleted the refactor/timetable-tab branch January 31, 2026 13:42
@JuTaK97 JuTaK97 restored the refactor/timetable-tab branch February 1, 2026 04:35
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.

2 participants