diff --git a/com.twin.app.shoptime/src/actions/mediaActions.js b/com.twin.app.shoptime/src/actions/mediaActions.js index ad053994..12c135fb 100644 --- a/com.twin.app.shoptime/src/actions/mediaActions.js +++ b/com.twin.app.shoptime/src/actions/mediaActions.js @@ -237,16 +237,16 @@ export const switchMediaToModal = (modalContainerId, modalClassName) => (dispatc export const minimizeModalMedia = () => (dispatch, getState) => { const panels = getState().panels.panels; - // console.log('[Minimize] ========== Called =========='); - // console.log('[Minimize] Total panels:', panels.length); - // console.log( - // '[Minimize] All panels:', - // JSON.stringify( - // panels.map((p) => ({ name: p.name, modal: p.panelInfo?.modal })), - // null, - // 2 - // ) - // ); + console.log('[Minimize] ========== Called =========='); + console.log('[Minimize] Total panels:', panels.length); + console.log( + '[Minimize] All panels:',panels + // JSON.stringify( + // panels.map((p) => ({ name: p.name, modal: p.panelInfo?.modal })), + // null, + // 2 + // ) + ); const modalMediaPanel = panels.find( (panel) => panel.name === panel_names.MEDIA_PANEL && panel.panelInfo?.modal @@ -254,17 +254,17 @@ export const minimizeModalMedia = () => (dispatch, getState) => { // console.log('[Minimize] Found modalMediaPanel:', !!modalMediaPanel); if (modalMediaPanel) { - // console.log( - // '[Minimize] modalMediaPanel.panelInfo:', - // JSON.stringify(modalMediaPanel.panelInfo, null, 2) - // ); + console.log( + '[Minimize] modalMediaPanel.panelInfo:', + JSON.stringify(modalMediaPanel.panelInfo, null, 2) + ); // console.log('[Minimize] ✅ Minimizing modal MediaPanel (modal=false, isMinimized=true)'); dispatch( updatePanel({ name: panel_names.MEDIA_PANEL, panelInfo: { ...modalMediaPanel.panelInfo, - modal: false, // fullscreen 모드로 전환 + // modal: false, // fullscreen 모드로 전환 isMinimized: true, // modal-minimized 클래스 적용 (1px 크기) shouldShrinkTo1px: true, // shrink 플래그 추가 // modalContainerId, modalClassName 등은 복원을 위해 유지 @@ -273,7 +273,7 @@ export const minimizeModalMedia = () => (dispatch, getState) => { }) ); } else { - // console.log('[Minimize] ❌ No modal MediaPanel found - cannot minimize'); + console.log('[Minimize] ❌ No modal MediaPanel found - cannot minimize'); } }; @@ -307,11 +307,11 @@ export const restoreModalMedia = () => (dispatch, getState) => { // ) // ); - // modal=false AND isMinimized=true인 MediaPanel을 찾음 (최소화 상태) + // modal=true AND isMinimized=true인 MediaPanel을 찾음 (최소화 상태) const minimizedMediaPanel = panels.find( (panel) => panel.name === panel_names.MEDIA_PANEL && - !panel.panelInfo?.modal && + panel.panelInfo?.modal && panel.panelInfo?.isMinimized ); diff --git a/com.twin.app.shoptime/src/views/MediaPanel/MediaPanel.v3.jsx b/com.twin.app.shoptime/src/views/MediaPanel/MediaPanel.v3.jsx index 60718922..ccf5f658 100644 --- a/com.twin.app.shoptime/src/views/MediaPanel/MediaPanel.v3.jsx +++ b/com.twin.app.shoptime/src/views/MediaPanel/MediaPanel.v3.jsx @@ -2217,10 +2217,21 @@ const MediaPanel = React.forwardRef( }; }, [createLogParams, dispatch, showDetailInfo]); + // const containerClassName = classNames( + // css.videoContainer, + // panelInfo.modal && css.modal, + // // !panelInfo.modal && css.fullscreen, + // panelInfo.shouldShrinkTo1px && css.shrinkTo1px, + // // MediaPanel이 최상단 아니고, 최상단이 DetailPanel(from Player)이면 비디오 보이도록 + // !isOnTop && isTopPanelDetailFromPlayer && css['background-visible'], + // // MediaPanel이 최상단 아니고, 위 조건 아니면 1px로 숨김 + // !isOnTop && !isTopPanelDetailFromPlayer && css.background, + // !captionEnable && css.hideSubtitle + // ); + const containerClassName = classNames( css.videoContainer, panelInfo.modal && css.modal, - !panelInfo.modal && css.fullscreen, panelInfo.shouldShrinkTo1px && css.shrinkTo1px, // MediaPanel이 최상단 아니고, 최상단이 DetailPanel(from Player)이면 비디오 보이도록 !isOnTop && isTopPanelDetailFromPlayer && css['background-visible'], @@ -2278,7 +2289,7 @@ const MediaPanel = React.forwardRef( {isReadyToPlay && (