|
|
|
|
@ -1173,6 +1173,19 @@ class App extends React.Component<AppProps, AppState> {
@@ -1173,6 +1173,19 @@ class App extends React.Component<AppProps, AppState> {
|
|
|
|
|
pendingImageElementId: this.state.pendingImageElementId, |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
const shouldBlockPointerEvents = |
|
|
|
|
!( |
|
|
|
|
this.state.editingElement && isLinearElement(this.state.editingElement) |
|
|
|
|
) && |
|
|
|
|
(this.state.selectionElement || |
|
|
|
|
this.state.draggingElement || |
|
|
|
|
this.state.resizingElement || |
|
|
|
|
(this.state.activeTool.type === "laser" && |
|
|
|
|
// technically we can just test on this once we make it more safe
|
|
|
|
|
this.state.cursorButton === "down") || |
|
|
|
|
(this.state.editingElement && |
|
|
|
|
!isTextElement(this.state.editingElement))); |
|
|
|
|
|
|
|
|
|
return ( |
|
|
|
|
<div |
|
|
|
|
className={clsx("excalidraw excalidraw-container", { |
|
|
|
|
@ -1180,17 +1193,9 @@ class App extends React.Component<AppProps, AppState> {
@@ -1180,17 +1193,9 @@ class App extends React.Component<AppProps, AppState> {
|
|
|
|
|
"excalidraw--mobile": this.device.editor.isMobile, |
|
|
|
|
})} |
|
|
|
|
style={{ |
|
|
|
|
["--ui-pointerEvents" as any]: |
|
|
|
|
this.state.selectionElement || |
|
|
|
|
this.state.draggingElement || |
|
|
|
|
this.state.resizingElement || |
|
|
|
|
(this.state.activeTool.type === "laser" && |
|
|
|
|
// technically we can just test on this once we make it more safe
|
|
|
|
|
this.state.cursorButton === "down") || |
|
|
|
|
(this.state.editingElement && |
|
|
|
|
!isTextElement(this.state.editingElement)) |
|
|
|
|
? POINTER_EVENTS.disabled |
|
|
|
|
: POINTER_EVENTS.enabled, |
|
|
|
|
["--ui-pointerEvents" as any]: shouldBlockPointerEvents |
|
|
|
|
? POINTER_EVENTS.disabled |
|
|
|
|
: POINTER_EVENTS.enabled, |
|
|
|
|
}} |
|
|
|
|
ref={this.excalidrawContainerRef} |
|
|
|
|
onDrop={this.handleAppOnDrop} |
|
|
|
|
|