summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2010-03-16 15:08:15 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2010-03-16 15:08:15 +0000
commitd5dcef52a2a62150c98970bba60af050342a7709 (patch)
treee69de0ea0a8a9237256c02cb4a365f7cbe5c499d
parentf99cb379af4d0786ffdc427ce56f431a539d3a8e (diff)
downloadvaadin-framework-d5dcef52a2a62150c98970bba60af050342a7709.tar.gz
vaadin-framework-d5dcef52a2a62150c98970bba60af050342a7709.zip
cross plat improvementes for html5 drags
svn changeset:11917/svn branch:6.3
-rw-r--r--src/com/vaadin/terminal/gwt/client/ui/VDragAndDropWrapper.java15
-rw-r--r--tests/src/com/vaadin/tests/dd/DragDropPane.java6
2 files changed, 19 insertions, 2 deletions
diff --git a/src/com/vaadin/terminal/gwt/client/ui/VDragAndDropWrapper.java b/src/com/vaadin/terminal/gwt/client/ui/VDragAndDropWrapper.java
index e35eec9799..6e076ff255 100644
--- a/src/com/vaadin/terminal/gwt/client/ui/VDragAndDropWrapper.java
+++ b/src/com/vaadin/terminal/gwt/client/ui/VDragAndDropWrapper.java
@@ -204,8 +204,7 @@ public class VDragAndDropWrapper extends VCustomComponent implements
for (int i = 0; i < types.length(); i++) {
String type = types.get(i);
ApplicationConnection.getConsole().log("Type: " + type);
- if ("Text".equals(type) || "Url".equals(type)
- || "text/html".equals(type)) {
+ if (isAcceptedType(type)) {
String data = event.getDataAsText(type);
if (data != null) {
ApplicationConnection.getConsole().log(type + " : " + data);
@@ -240,6 +239,18 @@ public class VDragAndDropWrapper extends VCustomComponent implements
return false;
}
+ protected String[] acceptedTypes = new String[] { "Text", "Url",
+ "text/html", "text/plain", "text/rtf" };
+
+ private boolean isAcceptedType(String type) {
+ for (String t : acceptedTypes) {
+ if (t.equals(type)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
static class ExtendedXHR extends XMLHttpRequest {
protected ExtendedXHR() {
diff --git a/tests/src/com/vaadin/tests/dd/DragDropPane.java b/tests/src/com/vaadin/tests/dd/DragDropPane.java
index 82401a99f7..cd7a372d2e 100644
--- a/tests/src/com/vaadin/tests/dd/DragDropPane.java
+++ b/tests/src/com/vaadin/tests/dd/DragDropPane.java
@@ -114,12 +114,18 @@ public class DragDropPane extends DragAndDropWrapper implements DropHandler {
WrapperTransferable wtr = (WrapperTransferable) ctr;
String object = (String) ctr.getData("Text");
+ if (object == null) {
+ object = (String) ctr.getData("text/plain");
+ }
String html = (String) ctr.getData("Html");
String url = (String) ctr.getData("Url");
final Label l = new Label();
l.setCaption("Generated from HTML5 drag:");
if (object != null) {
+ if (object.length() > 80) {
+ object = object.substring(0, 79);
+ }
l.setValue(object);
} else {
l.setValue("HTML5 dd");