diff options
author | Matti Tahvonen <matti.tahvonen@itmill.com> | 2010-03-16 15:08:15 +0000 |
---|---|---|
committer | Matti Tahvonen <matti.tahvonen@itmill.com> | 2010-03-16 15:08:15 +0000 |
commit | d5dcef52a2a62150c98970bba60af050342a7709 (patch) | |
tree | e69de0ea0a8a9237256c02cb4a365f7cbe5c499d | |
parent | f99cb379af4d0786ffdc427ce56f431a539d3a8e (diff) | |
download | vaadin-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.java | 15 | ||||
-rw-r--r-- | tests/src/com/vaadin/tests/dd/DragDropPane.java | 6 |
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"); |