fix(engine-render): respect disabled move boundary on resize (#7282)

This commit is contained in:
Univer
2026-07-17 18:18:06 +08:00
committed by GitHub
parent 9fc0a25b9a
commit e32969cabf
2 changed files with 6 additions and 0 deletions
@@ -532,6 +532,9 @@ describe('engine scene viewport extra', () => {
};
(transformer as any)._recoverySizeBoundary([recoveryTarget], 0, 0, 100, 80);
expect(recoveryTarget.transformByState).toHaveBeenCalled();
recoveryTarget.transformByState.mockClear();
(freeMoveTransformer as any)._recoverySizeBoundary([recoveryTarget], 0, 0, 100, 80);
expect(recoveryTarget.transformByState).not.toHaveBeenCalled();
expect((transformer as any)._getRotateAnchorCursor('__SpreadsheetTransformerResizeLM__')).toBe(CURSOR_TYPE.WEST_RESIZE);
expect((transformer as any)._getRotateAnchorCursor('__SpreadsheetTransformerResizeCB__')).toBe(CURSOR_TYPE.SOUTH_RESIZE);
@@ -1186,6 +1186,9 @@ export class Transformer extends Disposable implements ITransformerConfig {
private _recoverySizeBoundary(selectedObjects: BaseObject[], ancestorLeft: number, ancestorTop: number, topSceneWidth: number, topSceneHeight: number) {
for (let i = 0; i < selectedObjects.length; i++) {
const moveObject = selectedObjects[i];
if (this._getConfig(moveObject).moveBoundaryEnabled === false) {
continue;
}
const { left, top, width, height } = moveObject;
const newTransform: ITransformState = {};