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

Reply via email to