[251123] Merge: develop_si base로 develop을 merge함

This commit is contained in:
2025-11-23 18:45:09 +09:00
45 changed files with 1059 additions and 315 deletions

View File

@@ -4,6 +4,7 @@ import { useDispatch } from 'react-redux';
import Spotlight from '@enact/spotlight';
// <<<<<<< HEAD
import { updatePanel } from '../../../../actions/panelActions';
import TVirtualGridList from '../../../../components/TVirtualGridList/TVirtualGridList';
import { LOG_CONTEXT_NAME, LOG_MENU, LOG_MESSAGE_ID, panel_names } from '../../../../utils/Config';
@@ -13,6 +14,21 @@ import ListEmptyContents from '../TabContents/ListEmptyContents/ListEmptyContent
import css from './LiveChannelContents.module.less';
import cssV2 from './LiveChannelContents.v2.module.less';
import { sendLogTotalRecommend } from '../../../../actions/logActions';
// =======
// import { updatePanel } from "../../../../actions/panelActions";
// import TVirtualGridList from "../../../../components/TVirtualGridList/TVirtualGridList";
// import {
// LOG_CONTEXT_NAME,
// LOG_MENU,
// LOG_MESSAGE_ID,
// panel_names,
// } from "../../../../utils/Config";
// import { $L } from "../../../../utils/helperMethods";
// import PlayerItemCard, { TYPES } from "../../PlayerItemCard/PlayerItemCard";
// import ListEmptyContents from "../TabContents/ListEmptyContents/ListEmptyContents";
// import css from "./LiveChannelContents.module.less";
// import { sendLogTotalRecommend } from "../../../../actions/logActions";
// >>>>>>> gitlab/develop
export default function LiveChannelContents({
liveInfos,
@@ -24,13 +40,22 @@ export default function LiveChannelContents({
handleItemFocus,
tabTitle,
panelInfo,
// <<<<<<< HEAD
direction = 'vertical',
version = 1,
isFilteredByPatnr19,
}) {
const dispatch = useDispatch();
const isClickBlocked = useRef(false);
const blockTimeoutRef = useRef(null);
// =======
// isFilteredByPatnr19,
// }) {
// const dispatch = useDispatch();
// const isClickBlocked = useRef(false);
const scrollToRef = useRef(null);
// >>>>>>> gitlab/develop
const handleFocus = useCallback(
() => () => {
if (handleItemFocus) {
@@ -40,6 +65,18 @@ export default function LiveChannelContents({
[handleItemFocus]
);
// cbScrollTo 콜백으로 scrollTo 함수 받기
const handleScrollTo = useCallback((scrollToFn) => {
scrollToRef.current = scrollToFn;
}, []);
// VOD Channel로 전환될 때 스크롤을 최상단으로 이동
useEffect(() => {
if (isFilteredByPatnr19 && scrollToRef.current) {
scrollToRef.current({ index: 0, animate: false, focus: false });
}
}, [isFilteredByPatnr19]);
const renderItem = useCallback(
({ index, ...rest }) => {
const {
@@ -144,7 +181,11 @@ export default function LiveChannelContents({
startDt={strtDt}
endDt={endDt}
currentTime={currentTime}
// <<<<<<< HEAD
version={version}
// =======
// currentVideoVisible={currentVideoShowId === liveInfos[index].showId}
// >>>>>>> gitlab/develop
/>
);
},
@@ -167,6 +208,7 @@ export default function LiveChannelContents({
<div className={containerClass}>
{liveInfos && liveInfos.length > 0 ? (
<TVirtualGridList
cbScrollTo={handleScrollTo}
dataSize={liveInfos.length}
direction={direction}
renderItem={renderItem}