Alexander Wels has uploaded a new change for review. Change subject: userportal: extended event sub tab loading ......................................................................
userportal: extended event sub tab loading - Fixed issue where the event list was not showing the loading indicator when loadin data. Change-Id: I81495d93c0fb9a7989ff2147d6bfcbd8d769d6ff Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1079937 Signed-off-by: Alexander Wels <[email protected]> --- M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UserPortalVmEventListModel.java 3 files changed, 34 insertions(+), 6 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/35/28035/1 diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java index 4f92dae..6accc3d 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java @@ -16,6 +16,8 @@ import org.ovirt.engine.ui.uicompat.IEventListener; import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs; +import com.google.gwt.core.client.Scheduler; +import com.google.gwt.core.client.Scheduler.ScheduledCommand; import com.google.gwt.event.shared.EventBus; import com.google.gwt.event.shared.GwtEvent.Type; import com.google.gwt.user.cellview.client.LoadingStateChangeEvent.LoadingState; @@ -214,9 +216,14 @@ PropertyChangedEventArgs pcArgs = (PropertyChangedEventArgs) args; if (PropertyChangedEventArgs.Args.PROGRESS.toString().equals(pcArgs.propertyName)) { if (modelProvider.getModel().getProgress() != null) { - if (getTable() != null) { - getTable().setLoadingState(LoadingState.LOADING); - } + Scheduler.get().scheduleDeferred(new ScheduledCommand() { + @Override + public void execute() { + if (getTable() != null) { + getTable().setLoadingState(LoadingState.LOADING); + } + } + }); } } } diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java index 9f50c19..33826dc 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java @@ -1,7 +1,6 @@ package org.ovirt.engine.ui.common.uicommon.model; import java.util.ArrayList; -import java.util.Collection; import java.util.List; import org.ovirt.engine.core.common.businessentities.IVdcQueryable; @@ -10,6 +9,7 @@ import org.ovirt.engine.ui.uicompat.Event; import org.ovirt.engine.ui.uicompat.EventArgs; import org.ovirt.engine.ui.uicompat.IEventListener; +import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs; import com.google.gwt.event.shared.EventBus; import com.google.gwt.view.client.AsyncDataProvider; @@ -61,6 +61,21 @@ } } }); + getModel().getPropertyChangedEvent().addListener(new IEventListener() { + @Override + public void eventRaised(Event ev, Object sender, EventArgs args) { + if (args instanceof PropertyChangedEventArgs) { + PropertyChangedEventArgs pcArgs = (PropertyChangedEventArgs) args; + if (PropertyChangedEventArgs.Args.PROGRESS.toString().equals(pcArgs.propertyName)) { + clearData(); + } + } + } + }); + } + + void clearData() { + getDataProvider().updateRowCount(0, false); } /** @@ -126,7 +141,7 @@ */ @SuppressWarnings("unchecked") protected void updateData() { - List<T> items = getModel().getItems() == null ? null : new ArrayList<T>((Collection<T>) getModel().getItems()); + List<T> items = getModel().getItems() == null ? null : new ArrayList<T>(getModel().getItems()); if (items != null) { updateDataProvider(items); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UserPortalVmEventListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UserPortalVmEventListModel.java index 1ebe723..48efcbd 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UserPortalVmEventListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UserPortalVmEventListModel.java @@ -19,7 +19,6 @@ } VM vm = (VM) getEntity(); - super.syncSearch(VdcQueryType.GetAllAuditLogsByVMId, new IdQueryParameters(vm.getId())); } @@ -36,4 +35,11 @@ } super.setItems(list); } + + @Override + protected void onEntityContentChanged() + { + startProgress(null); + super.onEntityContentChanged(); + } } -- To view, visit http://gerrit.ovirt.org/28035 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I81495d93c0fb9a7989ff2147d6bfcbd8d769d6ff 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
