Alona Kaplan has uploaded a new change for review.

Change subject: webadmin: ie10 drag&drop support
......................................................................

webadmin: ie10 drag&drop support

DragDropEvent.setData recives two parameters- dataFormat and data.
IE suuports just "Text" and "URL" as the dataFormat (while all the other
browsers support arbitrary string).
In order to support IE the format was changed to "Text".

Change-Id: I5150a6c2b62322969d88d0e2f2a9a85621352d9c
Signed-off-by: Alona Kaplan <[email protected]>
---
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkGroup.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkItemPanel.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/UnassignedNetworksPanel.java
3 files changed, 33 insertions(+), 8 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/77/11077/1

diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkGroup.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkGroup.java
index c4f1675..c468eab 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkGroup.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkGroup.java
@@ -117,6 +117,7 @@
 
             @Override
             public void onDrop(DropEvent event) {
+                event.preventDefault();
                 doDrag(event, true);
                 
table.getElement().removeClassName(style.networkGroupDragOver());
             }
@@ -126,8 +127,9 @@
 
     private void doDrag(DragDropEventBase<?> event, boolean isDrop) {
         HostSetupNetworksModel setupModel = nicModel.getSetupModel();
-        String data = event.getData(NetworkItemPanel.SETUP_NETWORKS_DATA);
-        String type = event.getData(NetworkItemPanel.SETUP_NETWORKS_TYPE); 
//$NON-NLS-1$
+        String dragDropEventData = event.getData("Text"); //$NON-NLS-1$
+        String type = NetworkItemPanel.getType(dragDropEventData);
+        String data = NetworkItemPanel.getData(dragDropEventData);
         if (data != null) {
             if (setupModel.candidateOperation(data, type, nicModel.getName(), 
HostSetupNetworksModel.NIC, isDrop)) {
                 table.getElement().addClassName(style.networkGroupDragOver());
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkItemPanel.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkItemPanel.java
index ad4ba88..19d8e89 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkItemPanel.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/NetworkItemPanel.java
@@ -134,8 +134,7 @@
             public void onDragStart(DragStartEvent event) {
                 NetworkItemPanel sourcePanel = (NetworkItemPanel) 
event.getSource();
                 // Required: set data for the event.
-                event.setData(SETUP_NETWORKS_DATA, sourcePanel.item.getName());
-                event.setData(SETUP_NETWORKS_TYPE, sourcePanel.item.getType());
+                event.setData("Text", sourcePanel.item.getType() + " " + 
sourcePanel.item.getName()); //$NON-NLS-1$ //$NON-NLS-2$
 
                 // show a ghost of the widget under cursor.
                 NativeEvent nativeEvent = event.getNativeEvent();
@@ -209,4 +208,26 @@
     public NetworkItemModel<?> getItem() {
         return item;
     }
+
+    public static String getData(String dragDropEventData) {
+        if (dragDropEventData == null) {
+            return ""; //$NON-NLS-1$
+        }
+        int split = dragDropEventData.indexOf(" "); //$NON-NLS-1$
+        if (split == -1 || dragDropEventData.length() == split + 1) {
+            return ""; //$NON-NLS-1$
+        }
+        return dragDropEventData.substring(split + 1);
+    }
+
+    public static String getType(String dragDropEventData) {
+        if (dragDropEventData == null) {
+            return ""; //$NON-NLS-1$
+        }
+        int split = dragDropEventData.indexOf(" "); //$NON-NLS-1$
+        if (split == -1 || split == 0) {
+            return ""; //$NON-NLS-1$
+        }
+        return dragDropEventData.substring(0, split);
+    }
 }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/UnassignedNetworksPanel.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/UnassignedNetworksPanel.java
index 7186289..ec1e9ee 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/UnassignedNetworksPanel.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/panels/UnassignedNetworksPanel.java
@@ -74,6 +74,7 @@
 
             @Override
             public void onDrop(DropEvent event) {
+                event.preventDefault();
                 doDrag(event, true);
                 
animatedPanel.getElement().removeClassName(style.networkGroupDragOver());
             }
@@ -131,18 +132,19 @@
     }
 
     private void doDrag(DragDropEventBase<?> event, boolean isDrop) {
-        String data = event.getData(NetworkItemPanel.SETUP_NETWORKS_DATA);
-        String type = event.getData(NetworkItemPanel.SETUP_NETWORKS_TYPE);
+        String dragDropEventData = event.getData("Text"); //$NON-NLS-1$
+        String type = NetworkItemPanel.getType(dragDropEventData);
+        String data = NetworkItemPanel.getData(dragDropEventData);
         if (data != null) {
             if (setupModel.candidateOperation(data, type, null, null, isDrop)) 
{
-               
animatedPanel.getElement().addClassName(style.networkGroupDragOver());
+                
animatedPanel.getElement().addClassName(style.networkGroupDragOver());
                 // allow drag/drop (look at 
http://www.w3.org/TR/html5/dnd.html#dndevents)
                 event.preventDefault();
             }
         }
     }
 
-    public void setSetupModel(HostSetupNetworksModel setupModel){
+    public void setSetupModel(HostSetupNetworksModel setupModel) {
         this.setupModel = setupModel;
     }
 }


--
To view, visit http://gerrit.ovirt.org/11077
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5150a6c2b62322969d88d0e2f2a9a85621352d9c
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alona Kaplan <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to