Vojtech Szocs has uploaded a new change for review. Change subject: webadmin,userportal: Fix popups after engine restart & relogin ......................................................................
webadmin,userportal: Fix popups after engine restart & relogin This patch ensures that all model-bound popups can be shown again after engine restart (causing automatic user logout in UI) and subsequent re-login, without reloading WebAdmin page. Change-Id: Icd934c9ec6129b0b45224ddb08a5c41b070a60bc Bug-Url: https://bugzilla.redhat.com/968362 Signed-off-by: Vojtech Szocs <vsz...@redhat.com> --- M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelBoundPopupHandler.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java 2 files changed, 20 insertions(+), 4 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/29/18729/1 diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelBoundPopupHandler.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelBoundPopupHandler.java index 5be640a..3075d0c 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelBoundPopupHandler.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelBoundPopupHandler.java @@ -50,6 +50,7 @@ * Adds a property change listener to the given source model that handles its dialog models. */ public void addDialogModelListener(final M source) { + hideAndClearAllPopups(); source.getPropertyChangedEvent().addListener(new IEventListener() { @Override public void eventRaised(Event ev, Object sender, EventArgs args) { @@ -179,4 +180,16 @@ } } + /** + * Hides all model-bound popups and clears their references. + */ + void hideAndClearAllPopups() { + if (confirmWindowPopup != null) { + hideAndClearPopup(confirmWindowPopup, true); + } + if (windowPopup != null) { + hideAndClearPopup(windowPopup, false); + } + } + } diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java index 8981301..d2bef8b 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java @@ -140,10 +140,13 @@ } void forceRefresh(M model) { - if (model instanceof SearchableListModel && !model.getLastExecutedCommand().getIsCancel()) { - // Refresh the grid using ForceRefresh command - SearchableListModel searchableList = (SearchableListModel) model; - searchableList.getForceRefreshCommand().execute(); + if (model instanceof SearchableListModel) { + UICommand lastExecutedCommand = model.getLastExecutedCommand(); + if (lastExecutedCommand != null && !lastExecutedCommand.getIsCancel()) { + // Refresh the grid using ForceRefresh command + SearchableListModel searchableList = (SearchableListModel) model; + searchableList.getForceRefreshCommand().execute(); + } } } -- To view, visit http://gerrit.ovirt.org/18729 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Icd934c9ec6129b0b45224ddb08a5c41b070a60bc Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Vojtech Szocs <vsz...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches