돋보기 화면창 수정
This commit is contained in:
@@ -54,6 +54,18 @@ function nearestStepIndex(steps: number[], cur: number): number {
|
||||
return best;
|
||||
}
|
||||
|
||||
/** LWC chart-container + 래퍼 오버레이(매매 시그널 라벨·드로잉) 캔버스 — DOM 순서 유지 */
|
||||
function collectMagnifierChartLayers(
|
||||
container: HTMLElement,
|
||||
wrapper: HTMLElement,
|
||||
): HTMLCanvasElement[] {
|
||||
const containerLayers = Array.from(container.querySelectorAll<HTMLCanvasElement>('canvas'));
|
||||
const containerSet = new Set(containerLayers);
|
||||
const overlayLayers = Array.from(wrapper.querySelectorAll<HTMLCanvasElement>('canvas'))
|
||||
.filter(c => !containerSet.has(c) && !c.classList.contains('chart-magnifier-canvas'));
|
||||
return [...containerLayers, ...overlayLayers];
|
||||
}
|
||||
|
||||
const ChartMagnifier: React.FC<ChartMagnifierProps> = ({
|
||||
containerRef, wrapperRef, enabled, onClose,
|
||||
}) => {
|
||||
@@ -126,8 +138,8 @@ const ChartMagnifier: React.FC<ChartMagnifierProps> = ({
|
||||
const ssrcL = srcL;
|
||||
const ssrcT = srcT;
|
||||
|
||||
// LWC 캔버스 레이어 순서대로 복사
|
||||
const layers = Array.from(container.querySelectorAll<HTMLCanvasElement>('canvas'));
|
||||
// LWC 캔버스 + 매매 시그널 라벨·드로잉 오버레이 (tv-chart-wrap 자식) 순서대로 복사
|
||||
const layers = collectMagnifierChartLayers(container, wrapper);
|
||||
for (const lc of layers) {
|
||||
const cRect = lc.getBoundingClientRect();
|
||||
const csX = (ssrcL - cRect.left) * dpr;
|
||||
|
||||
Reference in New Issue
Block a user