diff --git a/blocksuite/affine/blocks/surface-ref/src/surface-ref-block.ts b/blocksuite/affine/blocks/surface-ref/src/surface-ref-block.ts index 4556971f78..2bb47b7ac5 100644 --- a/blocksuite/affine/blocks/surface-ref/src/surface-ref-block.ts +++ b/blocksuite/affine/blocks/surface-ref/src/surface-ref-block.ts @@ -1,4 +1,4 @@ -import { type FrameBlockComponent } from '@blocksuite/affine-block-frame'; +import { FrameBlockComponent } from '@blocksuite/affine-block-frame'; import { EdgelessCRUDIdentifier, getSurfaceBlock, @@ -24,12 +24,7 @@ import { unsafeCSSVarV2 } from '@blocksuite/affine-shared/theme'; import { requestConnectedFrame } from '@blocksuite/affine-shared/utils'; import { DisposableGroup } from '@blocksuite/global/disposable'; import { BlockSuiteError, ErrorCode } from '@blocksuite/global/exceptions'; -import { - Bound, - deserializeXYWH, - type SerializedXYWH, -} from '@blocksuite/global/gfx'; -import { assertType } from '@blocksuite/global/utils'; +import { Bound, type SerializedXYWH } from '@blocksuite/global/gfx'; import { BlockComponent, BlockSelection, @@ -127,6 +122,7 @@ export class SurfaceRefBlockComponent extends BlockComponent(null); private get _shouldRender() { @@ -263,6 +259,8 @@ export class SurfaceRefBlockComponent extends BlockComponent { if (!this._referenceXYWH$.value) return; const previewEditorHost = this.previewEditor; @@ -270,14 +268,12 @@ export class SurfaceRefBlockComponent extends BlockComponent { referenceXYWH$.value = xywh; }) ); - const subscription = this.std.view.viewUpdated.subscribe( - ({ id, type, method, view }) => { - if ( - id === referenceElement.id && - type === 'block' && - method === 'add' - ) { - assertType(view); - view.showBorder = false; - subscription.unsubscribe(); - } - } - ); - _disposable.add(subscription); } else if (referenceElement instanceof GfxPrimitiveElementModel) { _disposable.add( surface.elementUpdated.subscribe(({ id, oldValues }) => { @@ -338,6 +321,21 @@ export class SurfaceRefBlockComponent extends BlockComponent { + if ( + id === referenceElement.id && + type === 'block' && + method === 'add' && + view instanceof FrameBlockComponent + ) { + view.showBorder = false; + subscription.unsubscribe(); + } + } + ); + _disposable.add(subscription); } override unmounted() { @@ -371,15 +369,17 @@ export class SurfaceRefBlockComponent extends BlockComponent
${guard(this._previewDoc, () => { @@ -424,9 +424,9 @@ export class SurfaceRefBlockComponent extends BlockComponent` - : this._renderRefContent(_referencedModel); + : this._renderRefContent(); const edgelessTheme = this.std.get(ThemeProvider).edgeless$.value; return html` @@ -471,7 +471,7 @@ export class SurfaceRefBlockComponent extends BlockComponent