Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
8d68f28
✨ feat(chatting): 매니저 채팅방 화면 및 네비게이션 키 추가
codebidoof Jul 19, 2026
9653a8a
Remove IDE files from Git tracking
codebidoof Jul 19, 2026
2d2a852
feat: 채팅 말풍선 컴포넌트 추가 및 UI 패키지 구조 정비
codebidoof Jul 19, 2026
8c28b66
feat: 매니저 채팅방 UI 컴포넌트 구현 및 패키지 구조 개선
codebidoof Jul 19, 2026
214a76e
feat: 채팅방 날짜 식별 컴포넌트 구현 및 패키지 구조 정리
codebidoof Jul 19, 2026
60d58c6
feat: 매니저 초기 메시지 모델 및 유스케이스 구현
codebidoof Jul 19, 2026
36739e6
feat: 채팅 UI 구성 요소 고도화 및 메시지 전달 로직 변경
codebidoof Jul 19, 2026
1c44759
feat: 매니저 채팅방 초기 메세지 로드기능 구현
codebidoof Jul 19, 2026
3b12a95
refactor: 채팅방 이동 시 roomId만 전달하도록 수정
codebidoof Jul 19, 2026
dfa2f3a
Merge branch 'develop' into feature/26-chatroom-ui
codebidoof Jul 19, 2026
cb465c0
✨ feat(chatting): 매니저 채팅방 진입 네비게이션 구현 및 UI 세부 조정
codebidoof Jul 19, 2026
e5b7e24
refactor: 매니저 채팅방 하단 레이아웃 구성 및 스타일 수정
codebidoof Jul 19, 2026
b2920d0
feat: 전화 일정 안내 기능 유스케이스 추가 및 매니저 첫 메시지 수정
codebidoof Jul 19, 2026
bd4d029
feat: 매니저 채팅 각 유스케이스들 구현
codebidoof Jul 19, 2026
0cf32b4
chore: intent, state, sideeffect 패키지 신설 후 패키지 구조 정리
codebidoof Jul 19, 2026
5d5641b
refactor: intent 패키지 경로 대소문자 수정 및 매니저 채팅 뷰모델 로직 구현
codebidoof Jul 19, 2026
2544d67
feat: 매니저 채팅방 Intent 처리 및 메시지 타입별 UI 구현
codebidoof Jul 19, 2026
10beb9e
✨ feat(ui): 하단 오버레이 높이에 따른 채팅 목록 하단 패딩 동적 적용
codebidoof Jul 19, 2026
e6f562b
feat: 매니저 채팅 기능 구현 완료
codebidoof Jul 19, 2026
5ddb2a6
refactor: 매니저 채팅 UI 컴포넌트 분리 및 모델 구조 개선
codebidoof Jul 20, 2026
2a3bd2f
chore: 미사용 임포트 제거
codebidoof Jul 20, 2026
2012b78
refactor: ManagerChatRoomViewModel Intent 처리 로직 개선
codebidoof Jul 20, 2026
b057d4c
chore: 채팅 컴포넌트 문서화 및 프리뷰 추가
codebidoof Jul 20, 2026
7dea144
feat: 채팅 화면 날짜 구분선 기능 추가 및 모델 구조 개선
codebidoof Jul 20, 2026
d1dcd35
refactor: 사용자 메시지 패딩 추가 및 코드 가독성 개선
codebidoof Jul 20, 2026
c74ffa7
refactor: 매니저 채팅방 클릭 처리 구조 리팩터링
codebidoof Jul 20, 2026
f09a309
fix: 채팅 말풍선 최대 너비 제한 설정
codebidoof Jul 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .idea/.gitignore

This file was deleted.

6 changes: 0 additions & 6 deletions .idea/AndroidProjectSystem.xml

This file was deleted.

20 changes: 0 additions & 20 deletions .idea/claudeCodeTabState.xml

This file was deleted.

8 changes: 0 additions & 8 deletions .idea/compiler.xml

This file was deleted.

18 changes: 0 additions & 18 deletions .idea/deploymentTargetSelector.xml

This file was deleted.

13 changes: 0 additions & 13 deletions .idea/deviceManager.xml

This file was deleted.

14 changes: 0 additions & 14 deletions .idea/discord.xml

This file was deleted.

62 changes: 0 additions & 62 deletions .idea/gradle.xml

This file was deleted.

61 changes: 0 additions & 61 deletions .idea/inspectionProfiles/Project_Default.xml

This file was deleted.

7 changes: 0 additions & 7 deletions .idea/kotlinc.xml

This file was deleted.

8 changes: 0 additions & 8 deletions .idea/markdown.xml

This file was deleted.

23 changes: 0 additions & 23 deletions .idea/misc.xml

This file was deleted.

11 changes: 0 additions & 11 deletions .idea/planningMode.xml

This file was deleted.

17 changes: 0 additions & 17 deletions .idea/runConfigurations.xml

This file was deleted.

6 changes: 0 additions & 6 deletions .idea/vcs.xml

This file was deleted.

10 changes: 7 additions & 3 deletions app/src/main/java/kr/co/call/callfromai/AppScreen.kt
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ import androidx.navigation3.ui.NavDisplay
import kr.co.call.api.ChatRoomNavKey
import kr.co.call.api.ChattingNavKey
import kr.co.call.api.HomeNavKey
import kr.co.call.api.ManagerChatRoomNayKey
import kr.co.call.api.MyPageNavKey
import kr.co.call.callfromai.ui.MainBottomBar
import kr.co.call.callfromai.ui.MainTab
Expand Down Expand Up @@ -58,7 +59,7 @@ fun AppScreen(modifier: Modifier = Modifier) {
is HomeNavKey,
is ChattingNavKey,
is MyPageNavKey -> true

is ManagerChatRoomNayKey -> false
else -> false
}

Expand Down Expand Up @@ -104,8 +105,11 @@ fun AppScreen(modifier: Modifier = Modifier) {
onboardingEntry()
homeEntry()
chattingEntry(
navigateToChatRoom = { roomId, name ->
appNavigator.navigate(ChatRoomNavKey(roomId = roomId, name = name))
navigateToChatRoom = { roomId ->
appNavigator.navigate(ChatRoomNavKey(roomId = roomId))
},
navigateToManagerChatRoom = {
appNavigator.navigate(ManagerChatRoomNayKey)
},
onBack = {
appNavigator.popBackStack()
Expand Down
39 changes: 39 additions & 0 deletions core/data/src/main/java/kr/co/call/data/di/UseCaseModule.kt
Original file line number Diff line number Diff line change
@@ -1,10 +1,49 @@
package kr.co.call.data.di

import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import kr.co.call.domain.usecase.chatting.FirstManagerChatUseCase
import kr.co.call.domain.usecase.chatting.WantToContactManagerUseCase
import kr.co.call.domain.usecase.chatting.WantToGetCallScheduleUseCase
import kr.co.call.domain.usecase.chatting.WantToUpdatePartnerInfoUseCase
import kr.co.call.domain.usecase.chatting.WantToUpdateRecordUseCase
import javax.inject.Singleton

@Module
@InstallIn(SingletonComponent::class)
object UseCaseModule {

// ======== 매니저 채팅 관련 =========
@Provides
@Singleton
fun provideFirstManagerChatUseCase(): FirstManagerChatUseCase {
return FirstManagerChatUseCase()
}

@Provides
@Singleton
fun provideWantToContactManagerUseCase(): WantToContactManagerUseCase {
return WantToContactManagerUseCase()
}

@Provides
@Singleton
fun provideWantToGetCallScheduleUseCase(): WantToGetCallScheduleUseCase {
return WantToGetCallScheduleUseCase()
}

@Provides
@Singleton
fun provideWantToUpdatePartnerInfoUseCase(): WantToUpdatePartnerInfoUseCase {
return WantToUpdatePartnerInfoUseCase()
}

@Provides
@Singleton
fun provideWantToUpdateRecordUseCase(): WantToUpdateRecordUseCase {
return WantToUpdateRecordUseCase()
}
Comment on lines +19 to +47

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🔴 Critical | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

rg -nP 'class\s+(FirstManagerChatUseCase|WantToContactManagerUseCase|WantToGetCallScheduleUseCase|WantToUpdatePartnerInfoUseCase|WantToUpdateRecordUseCase)\s+@Inject\s+constructor' \
  core/domain/src/main/java/kr/co/call/domain/usecase/chatting

rg -nP 'fun\s+provide(FirstManagerChatUseCase|WantToContactManagerUseCase|WantToGetCallScheduleUseCase|WantToUpdatePartnerInfoUseCase|WantToUpdateRecordUseCase)\s*\(' \
  core/data/src/main/java/kr/co/call/data/di/UseCaseModule.kt

Repository: call-from-ai/CallFromAi_Android

Length of output: 1321


core/data/src/main/java/kr/co/call/data/di/UseCaseModule.kt의 중복 바인딩을 제거하세요.
FirstManagerChatUseCase, WantToContactManagerUseCase, WantToGetCallScheduleUseCase, WantToUpdatePartnerInfoUseCase, WantToUpdateRecordUseCase 는 모두 @Inject constructor가 있으므로, 같은 타입을 @Provides로 다시 등록하면 Dagger/Hilt에서 컴파일이 실패합니다. 이 provider들은 삭제하고 생성자 주입만 사용하세요.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@core/data/src/main/java/kr/co/call/data/di/UseCaseModule.kt` around lines 19
- 47, Remove the provider methods provideFirstManagerChatUseCase,
provideWantToContactManagerUseCase, provideWantToGetCallScheduleUseCase,
provideWantToUpdatePartnerInfoUseCase, and provideWantToUpdateRecordUseCase from
UseCaseModule, leaving these `@Inject` constructor types to be provided through
constructor injection only.


}
Loading