From 4e489bfb6d081099289fd789b96dd65a2a1c22d8 Mon Sep 17 00:00:00 2001 From: Jed Fox Date: Sat, 22 Feb 2020 08:37:04 -0500 Subject: [PATCH] Fix zoom being set to NaN (#807) * Fix zoom being set to NaN * recover zoom default value on restore if invalid Co-authored-by: David Luzar --- src/index.tsx | 2 +- src/scene/data.ts | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/index.tsx b/src/index.tsx index fc393d8443..58fad8d4e5 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -2185,7 +2185,7 @@ export class App extends React.Component { document.documentElement.style.cursor = hitElement ? "move" : ""; }} onPointerUp={this.removePointer} - onPointerCancel={this.removePointer} + onPointerLeave={this.removePointer} onDrop={e => { const file = e.dataTransfer.files[0]; if (file?.type === "application/json") { diff --git a/src/scene/data.ts b/src/scene/data.ts index c86d277cb6..2c037202fb 100644 --- a/src/scene/data.ts +++ b/src/scene/data.ts @@ -398,6 +398,10 @@ function restore( savedState = { ...savedState, ...calculateScrollCenter(elements) }; } + if (savedState) { + savedState.zoom = savedState.zoom || getDefaultAppState().zoom; + } + return { elements: elements, appState: savedState,