From c2a8712593a30de5c5785c44a08e0fd1eb7f0fce Mon Sep 17 00:00:00 2001 From: Aakansha Doshi Date: Fri, 17 Dec 2021 16:08:18 +0530 Subject: [PATCH] fix: update viewport coords correctly when editing text (#4416) --- src/components/App.tsx | 5 ++++- src/element/textWysiwyg.tsx | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/App.tsx b/src/components/App.tsx index 1d0c9e2a16..6814d273ad 100644 --- a/src/components/App.tsx +++ b/src/components/App.tsx @@ -1916,7 +1916,10 @@ class App extends React.Component { }, this.state, ); - return [viewportX, viewportY]; + return [ + viewportX - this.state.offsetLeft, + viewportY - this.state.offsetTop, + ]; }, onChange: withBatchedUpdates((text) => { updateElement(text, text, false, !element.containerId); diff --git a/src/element/textWysiwyg.tsx b/src/element/textWysiwyg.tsx index 51b9a16081..46685c8382 100644 --- a/src/element/textWysiwyg.tsx +++ b/src/element/textWysiwyg.tsx @@ -426,10 +426,10 @@ export const textWysiwyg = ({ if (isTextElement(updateElement) && updateElement.containerId) { if (editable.value) { mutateElement(updateElement, { - y, + y: y + appState.offsetTop, height: Number(editable.style.height.slice(0, -2)), width: Number(editable.style.width.slice(0, -2)), - x, + x: x + appState.offsetLeft, }); const boundTextElementId = getBoundTextElementId(container); if (!boundTextElementId || boundTextElementId !== element.id) {