Read GridItem height sent by the client
Change-Id: I47bc993da87a755c20b0c88c4d1e6d7e87518532
Signed-off-by: Ivan Furnadjiev <ivan@eclipsesource.com>
diff --git a/bundles/org.eclipse.rap.nebula.widgets.grid/src/org/eclipse/nebula/widgets/grid/internal/griditemkit/GridItemOperationHandler.java b/bundles/org.eclipse.rap.nebula.widgets.grid/src/org/eclipse/nebula/widgets/grid/internal/griditemkit/GridItemOperationHandler.java
index 0409741..464ff6f 100644
--- a/bundles/org.eclipse.rap.nebula.widgets.grid/src/org/eclipse/nebula/widgets/grid/internal/griditemkit/GridItemOperationHandler.java
+++ b/bundles/org.eclipse.rap.nebula.widgets.grid/src/org/eclipse/nebula/widgets/grid/internal/griditemkit/GridItemOperationHandler.java
@@ -25,6 +25,7 @@
private static final String PROP_CELL_CHECKED = "cellChecked";
private static final String PROP_EXPANDED = "expanded";
+ private static final String PROP_HEIGHT = "height";
public GridItemOperationHandler( GridItem item ) {
super( item );
@@ -34,6 +35,7 @@
public void handleSet( GridItem item, JsonObject properties ) {
handleSetChecked( item, properties );
handleSetExpanded( item, properties );
+ handleSetHeight( item, properties );
}
/*
@@ -68,4 +70,16 @@
}
}
+ /*
+ * PROTOCOL SET height
+ *
+ * @param height (int) the actual item height measured by the client
+ */
+ public void handleSetHeight( GridItem item, JsonObject properties ) {
+ JsonValue value = properties.get( PROP_HEIGHT );
+ if( value != null ) {
+ item.setHeight( value.asInt() );
+ }
+ }
+
}
diff --git a/tests/org.eclipse.rap.nebula.widgets.grid.test/src/org/eclipse/nebula/widgets/grid/internal/griditemkit/GridItemOperationHandler_Test.java b/tests/org.eclipse.rap.nebula.widgets.grid.test/src/org/eclipse/nebula/widgets/grid/internal/griditemkit/GridItemOperationHandler_Test.java
index 1c5c150..5241165 100644
--- a/tests/org.eclipse.rap.nebula.widgets.grid.test/src/org/eclipse/nebula/widgets/grid/internal/griditemkit/GridItemOperationHandler_Test.java
+++ b/tests/org.eclipse.rap.nebula.widgets.grid.test/src/org/eclipse/nebula/widgets/grid/internal/griditemkit/GridItemOperationHandler_Test.java
@@ -11,6 +11,7 @@
package org.eclipse.nebula.widgets.grid.internal.griditemkit;
import static org.eclipse.nebula.widgets.grid.GridTestUtil.createGridColumns;
+import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -88,4 +89,11 @@
assertFalse( item.isExpanded() );
}
+ @Test
+ public void testHandleSetHeight() {
+ handler.handleSet( new JsonObject().add( "height", 123 ) );
+
+ assertEquals( 123, item.getHeight() );
+ }
+
}