summaryrefslogtreecommitdiffstats
path: root/catalog-ui/src/app/ng2/components
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-ui/src/app/ng2/components')
-rw-r--r--catalog-ui/src/app/ng2/components/ui/plugin/plugin-frame.component.ts19
1 files changed, 12 insertions, 7 deletions
diff --git a/catalog-ui/src/app/ng2/components/ui/plugin/plugin-frame.component.ts b/catalog-ui/src/app/ng2/components/ui/plugin/plugin-frame.component.ts
index 83d302b2a8..cd92cca2f7 100644
--- a/catalog-ui/src/app/ng2/components/ui/plugin/plugin-frame.component.ts
+++ b/catalog-ui/src/app/ng2/components/ui/plugin/plugin-frame.component.ts
@@ -58,15 +58,20 @@ export class PluginFrameComponent implements OnInit {
// before moving to a new state
this.$scope.$on('$stateChangeStart', (event, toState, toParams, fromState, fromParams) => {
if ((fromState.name !== toState.name) || (fromState.name === toState.name) && (toParams.path !== fromParams.path)) {
- if (!this.isClosed) {
- event.preventDefault();
+ if(this.eventBusService.NoWindowOutEvents.indexOf(this.eventBusService.lastEventNotified) == -1) {
+ if (!this.isClosed) {
+ event.preventDefault();
- this.eventBusService.notify("WINDOW_OUT").subscribe(() => {
- this.isClosed = true;
- this.eventBusService.unregister(this.plugin.pluginId);
+ this.eventBusService.notify("WINDOW_OUT").subscribe(() => {
+ this.isClosed = true;
+ this.eventBusService.unregister(this.plugin.pluginId);
- this.$state.go(toState.name, toParams);
- });
+ this.$state.go(toState.name, toParams);
+ });
+ }
+ }
+ else {
+ this.eventBusService.unregister(this.plugin.pluginId);
}
}
});