Alexander Wels has uploaded a new change for review.

Change subject: webadmin: grids jump to last selected entity
......................................................................

webadmin: grids jump to last selected entity

- Fixed grids jumping to last selected entity on refresh.

Change-Id: I0f34a369ba1074456614ad65b7e4cc77af963853
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=882618
Signed-off-by: Alexander Wels <aw...@redhat.com>
---
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
1 file changed, 14 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/72/10672/1

diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
index cf46f7a..f722d39 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
@@ -110,7 +110,9 @@
     private Column<T, ?> emptyNoWidthColumn;
 
     // Table container's horizontal scroll position, used to align table 
header with main table
-    private int tableContainerScrollPosition = 0;
+    private int tableContainerHorizontalScrollPosition = 0;
+    // Table container's vertical scroll position, used to align table header 
with main table
+    private int tableContainerVerticalScrollPosition = 0;
 
     public AbstractActionTable(SearchableTableModelProvider<T, ?> dataProvider,
             Resources resources, Resources headerRresources, EventBus 
eventBus) {
@@ -158,6 +160,12 @@
 
             @Override
             public void setRowData(int start, List<? extends T> values) {
+                Scheduler.get().scheduleDeferred(new ScheduledCommand() {
+                    @Override
+                    public void execute() {
+                        
tableContainer.getElement().setScrollTop(tableContainerVerticalScrollPosition);
+                    }
+                });
                 super.setRowData(start, values);
                 selectionModel.resolveChanges();
                 updateTableControls();
@@ -321,7 +329,8 @@
         tableContainer.addDomHandler(new ScrollHandler() {
             @Override
             public void onScroll(ScrollEvent event) {
-                tableContainerScrollPosition = 
tableContainer.getElement().getScrollLeft();
+                tableContainerVerticalScrollPosition = 
tableContainer.getElement().getScrollTop();
+                tableContainerHorizontalScrollPosition = 
tableContainer.getElement().getScrollLeft();
                 updateTableHeaderPosition();
             }
         }, ScrollEvent.getType());
@@ -331,17 +340,17 @@
     }
 
     void enforceScrollPosition() {
-        
tableContainer.getElement().setScrollLeft(tableContainerScrollPosition);
+        
tableContainer.getElement().setScrollLeft(tableContainerHorizontalScrollPosition);
         updateTableHeaderPosition();
     }
 
     void updateTableHeaderPosition() {
-        
tableHeader.getElement().getStyle().setLeft(-tableContainerScrollPosition, 
Unit.PX);
+        
tableHeader.getElement().getStyle().setLeft(-tableContainerHorizontalScrollPosition,
 Unit.PX);
     }
 
     @Override
     public void resetScrollPosition() {
-        tableContainerScrollPosition = 0;
+        tableContainerHorizontalScrollPosition = 0;
         enforceScrollPosition();
     }
 


--
To view, visit http://gerrit.ovirt.org/10672
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I0f34a369ba1074456614ad65b7e4cc77af963853
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alexander Wels <aw...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to