[richfaces-svn-commits] JBoss Rich Faces SVN: r13524 - in trunk/ui/scrollableDataTable/src/main: javascript/ClientUI/controls/grid and 1 other directory.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Mon Apr 13 08:16:48 EDT 2009


Author: konstantin.mishin
Date: 2009-04-13 08:16:48 -0400 (Mon, 13 Apr 2009)
New Revision: 13524

Modified:
   trunk/ui/scrollableDataTable/src/main/java/org/richfaces/renderkit/html/ScrollableDataTableBaseRenderer.java
   trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/GridBody.js
Log:
RF-5054

Modified: trunk/ui/scrollableDataTable/src/main/java/org/richfaces/renderkit/html/ScrollableDataTableBaseRenderer.java
===================================================================
--- trunk/ui/scrollableDataTable/src/main/java/org/richfaces/renderkit/html/ScrollableDataTableBaseRenderer.java	2009-04-13 11:54:15 UTC (rev 13523)
+++ trunk/ui/scrollableDataTable/src/main/java/org/richfaces/renderkit/html/ScrollableDataTableBaseRenderer.java	2009-04-13 12:16:48 UTC (rev 13524)
@@ -659,18 +659,28 @@
 			
 			String s_id = clientId + ":si";
 			grid.resetReqRowsCount();
+			String firstString = null;
 			if(parameters.containsKey(s_id)){
 				String options = (String)parameters.get(s_id);
 				grid.setScrollPos(options);
 				if(options.length() > 0){
 					String[] si = options.split(",");
-					grid.setFirst(Integer.parseInt(si[1]));
+					firstString = si[1];
+					if (si.length >= 5) {
+						grid.setFirst(Integer.parseInt(si[4]));
+					} else {
+						grid.setFirst(Integer.parseInt(firstString));
+					}
 					component.getAttributes().put(ScrollableDataTableUtils.CLIENT_ROW_KEY, Integer.parseInt(si[3]));			
 				}
 			}
 					
 			composite.decode(context, component);
 			
+			if (firstString != null) {
+				grid.setFirst(Integer.parseInt(firstString));
+			}
+			
 			if(parameters.containsKey(clientId + ":sortColumn") &&
 			   parameters.containsKey(clientId + ":sortStartRow") && 
 			   parameters.containsKey(clientId + ":sortIndex")){ 

Modified: trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/GridBody.js
===================================================================
--- trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/GridBody.js	2009-04-13 11:54:15 UTC (rev 13523)
+++ trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/GridBody.js	2009-04-13 12:16:48 UTC (rev 13524)
@@ -376,6 +376,9 @@
 		if(countToLoad > 0 && process) {
 			this.updateStarted = true;
 			ClientUILib.log(ClientUILogger.WARNING, "Start loading: index: " + startIndex + ", and startRow: " + startRowIndx + ", and count: " + countToLoad);
+
+			this.scrollInput.value = task.pos + "," + range.start + "," + range.end + "," + firstIndex + "," + this.currRange.start; 
+			
 			this.currRange = range;
 			this.currentPos = task.pos;
 			
@@ -633,7 +636,7 @@
 			this.currentPos = values[0];
 			this.currRange.start = values[1];
 			this.currRange.end = values[2];
-			this.scrollBox.getElement().scrollTop = this.sizeBox.getHeight(); // values[0];
+			this.scrollBox.getElement().scrollTop = values[0];
 			var visibleRowPos = this.currRange.start * this.defaultRowHeight;
 			this._showContainer();		
 			this.templFrozen.moveToY(visibleRowPos);




More information about the richfaces-svn-commits mailing list