|
@@ -22,6 +22,7 @@ import { getBoundTextElement, getContainerElement } from "./textElement";
|
|
|
import { LinearElementEditor } from "./linearElementEditor";
|
|
|
import { Mutable } from "../utility-types";
|
|
|
import { ShapeCache } from "../scene/ShapeCache";
|
|
|
+import Scene from "../scene/Scene";
|
|
|
|
|
|
export type RectangleBox = {
|
|
|
x: number;
|
|
@@ -59,10 +60,17 @@ export class ElementBounds {
|
|
|
|
|
|
const bounds = ElementBounds.calculateBounds(element);
|
|
|
|
|
|
- ElementBounds.boundsCache.set(element, {
|
|
|
- version: element.version,
|
|
|
- bounds,
|
|
|
- });
|
|
|
+ // hack to ensure that downstream checks could retrieve element Scene
|
|
|
+ // so as to have correctly calculated bounds
|
|
|
+ // FIXME remove when we get rid of all the id:Scene / element:Scene mapping
|
|
|
+ const shouldCache = Scene.getScene(element);
|
|
|
+
|
|
|
+ if (shouldCache) {
|
|
|
+ ElementBounds.boundsCache.set(element, {
|
|
|
+ version: element.version,
|
|
|
+ bounds,
|
|
|
+ });
|
|
|
+ }
|
|
|
|
|
|
return bounds;
|
|
|
}
|