aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx21
1 files changed, 11 insertions, 10 deletions
diff --git a/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx b/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx
index 947bd8aaa..039407e77 100644
--- a/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx
+++ b/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx
@@ -128,7 +128,7 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
};
}
@computed get fitContentsToBox() {
- return (this.props.fitContentsToBox?.() || this.Document._fitContentsToBox) && !this.isAnnotationOverlay;
+ return (this.props.fitContentsToBox?.() || this.Document._fitContentsToBox || this.Document.isGroup) && !this.isAnnotationOverlay;
}
@computed get contentBounds() {
const cb = Cast(this.rootDoc.contentBounds, listSpec('number'));
@@ -1526,11 +1526,6 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
setTimeout(
action(() => {
this._firstRender = false;
- this._disposers.layoutComputation = reaction(
- () => this.doLayoutComputation,
- elements => (this._layoutElements = elements || []),
- { fireImmediately: true, name: 'doLayout' }
- );
this._marqueeRef.current?.addEventListener('dashDragAutoScroll', this.onDragAutoScroll as any);
@@ -1547,10 +1542,10 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
const c = [NumCast(this.layoutDoc.x) + this.layoutDoc[WidthSym]() / 2, NumCast(this.layoutDoc.y) + this.layoutDoc[HeightSym]() / 2];
const p = [NumCast(this.layoutDoc._panX), NumCast(this.layoutDoc._panY)];
const pbounds = {
- x: (cbounds.x - p[0]) * this.zoomScaling() + c[0],
- y: (cbounds.y - p[1]) * this.zoomScaling() + c[1],
- r: (cbounds.r - p[0]) * this.zoomScaling() + c[0],
- b: (cbounds.b - p[1]) * this.zoomScaling() + c[1],
+ x: cbounds.x - p[0] + c[0],
+ y: cbounds.y - p[1] + c[1],
+ r: cbounds.r - p[0] + c[0],
+ b: cbounds.b - p[1] + c[1],
};
this.layoutDoc._width = pbounds.r - pbounds.x;
this.layoutDoc._height = pbounds.b - pbounds.y;
@@ -1562,6 +1557,12 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
},
{ fireImmediately: true }
);
+
+ this._disposers.layoutComputation = reaction(
+ () => this.doLayoutComputation,
+ elements => (this._layoutElements = elements || []),
+ { fireImmediately: true, name: 'doLayout' }
+ );
})
);
}