Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 재생화면 VIP 싸이클 적용 #146

Closed
wants to merge 37 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
8dc9499
:sparkles: Toast class 구현
chopmozzi Nov 28, 2023
30e14f4
:recycle: 필요없는 코드 지우기
chopmozzi Nov 28, 2023
4a83716
:recycle: final 붙이기
chopmozzi Nov 28, 2023
adc5036
:sparkles: Playback Configurator 생성 및 적용
chopmozzi Nov 28, 2023
4a4f19d
:sparkles: VideoDTO 생성
chopmozzi Nov 28, 2023
82c1110
:recycle: video dto 수정
chopmozzi Nov 28, 2023
ac3b778
:sparkles: Playback ViewModel 생성
chopmozzi Nov 28, 2023
c4c49a7
:recycle: 재생화면 VIP Cycle 적용(홈에서)
chopmozzi Nov 28, 2023
057b567
:bug: 설정 탭 푸시 시 투명 배경 현상 수정
loinsir Nov 29, 2023
381fde8
:bug: 네비게이션 컨트롤러 중첩 버그 수정
loinsir Nov 29, 2023
4365dec
:sparkles: 초기 재생화면 재생 설정
chopmozzi Nov 29, 2023
bbe94b0
:sparkles: 재생화면 홈화면 VIP 연결
chopmozzi Nov 29, 2023
f422902
:bug: 실 기기에서 소리가 나지 않던 문제 수정
chopmozzi Nov 29, 2023
4989047
:sparkles: 재생화면 초기화면 세팅(홈에서 연결됐을 때)
chopmozzi Nov 29, 2023
1848ec7
:sparkles: 지도와 재생화면 연결
chopmozzi Nov 29, 2023
e3c2ac3
:sparkles: 무한 스크롤 VIP 연결
chopmozzi Nov 29, 2023
8475dbd
:recycle: 코드 정리
chopmozzi Nov 29, 2023
212f3c6
:sparkles: 다른 뷰로 이동 시 재생 바 사라지게 구현
chopmozzi Nov 29, 2023
3296d74
Merge remote-tracking branch 'refs/remotes/origin/iOS/dev'
chopmozzi Nov 29, 2023
109abbf
:sparkles: TagPlayList Scene UI 구현
loinsir Nov 29, 2023
9dbcdea
:recycle: Toast 수정
chopmozzi Nov 29, 2023
310fff5
:wrench: 테스트 코드 삭제
chopmozzi Nov 29, 2023
ce2a20d
:heavy_plus_sign: 태그 검색 더미 데이터 추가
loinsir Nov 29, 2023
980f5f5
:wrench: mock json 필드 수정
loinsir Nov 29, 2023
8316494
Merge pull request #143 from boostcampwm2023/iOS/bug#142
anyukyung Nov 29, 2023
50d6ce7
:heavy_plus_sign: 게시글 DTO 추가
loinsir Nov 29, 2023
cad4185
:sparkles: 태그 검색 뷰 VIP 사이클 구현
loinsir Nov 29, 2023
4001422
:sparkles: Sequence 비동기 extension 메서드 추가
loinsir Nov 30, 2023
e549eb8
:bug: provider data 리턴 타입 디코드 수정
loinsir Nov 30, 2023
3690025
:bento: 샘플 이미지 애셋 변경
loinsir Nov 30, 2023
ac24604
:recycle: 리뷰사항 반영
chopmozzi Nov 30, 2023
2aee1b7
:wrench: 데이터 전달 설정
loinsir Nov 30, 2023
f270691
Merge pull request #130 from boostcampwm2023/iOS/feat#129
anyukyung Nov 30, 2023
5bc5e8e
:wrench: 리뷰 반영 navigation title 표시 로직 수정
loinsir Nov 30, 2023
8ad694e
Merge pull request #149 from boostcampwm2023/iOS/feat#145
loinsir Nov 30, 2023
4c84266
Merge remote-tracking branch 'refs/remotes/origin/iOS/feat#122'
chopmozzi Nov 30, 2023
2b9ce5d
:wrench: 모델 수정
chopmozzi Nov 30, 2023
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
Prev Previous commit
Next Next commit
✨ 다른 뷰로 이동 시 재생 바 사라지게 구현
  • Loading branch information
chopmozzi committed Nov 29, 2023

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
commit 212f3c6276dcae59168194d4dbb3dd8a3658c0a6
10 changes: 9 additions & 1 deletion iOS/Layover/Layover/Scenes/Playback/PlaybackInteractor.swift
Original file line number Diff line number Diff line change
@@ -13,6 +13,7 @@ protocol PlaybackBusinessLogic {
func moveInitialPlaybackCell()
func hidePlayerSlider()
func setInitialPlaybackCell()
func leavePlaybackView()
func playInitialPlaybackCell(with request: PlaybackModels.DisplayPlaybackVideo.Request)
func playVideo(with request: PlaybackModels.DisplayPlaybackVideo.Request)
func playTeleportVideo(with request: PlaybackModels.DisplayPlaybackVideo.Request)
@@ -45,6 +46,8 @@ final class PlaybackInteractor: PlaybackBusinessLogic, PlaybackDataStore {

var isTeleport: Bool?

// MARK: - UseCase Load Video List

func displayVideoList() {
guard let parentView: Models.ParentView else {
return
@@ -60,7 +63,6 @@ final class PlaybackInteractor: PlaybackBusinessLogic, PlaybackDataStore {
presenter?.presentVideoList(with: response)
}

// MARK: - UseCase Load Video List

func moveInitialPlaybackCell() {
let response: Models.SetInitialPlaybackCell.Response = Models.SetInitialPlaybackCell.Response(indexPathRow: index ?? 0)
@@ -142,4 +144,10 @@ final class PlaybackInteractor: PlaybackBusinessLogic, PlaybackDataStore {
}
}
}

func leavePlaybackView() {
let response: Models.DisplayPlaybackVideo.Response = Models.DisplayPlaybackVideo.Response(prevCell: prevCell, curCell: nil)
presenter?.presentLeavePlaybackView(with: response)
}

}
6 changes: 6 additions & 0 deletions iOS/Layover/Layover/Scenes/Playback/PlaybackPresenter.swift
Original file line number Diff line number Diff line change
@@ -18,6 +18,7 @@ protocol PlaybackPresentationLogic {
func presentHidePlayerSlider(with response: PlaybackModels.DisplayPlaybackVideo.Response)
func presentShowPlayerSlider(with response: PlaybackModels.DisplayPlaybackVideo.Response)
func presentTeleportCell(with response: PlaybackModels.DisplayPlaybackVideo.Response)
func presentLeavePlaybackView(with response: PlaybackModels.DisplayPlaybackVideo.Response)
}

final class PlaybackPresenter: PlaybackPresentationLogic {
@@ -76,4 +77,9 @@ final class PlaybackPresenter: PlaybackPresentationLogic {
let viewModel: Models.DisplayPlaybackVideo.ViewModel = Models.DisplayPlaybackVideo.ViewModel(indexPathRow: response.indexPathRow, prevCell: nil, curCell: nil)
viewController?.teleportPlaybackCell(viewModel: viewModel)
}

func presentLeavePlaybackView(with response: PlaybackModels.DisplayPlaybackVideo.Response) {
let viewModel: Models.DisplayPlaybackVideo.ViewModel = Models.DisplayPlaybackVideo.ViewModel(prevCell: response.prevCell, curCell: nil)
viewController?.leavePlaybackView(viewModel: viewModel)
}
}
Original file line number Diff line number Diff line change
@@ -18,6 +18,7 @@ protocol PlaybackDisplayLogic: AnyObject {
func hidePlayerSlider(viewModel: PlaybackModels.DisplayPlaybackVideo.ViewModel)
func showPlayerSlider(viewModel: PlaybackModels.DisplayPlaybackVideo.ViewModel)
func teleportPlaybackCell(viewModel: PlaybackModels.DisplayPlaybackVideo.ViewModel)
func leavePlaybackView(viewModel: PlaybackModels.DisplayPlaybackVideo.ViewModel)
}

final class PlaybackViewController: BaseViewController {
@@ -85,8 +86,7 @@ final class PlaybackViewController: BaseViewController {

override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// prevPlaybackCell?.playbackView.playerSlider.isHidden = true
// prevPlaybackCell?.playbackView.stopPlayer()
interactor?.leavePlaybackView()
}

override func viewDidLayoutSubviews() {
@@ -162,6 +162,11 @@ extension PlaybackViewController: PlaybackDisplayLogic {
let willTeleportlocation: CGFloat = CGFloat(indexPathRow) * playbackCollectionView.bounds.height
playbackCollectionView.setContentOffset(.init(x: playbackCollectionView.contentOffset.x, y: willTeleportlocation), animated: false)
}

func leavePlaybackView(viewModel: PlaybackModels.DisplayPlaybackVideo.ViewModel) {
viewModel.prevCell?.playbackView.playerSlider.isHidden = true
viewModel.prevCell?.playbackView.stopPlayer()
}
}

// MARK: - Playback Method