diff options
author | Adam Wagner <wbadam@users.noreply.github.com> | 2017-05-19 14:56:16 +0300 |
---|---|---|
committer | Aleksi Hietanen <aleksi@vaadin.com> | 2017-05-19 14:56:16 +0300 |
commit | d7003aa96c1aed9ffefa35ff09679b3e602243fb (patch) | |
tree | 584891ac83fbcbacabe9096ffd64bb9449a833e3 /client | |
parent | 91e34500d7112f431c8d576c5992f63cbd1b4cd0 (diff) | |
download | vaadin-framework-d7003aa96c1aed9ffefa35ff09679b3e602243fb.tar.gz vaadin-framework-d7003aa96c1aed9ffefa35ff09679b3e602243fb.zip |
Add style automatically to indicate that an element is being dragged (#9385)
Closes #9223
Diffstat (limited to 'client')
-rw-r--r-- | client/src/main/java/com/vaadin/client/extensions/DragSourceExtensionConnector.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/client/src/main/java/com/vaadin/client/extensions/DragSourceExtensionConnector.java b/client/src/main/java/com/vaadin/client/extensions/DragSourceExtensionConnector.java index 5c91e91714..75e89f9ca4 100644 --- a/client/src/main/java/com/vaadin/client/extensions/DragSourceExtensionConnector.java +++ b/client/src/main/java/com/vaadin/client/extensions/DragSourceExtensionConnector.java @@ -55,6 +55,11 @@ public class DragSourceExtensionConnector extends AbstractExtensionConnector { */ protected static final String STYLE_SUFFIX_DRAGSOURCE = "-dragsource"; + /** + * Style suffix for indicating that the element is being dragged. + */ + protected static final String STYLE_SUFFIX_DRAGGED= "-dragged"; + private static final String STYLE_NAME_DRAGGABLE = "v-draggable"; // Create event listeners @@ -205,6 +210,11 @@ public class DragSourceExtensionConnector extends AbstractExtensionConnector { dataMap.get(DragSourceState.DATA_TYPE_TEXT)); } + // Set style to indicate the element being dragged + Element dragSource = getDraggableElement(); + dragSource.addClassName( + getStylePrimaryName(dragSource) + STYLE_SUFFIX_DRAGGED); + // Initiate firing server side dragstart event when there is a // DragStartListener attached on the server side if (hasEventListener(DragSourceState.EVENT_DRAGSTART)) { @@ -363,6 +373,12 @@ public class DragSourceExtensionConnector extends AbstractExtensionConnector { event.stopPropagation(); return; } + + // Remove dragged element indicator style + Element dragSource = getDraggableElement(); + dragSource.removeClassName( + getStylePrimaryName(dragSource) + STYLE_SUFFIX_DRAGGED); + // Initiate server start dragend event when there is a DragEndListener // attached on the server side if (hasEventListener(DragSourceState.EVENT_DRAGEND)) { |