summaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
authorTeemu Suo-Anttila <teemusa@vaadin.com>2014-04-14 11:14:32 +0000
committerVaadin Code Review <review@vaadin.com>2014-04-14 12:05:45 +0000
commit168de1fefa0f09b07d438968575033e6d234cfb2 (patch)
tree833b7848d77d0f194f779af88a5e479f90d5524e /client
parent35e2a34c9c4dfcf9117db31f6403401129c9befc (diff)
downloadvaadin-framework-168de1fefa0f09b07d438968575033e6d234cfb2.tar.gz
vaadin-framework-168de1fefa0f09b07d438968575033e6d234cfb2.zip
Revert "Drag image for text-area should contain text of text-area (#13557)"
This reverts commit f227f0c1068f17e5491bd399d9f5bde16a0c8272. Synchronising content after IE wraps the given element into a table with a body causes a NullPointerException on client side. This patch also contains new API and should be targeted to master branch. Change-Id: Ia19acd9fa31c7b67507bf797a2bab7c28ea37b4b
Diffstat (limited to 'client')
-rw-r--r--client/src/com/vaadin/client/ui/VTextArea.java15
-rw-r--r--client/src/com/vaadin/client/ui/dd/VDragCloneAware.java40
-rw-r--r--client/src/com/vaadin/client/ui/dd/VDragEvent.java31
3 files changed, 1 insertions, 85 deletions
diff --git a/client/src/com/vaadin/client/ui/VTextArea.java b/client/src/com/vaadin/client/ui/VTextArea.java
index 627d14a058..2a697969df 100644
--- a/client/src/com/vaadin/client/ui/VTextArea.java
+++ b/client/src/com/vaadin/client/ui/VTextArea.java
@@ -17,7 +17,6 @@
package com.vaadin.client.ui;
import com.google.gwt.core.client.Scheduler;
-import com.google.gwt.dom.client.Element;
import com.google.gwt.dom.client.Style.Overflow;
import com.google.gwt.dom.client.Style.WhiteSpace;
import com.google.gwt.dom.client.TextAreaElement;
@@ -31,7 +30,6 @@ import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Event;
import com.vaadin.client.BrowserInfo;
import com.vaadin.client.Util;
-import com.vaadin.client.ui.dd.VDragCloneAware;
/**
* This class represents a multiline textfield (textarea).
@@ -42,7 +40,7 @@ import com.vaadin.client.ui.dd.VDragCloneAware;
* @author Vaadin Ltd.
*
*/
-public class VTextArea extends VTextField implements VDragCloneAware {
+public class VTextArea extends VTextField {
public static final String CLASSNAME = "v-textarea";
private boolean wordwrap = true;
private MaxLengthHandler maxLengthHandler = new MaxLengthHandler();
@@ -296,15 +294,4 @@ public class VTextArea extends VTextField implements VDragCloneAware {
// class instead of directly each other.
}
- @Override
- public void initDragImageCopy(Element element) {
- // Fix for #13557 - drag image doesn't show original text area text.
- // It happens because "value" property is not copied into the cloned
- // element
- String value = getElement().getPropertyString("value");
- if (value != null) {
- element.setPropertyString("value", value);
- }
- }
-
}
diff --git a/client/src/com/vaadin/client/ui/dd/VDragCloneAware.java b/client/src/com/vaadin/client/ui/dd/VDragCloneAware.java
deleted file mode 100644
index 546ca88a9f..0000000000
--- a/client/src/com/vaadin/client/ui/dd/VDragCloneAware.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright 2000-2013 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.client.ui.dd;
-
-import com.google.gwt.dom.client.Element;
-
-/**
- * Widget could implement this interface if drag image requires additional
- * initialization/configuration. Method {@link #initDragImageCopy(Element)}
- * allows to change/correct drag image element when element is dragged via DnD.
- *
- * @since 7.1
- * @author Vaadin Ltd
- */
-public interface VDragCloneAware {
-
- /**
- * This method is called for cloned <code>element</code> which corresponds
- * to the widget element. One could modify/correct this <code>element</code>
- * for drag image.
- *
- * @since 7.1
- * @param element
- * cloned element of drag image
- */
- void initDragImageCopy(Element element);
-}
diff --git a/client/src/com/vaadin/client/ui/dd/VDragEvent.java b/client/src/com/vaadin/client/ui/dd/VDragEvent.java
index 0f0e1ecdad..a4667e57f3 100644
--- a/client/src/com/vaadin/client/ui/dd/VDragEvent.java
+++ b/client/src/com/vaadin/client/ui/dd/VDragEvent.java
@@ -20,14 +20,11 @@ import java.util.Map;
import com.google.gwt.dom.client.Document;
import com.google.gwt.dom.client.NativeEvent;
-import com.google.gwt.dom.client.Node;
import com.google.gwt.dom.client.Style.Unit;
import com.google.gwt.dom.client.TableElement;
import com.google.gwt.dom.client.TableSectionElement;
import com.google.gwt.event.dom.client.MouseOverEvent;
import com.google.gwt.user.client.Element;
-import com.google.gwt.user.client.Event;
-import com.google.gwt.user.client.EventListener;
import com.vaadin.client.BrowserInfo;
import com.vaadin.client.Util;
@@ -187,7 +184,6 @@ public class VDragEvent {
cloneNode = table.cast();
}
}
- syncContent(element, cloneNode);
if (alignImageToEvent) {
int absoluteTop = element.getAbsoluteTop();
int absoluteLeft = element.getAbsoluteLeft();
@@ -202,31 +198,4 @@ public class VDragEvent {
}
- /**
- * Do additional content sync between <code>original</code> element and its
- * <code>copy</code> if needed.
- *
- * @since 7.1
- * @param original
- * original element
- * @param copy
- * copy of original element
- */
- protected void syncContent(Element original, Element copy) {
- for (int i = 0; i < original.getChildCount(); i++) {
- Node child = original.getChild(i);
- if (child instanceof Element) {
- syncContent((Element) child, (Element) copy.getChild(i));
- }
- }
- doSyncContent(original, copy);
- }
-
- private void doSyncContent(Element original, Element copy) {
- EventListener eventListener = Event.getEventListener(original);
- if (eventListener instanceof VDragCloneAware) {
- ((VDragCloneAware) eventListener).initDragImageCopy(copy);
- }
- }
-
}