Skip to content

Commit 206fefe

Browse files
committed
fix(chart): fix css scale in parent container
1 parent 7b8228e commit 206fefe

File tree

2 files changed

+9
-5
lines changed

2 files changed

+9
-5
lines changed

frontend/src/app/components/ChartDrill/ChartDrillContextMenu.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ const ChartDrillContextMenu: FC<{}> = memo(({ children }) => {
9898
overlay={contextMenu}
9999
destroyPopupOnHide={true}
100100
trigger={['contextMenu']}
101-
getPopupContainer={triggerNode => triggerNode}
102101
>
103102
<div style={{ height: '100%' }}>{children}</div>
104103
</Dropdown>

frontend/src/app/components/ChartIFrameContainer/ChartIFrameContainer.tsx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ const ChartIFrameContainer: FC<{
3939
isShown?: boolean;
4040
drillOption?: IChartDrillOption;
4141
widgetSpecialConfig?: any;
42+
scale?: [number, number];
4243
}> = memo(props => {
4344
const iframeContainerId = `chart-iframe-root-${props.containerId}`;
4445

@@ -115,15 +116,19 @@ const ChartIFrameContainer: FC<{
115116

116117
var iframe = document.getElementById(iframeContainerId);
117118
if (iframe) {
119+
const [scaleX = 1, scaleY = 1] = props.scale || [];
118120
var boundingClientRect = iframe.getBoundingClientRect();
119121
var evt = new CustomEvent('contextmenu', {
120122
bubbles: true,
121123
cancelable: false,
122124
}) as any;
123-
evt.clientX = event.clientX + boundingClientRect.left;
124-
evt.pageX = event.clientX + boundingClientRect.left;
125-
evt.clientY = event.clientY + boundingClientRect.top;
126-
evt.pageY = event.clientY + boundingClientRect.top;
125+
evt.clientX =
126+
event.clientX * scaleX + boundingClientRect.left;
127+
evt.pageX =
128+
event.clientX * scaleX + boundingClientRect.left;
129+
evt.clientY =
130+
event.clientY * scaleY + boundingClientRect.top;
131+
evt.pageY = event.clientY * scaleY + boundingClientRect.top;
127132
iframe.dispatchEvent(evt);
128133
}
129134
}}

0 commit comments

Comments
 (0)