Alexander Wels has uploaded a new change for review. Change subject: webadmin: System tree refresh ......................................................................
webadmin: System tree refresh - Automatically refresh the system tree when a new event comes in or the user does an action. Change-Id: I6e2d069ba00e5c272b62f6e2c80951d626def206 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=987953 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1057081 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1072505 Signed-off-by: Alexander Wels <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeItemModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/ModelListTreeViewModel.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/tree/SystemTree.java 5 files changed, 12 insertions(+), 26 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/62/26162/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeItemModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeItemModel.java index 3e3cdcb..f2345b3 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeItemModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeItemModel.java @@ -105,6 +105,10 @@ @Override public boolean equals(Object other) { + return equals(other, false); + } + + public boolean equals(Object other, boolean deepCompare) { if (other == this) { return true; } @@ -112,11 +116,11 @@ return false; } SystemTreeItemModel otherModel = (SystemTreeItemModel) other; - if (getChildren().size() > 0) { + if (getChildren().size() > 0 && deepCompare) { if (otherModel.getChildren().size() == getChildren().size()) { boolean result = true; for (int i = 0; i < getChildren().size(); i++) { - result = getChildren().get(i).equals(otherModel.getChildren().get(i)); + result = getChildren().get(i).equals(otherModel.getChildren().get(i), deepCompare); if (!result) { break; } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java index 306c103..1c72acc 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java @@ -627,8 +627,9 @@ if (!ApplicationModeHelper.getUiMode().equals(ApplicationMode.AllModes)) { ApplicationModeHelper.filterSystemTreeByApplictionMode(systemItem); } - List<SystemTreeItemModel> newItems = new ArrayList<SystemTreeItemModel>(Arrays.asList(new SystemTreeItemModel[] { systemItem })); - if(!newItems.equals(items)) { + List<SystemTreeItemModel> newItems = + new ArrayList<SystemTreeItemModel>(Arrays.asList(new SystemTreeItemModel[] { systemItem })); + if (items == null || items.size() == 0 || !newItems.get(0).equals(items.toArray()[0], true)) { setItems(newItems); } } diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/ModelListTreeViewModel.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/ModelListTreeViewModel.java index 1a87597..402ba7a 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/ModelListTreeViewModel.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/ModelListTreeViewModel.java @@ -5,7 +5,6 @@ import java.util.List; import java.util.Set; -import com.google.gwt.event.shared.HandlerRegistration; import org.ovirt.engine.ui.common.uicommon.model.TreeNodeModel; import org.ovirt.engine.ui.common.utils.ElementIdUtils; import org.ovirt.engine.ui.common.widget.tree.TreeModelWithElementId; @@ -18,6 +17,7 @@ import com.google.gwt.core.client.GWT; import com.google.gwt.event.logical.shared.SelectionEvent; import com.google.gwt.event.logical.shared.SelectionHandler; +import com.google.gwt.event.shared.HandlerRegistration; import com.google.gwt.safehtml.client.SafeHtmlTemplates; import com.google.gwt.safehtml.shared.SafeHtml; import com.google.gwt.safehtml.shared.SafeHtmlBuilder; diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java index 5fa381f..6bff944 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java @@ -107,17 +107,7 @@ @Override public void setSelectedItems(List<SystemTreeItemModel> items) { - if (items.size() > 0) { - SystemTreeItemModel selectedItem = null; - if (getModel().getSelectedItem() != null) { - selectedItem = getModel().findNode(items.get(0), getModel().getSelectedItem()); - } else { - selectedItem = items.get(0); - } - getModel().setSelectedItem(selectedItem); - } else { - getModel().setSelectedItem(null); - } + getModel().setSelectedItem(items.size() > 0 ? items.get(0) : null); } @Override diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/tree/SystemTree.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/tree/SystemTree.java index 2ad6d31..fedbbdf 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/tree/SystemTree.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/tree/SystemTree.java @@ -23,13 +23,10 @@ import org.ovirt.engine.ui.webadmin.widget.action.WebAdminButtonDefinition; import com.google.gwt.core.client.GWT; -import com.google.gwt.core.client.Scheduler; -import com.google.gwt.core.client.Scheduler.ScheduledCommand; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.user.cellview.client.CellTable; import com.google.gwt.user.cellview.client.CellTree; import com.google.gwt.user.cellview.client.CellTree.Style; -import com.google.gwt.user.cellview.client.HasKeyboardSelectionPolicy.KeyboardSelectionPolicy; import com.google.gwt.user.cellview.client.TreeNode; import com.google.gwt.user.client.ui.Widget; @@ -106,12 +103,7 @@ if (modelProvider.getModel().getSelectedItem() == null) { expandTree(getDataDisplayWidget().getRootTreeNode(), ITEM_LEVEL); } else { - Scheduler.get().scheduleDeferred(new ScheduledCommand() { - @Override - public void execute() { - expandPathUsingMap(getDataDisplayWidget().getRootTreeNode(), nodeStateMap); - } - }); + expandPathUsingMap(getDataDisplayWidget().getRootTreeNode(), nodeStateMap); } } }); @@ -189,7 +181,6 @@ } }; display.setAnimationEnabled(true); - display.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.BOUND_TO_SELECTION); modelProvider.setDataDisplay(display); return display; } -- To view, visit http://gerrit.ovirt.org/26162 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I6e2d069ba00e5c272b62f6e2c80951d626def206 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
