[251118] fix: DetailPanel노출 시 modal 비디오 제거

🕐 커밋 시간: 2025. 11. 18. 12:02:18

📊 변경 통계:
  • 총 파일: 6개
  • 추가: +82줄
  • 삭제: -4줄

📝 수정된 파일:
  ~ com.twin.app.shoptime/src/App/App.js
  ~ com.twin.app.shoptime/src/actions/panelActions.js
  ~ com.twin.app.shoptime/src/actions/playActions.js
  ~ com.twin.app.shoptime/src/views/DetailPanel/DetailPanel.jsx
  ~ com.twin.app.shoptime/src/views/HomePanel/HomeBanner/RandomUnit.jsx
  ~ com.twin.app.shoptime/src/views/HomePanel/HomePanel.jsx

🔧 주요 변경 내용:
  • 핵심 비즈니스 로직 개선
  • 소규모 기능 개선
  • 모듈 구조 개선
This commit is contained in:
2025-11-18 12:02:19 +09:00
parent 4778805dbf
commit 187043d9e7
6 changed files with 82 additions and 4 deletions

View File

@@ -244,7 +244,7 @@ export const startVideoPlayerNew =
};
export const finishVideoPreview = () => (dispatch, getState) => {
console.log('@@@@@@@@@@@@@@@@@-finishVideoPreview');
console.log('###-finishVideoPreview');
const panels = getState().panels.panels;
const topPanel = panels[panels.length - 1];
if (topPanel && topPanel.name === panel_names.PLAYER_PANEL && topPanel.panelInfo.modal) {
@@ -258,7 +258,7 @@ export const finishVideoPreview = () => (dispatch, getState) => {
export const finishModalVideoForce = () => (dispatch, getState) => {
const panels = getState().panels.panels;
console.log('###-finishModalVideoForce');
// modal PlayerPanel이 존재하는지 확인 (스택 어디에 있든)
const hasModalPlayerPanel = panels.some(
(panel) => panel.name === panel_names.PLAYER_PANEL && panel.panelInfo?.modal
@@ -277,7 +277,7 @@ export const finishModalVideoForce = () => (dispatch, getState) => {
// 모든 PlayerPanel을 강제 제거 (modal과 fullscreen 모두)
export const finishAllVideoForce = () => (dispatch, getState) => {
const panels = getState().panels.panels;
console.log('###-finishAllVideoForce');
// 모든 PlayerPanel이 존재하는지 확인 (스택 어디에 있든)
const hasPlayerPanel = panels.some((panel) => panel.name === panel_names.PLAYER_PANEL);
@@ -294,6 +294,7 @@ export const finishAllVideoForce = () => (dispatch, getState) => {
// 모달 비디오를 일시정지 (패널은 유지)
export const pauseModalVideo = () => (dispatch, getState) => {
const panels = getState().panels.panels;
console.log('###-pauseModalVideo');
// modal PlayerPanel 찾기
const modalPlayerPanel = panels.find(
@@ -317,7 +318,7 @@ export const pauseModalVideo = () => (dispatch, getState) => {
// 모달 비디오를 재생 (일시정지 해제)
export const resumeModalVideo = () => (dispatch, getState) => {
const panels = getState().panels.panels;
// modal PlayerPanel 찾기
const modalPlayerPanel = panels.find(
(panel) => panel.name === panel_names.PLAYER_PANEL && panel.panelInfo?.modal