diff --git a/packages/core/ui/core/view/view-common.ts b/packages/core/ui/core/view/view-common.ts index ffb7bdfad..437f62213 100644 --- a/packages/core/ui/core/view/view-common.ts +++ b/packages/core/ui/core/view/view-common.ts @@ -194,12 +194,6 @@ export abstract class ViewCommon extends ViewBase implements ViewDefinition { let handled = false; - const rootLayout = global.rootLayout; - if (rootLayout != null && rootLayout.topmost() != null) { - rootLayout.closeAll(); - handled = true; - } - if (this._closeAllModalViewsInternal()) { handled = true; } diff --git a/packages/core/ui/layouts/root-layout/root-layout-common.ts b/packages/core/ui/layouts/root-layout/root-layout-common.ts index 5e3778746..7d268a45d 100644 --- a/packages/core/ui/layouts/root-layout/root-layout-common.ts +++ b/packages/core/ui/layouts/root-layout/root-layout-common.ts @@ -25,6 +25,21 @@ export class RootLayoutBase extends GridLayout { super.onLoaded(); } + public _onLivesync(context?: ModuleContext): boolean { + let handled = false; + + if (this.popupViews.length > 0) { + this.closeAll(); + handled = true; + } + + if (super._onLivesync(context)) { + handled = true; + } + + return handled; + } + // ability to add any view instance to composite views like layers open(view: View, options: RootLayoutOptions = {}): Promise { return new Promise((resolve, reject) => {