diff options
| author | bobzel <zzzman@gmail.com> | 2024-09-11 10:49:09 -0400 |
|---|---|---|
| committer | bobzel <zzzman@gmail.com> | 2024-09-11 10:49:09 -0400 |
| commit | 34e2b4d4c098e08d6cfe7d48c3a4b27fcda091b3 (patch) | |
| tree | 7a2eb47266d9a2ccee81dcb39b98564cbc94d172 /src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx | |
| parent | 7f4d53ce9f8cf3932b627ab063855e3323cc3dc2 (diff) | |
| parent | d3817d1c03b68ab2c69ab5ccfb5e8d6943df8f25 (diff) | |
merged with master
Diffstat (limited to 'src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx')
| -rw-r--r-- | src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx b/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx index 4b4a07757..9aac724cc 100644 --- a/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx +++ b/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx @@ -1876,24 +1876,28 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection Object.values(this._disposers).forEach(disposer => disposer?.()); } - updateIcon = (usePanelDimensions?: boolean) => - UpdateIcon( - this.layoutDoc[Id] + '_icon_' + new Date().getTime(), - this.DocumentView?.().ContentDiv!, - usePanelDimensions ? this._props.PanelWidth() : NumCast(this.layoutDoc._width), - usePanelDimensions ? this._props.PanelHeight() : NumCast(this.layoutDoc._height), - this._props.PanelWidth(), - this._props.PanelHeight(), - 0, - 1, - false, - '', - (iconFile, nativeWidth, nativeHeight) => { - this.dataDoc.icon = new ImageField(iconFile); - this.dataDoc.icon_nativeWidth = nativeWidth; - this.dataDoc.icon_nativeHeight = nativeHeight; - } - ); + updateIcon = (usePanelDimensions?: boolean) => { + const contentDiv = this.DocumentView?.().ContentDiv; + return !contentDiv + ? new Promise<void>(res => res()) + : UpdateIcon( + this.layoutDoc[Id] + '_icon_' + new Date().getTime(), + contentDiv, + usePanelDimensions ? this._props.PanelWidth() : NumCast(this.layoutDoc._width), + usePanelDimensions ? this._props.PanelHeight() : NumCast(this.layoutDoc._height), + this._props.PanelWidth(), + this._props.PanelHeight(), + 0, + 1, + false, + '', + (iconFile, nativeWidth, nativeHeight) => { + this.dataDoc.icon = new ImageField(iconFile); + this.dataDoc.icon_nativeWidth = nativeWidth; + this.dataDoc.icon_nativeHeight = nativeHeight; + } + ); + }; @action onCursorMove = (e: React.PointerEvent) => { |
