aboutsummaryrefslogtreecommitdiff
path: root/src/views
diff options
context:
space:
mode:
Diffstat (limited to 'src/views')
-rw-r--r--src/views/freeformcanvas/CollectionFreeFormView.tsx4
-rw-r--r--src/views/freeformcanvas/FreeFormCanvas.tsx4
-rw-r--r--src/views/nodes/DocumentView.tsx10
3 files changed, 16 insertions, 2 deletions
diff --git a/src/views/freeformcanvas/CollectionFreeFormView.tsx b/src/views/freeformcanvas/CollectionFreeFormView.tsx
index 33b7ed1ad..9a4f5ffa1 100644
--- a/src/views/freeformcanvas/CollectionFreeFormView.tsx
+++ b/src/views/freeformcanvas/CollectionFreeFormView.tsx
@@ -27,6 +27,10 @@ export class CollectionFreeFormView extends React.Component<IProps> {
@action
onPointerDown = (e: React.PointerEvent): void => {
+ if (!this.props.isSelected) {
+ return;
+ }
+
e.stopPropagation();
if (e.button === 2) {
this._isPointerDown = true;
diff --git a/src/views/freeformcanvas/FreeFormCanvas.tsx b/src/views/freeformcanvas/FreeFormCanvas.tsx
index 9ef5ab8f7..de5e88fa1 100644
--- a/src/views/freeformcanvas/FreeFormCanvas.tsx
+++ b/src/views/freeformcanvas/FreeFormCanvas.tsx
@@ -10,6 +10,7 @@ import {DocumentView} from "../nodes/DocumentView";
import {TextField} from "../../fields/TextField";
import {ListField} from "../../fields/ListField";
import {Field} from "../../fields/Field";
+import { SelectionManager } from "../../util/SelectionManager";
interface IProps {
store: NodeCollectionStore;
@@ -34,6 +35,8 @@ export class FreeFormCanvas extends React.Component<IProps> {
document.removeEventListener("pointerup", this.onPointerUp);
document.addEventListener("pointerup", this.onPointerUp);
}
+
+ SelectionManager.DeselectAll()
}
@action
@@ -57,6 +60,7 @@ export class FreeFormCanvas extends React.Component<IProps> {
if (!this._isPointerDown) {
return;
}
+
this.props.store.X += e.movementX;
this.props.store.Y += e.movementY;
}
diff --git a/src/views/nodes/DocumentView.tsx b/src/views/nodes/DocumentView.tsx
index 1f5ce7f22..d6f4b296d 100644
--- a/src/views/nodes/DocumentView.tsx
+++ b/src/views/nodes/DocumentView.tsx
@@ -19,6 +19,12 @@ interface IProps {
@observer
export class DocumentView extends React.Component<IProps> {
+ private _mainCont = React.createRef<HTMLDivElement>();
+
+ get mainCont(): React.RefObject<HTMLDivElement> {
+ return this._mainCont
+ }
+
@computed
get x(): number {
return this.props.dvm.Doc.GetFieldValue(KeyStore.X, NumberField, Number(0));
@@ -110,7 +116,7 @@ export class DocumentView extends React.Component<IProps> {
let doc = this.props.dvm.Doc;
let bindings: any = {
doc: doc,
- isSelected: this.selected
+ isSelected: this.selected !== "0px"
};
for (const key of this.layoutKeys) {
bindings[key.Name + "Key"] = key;
@@ -123,7 +129,7 @@ export class DocumentView extends React.Component<IProps> {
}
return (
- <div className="node" style={{
+ <div className="node" ref={this._mainCont} style={{
transform: this.transform,
width: this.width,
height: this.height,