summaryrefslogtreecommitdiffstats
path: root/uitest/src/main/java/com/vaadin
diff options
context:
space:
mode:
authorArtur <artur@vaadin.com>2017-02-01 16:49:16 +0200
committerPekka Hyvönen <pekka@vaadin.com>2017-02-01 16:49:16 +0200
commit697cfcf3d1720022d3b8ea1380ba76b50b2f8e3f (patch)
tree559f8dc6123fbb7999d5a8129267c1134d93075e /uitest/src/main/java/com/vaadin
parent32c3c84e8476955792d0e08965ccdd006d8f3a18 (diff)
downloadvaadin-framework-697cfcf3d1720022d3b8ea1380ba76b50b2f8e3f.tar.gz
vaadin-framework-697cfcf3d1720022d3b8ea1380ba76b50b2f8e3f.zip
Call "destroy" instead of "destory" in JavaScriptRenders (#8263)
* Call "destroy" instead of "destory" in JavaScriptRenders For backwards compatibility, calls "destory" if no "destroy" exists Fixes #8162 * Merge branch '7.7' into _js-renderer-destory * Merge branch '7.7' into _js-renderer-destory * Merge branch '7.7' into _js-renderer-destory * Merge branch '7.7' into _js-renderer-destory * Merge branch '7.7' into _js-renderer-destory
Diffstat (limited to 'uitest/src/main/java/com/vaadin')
-rw-r--r--uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptRenderers.java32
-rw-r--r--uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptStringRendererWithDestoryMethod.java29
2 files changed, 58 insertions, 3 deletions
diff --git a/uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptRenderers.java b/uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptRenderers.java
index bb7a93d378..d6a6373541 100644
--- a/uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptRenderers.java
+++ b/uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptRenderers.java
@@ -19,10 +19,16 @@ import com.vaadin.data.Item;
import com.vaadin.data.util.IndexedContainer;
import com.vaadin.server.VaadinRequest;
import com.vaadin.tests.components.AbstractTestUI;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.Button.ClickEvent;
+import com.vaadin.ui.Button.ClickListener;
import com.vaadin.ui.Grid;
+import com.vaadin.ui.Label;
public class JavaScriptRenderers extends AbstractTestUI {
+ private Grid grid;
+
public static class MyBean {
private int integer;
private String string;
@@ -52,10 +58,11 @@ public class JavaScriptRenderers extends AbstractTestUI {
@Override
protected void setup(VaadinRequest request) {
- IndexedContainer container = new IndexedContainer();
+ final IndexedContainer container = new IndexedContainer();
container.addContainerProperty("id", Integer.class, Integer.valueOf(0));
container.addContainerProperty("bean", MyBean.class, null);
container.addContainerProperty("string", String.class, "");
+ container.addContainerProperty("string2", String.class, "");
for (int i = 0; i < 1000; i++) {
Integer itemId = Integer.valueOf(i);
@@ -65,15 +72,34 @@ public class JavaScriptRenderers extends AbstractTestUI {
.setValue(new MyBean(i + 1, Integer.toString(i - 1)));
item.getItemProperty("string").setValue("string" + i);
}
+ Label clientLog = new Label();
+ clientLog.setId("clientLog");
+ addComponent(clientLog);
+ grid = createGrid(container);
+ addComponent(grid);
+
+ addComponent(new Button("Recreate grid", new ClickListener() {
+
+ @Override
+ public void buttonClick(ClickEvent event) {
+ Grid newGrid = createGrid(container);
+ replaceComponent(grid, newGrid);
+ grid = newGrid;
+ }
+ }));
+ }
+
+ private Grid createGrid(IndexedContainer container) {
Grid grid = new Grid(container);
grid.getColumn("bean").setRenderer(new MyBeanJSRenderer());
grid.getColumn("bean").setWidth(250);
grid.getColumn("string").setRenderer(new JavaScriptStringRenderer());
-
- addComponent(grid);
+ grid.getColumn("string2")
+ .setRenderer(new JavaScriptStringRendererWithDestoryMethod());
+ return grid;
}
}
diff --git a/uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptStringRendererWithDestoryMethod.java b/uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptStringRendererWithDestoryMethod.java
new file mode 100644
index 0000000000..990a3617bd
--- /dev/null
+++ b/uitest/src/main/java/com/vaadin/tests/components/grid/JavaScriptStringRendererWithDestoryMethod.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright 2000-2014 Vaadin Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.vaadin.tests.components.grid;
+
+import com.vaadin.annotations.JavaScript;
+import com.vaadin.ui.renderers.AbstractJavaScriptRenderer;
+
+@JavaScript("JavaScriptStringRendererWithDestoryMethod.js")
+public class JavaScriptStringRendererWithDestoryMethod
+ extends AbstractJavaScriptRenderer<String> {
+
+ protected JavaScriptStringRendererWithDestoryMethod() {
+ super(String.class);
+ }
+
+}