Alexander Wels has uploaded a new change for review. Change subject: webadmin: detach handlers on hide ......................................................................
webadmin: detach handlers on hide - Before this patch the change event handlers were detached when the object containing them would be detached from the DOM, this could happen many times and it would cause the handlers to be detached before we wanted them to. This patch detaches the handlers when the popup is hidden instead of detached from the DOM. Change-Id: I56de07f80cbb21fe6362d6df488defe7422cebfb Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1164744 Signed-off-by: Alexander Wels <[email protected]> --- M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AssignTagsPopupView.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/configure/RolePopupView.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/user/ManageEventsPopupView.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/editor/EntityModelCellTree.java 4 files changed, 18 insertions(+), 9 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/49/35349/1 diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AssignTagsPopupView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AssignTagsPopupView.java index f7cde85..00022ab 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AssignTagsPopupView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/AssignTagsPopupView.java @@ -70,6 +70,12 @@ } @Override + public void hide() { + super.hide(); + tree.getTreeViewModel().removeHandlers(); + } + + @Override public void edit(TagListModel object) { driver.edit(object); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/configure/RolePopupView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/configure/RolePopupView.java index 5cfa5ec..171161b 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/configure/RolePopupView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/configure/RolePopupView.java @@ -149,6 +149,12 @@ tree = new EntityModelCellTree<SelectionTreeNodeModel, SimpleSelectionTreeNodeModel>(res); } + @Override + public void hide() { + super.hide(); + tree.getTreeViewModel().removeHandlers(); + } + private void localize(ApplicationConstants constants) { nameEditor.setLabel(constants.RoleNameLabel()); descriptionEditor.setLabel(constants.RoleDescriptionLabel()); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/user/ManageEventsPopupView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/user/ManageEventsPopupView.java index 35550be..02f57e9 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/user/ManageEventsPopupView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/user/ManageEventsPopupView.java @@ -103,6 +103,12 @@ tree = new EntityModelCellTree<SelectionTreeNodeModel, SimpleSelectionTreeNodeModel>(res); } + @Override + public void hide() { + super.hide(); + tree.getTreeViewModel().removeHandlers(); + } + private void initExpandButtons() { expandAllButton.addClickHandler(new ClickHandler() { @Override diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/editor/EntityModelCellTree.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/editor/EntityModelCellTree.java index f28b634..df7e1cd 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/editor/EntityModelCellTree.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/editor/EntityModelCellTree.java @@ -1,6 +1,5 @@ package org.ovirt.engine.ui.webadmin.widget.editor; -import com.google.gwt.event.logical.shared.AttachEvent; import org.ovirt.engine.ui.common.uicommon.model.TreeNodeModel; import org.ovirt.engine.ui.common.widget.tree.ElementIdCellTree; import org.ovirt.engine.ui.webadmin.uicommon.model.ModelListTreeViewModel; @@ -23,14 +22,6 @@ public EntityModelCellTree(CellTree.Resources res) { super(new ModelListTreeViewModel<T, M>(), null, res); - addAttachHandler(new AttachEvent.Handler() { - @Override - public void onAttachOrDetach(AttachEvent event) { - if (!event.isAttached()) { - getTreeViewModel().removeHandlers(); - } - } - }); } } -- To view, visit http://gerrit.ovirt.org/35349 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I56de07f80cbb21fe6362d6df488defe7422cebfb Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Alexander Wels <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
