Author: mareshkau
Date: 2007-08-16 12:49:47 -0400 (Thu, 16 Aug 2007)
New Revision: 3178
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerEditor.java
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeSelectionBuilder.java
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mapping/VpeDomMapping.java
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mozilla/MozillaDomEventListener.java
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/template/VpeAbstractTemplate.java
Log:
http://jira.jboss.com/jira/browse/JBIDE-744?page=all
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java
===================================================================
---
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java 2007-08-16
16:49:42 UTC (rev 3177)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeController.java 2007-08-16
16:49:47 UTC (rev 3178)
@@ -777,9 +777,9 @@
}
public void mouseClick(nsIDOMMouseEvent mouseEvent) {
-// if (!switcher.startActiveEditor(ActiveEditorSwitcher.ACTIVE_EDITOR_VISUAL)) {
-// return;
-// }
+ if (!switcher.startActiveEditor(ActiveEditorSwitcher.ACTIVE_EDITOR_VISUAL)) {
+ return;
+ }
try{
nsIDOMNode visualNode = VisualDomUtil.getTargetNode(mouseEvent);
if (visualNode != null) {
@@ -869,7 +869,6 @@
}
visualEditor.hideResizer();
- //TODO with this behaviour isn't works 'CTRL+M'
switcher.stopActiveEditor();
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeSelectionBuilder.java
===================================================================
---
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeSelectionBuilder.java 2007-08-16
16:49:42 UTC (rev 3177)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeSelectionBuilder.java 2007-08-16
16:49:47 UTC (rev 3178)
@@ -236,7 +236,7 @@
VisualSelectionInfo info = getVisualSelectedInfo(visualAnchorNode,
visualAnchorOffset);
if (info != null) {
nsIDOMNode visualNode = info.node;
- visualBuilder.setSelectionRectangle((nsIDOMElement)visualNode, false);
+ visualBuilder.setSelectionRectangle((nsIDOMElement)visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID),
false);
Node sourceNode = domMapping.getNearSourceNode(visualNode);
int sourceStartOffset = ((IndexedRegion)sourceNode).getStartOffset();
int sourceEndOffset = ((IndexedRegion)sourceNode).getEndOffset();
@@ -1150,7 +1150,7 @@
nsIDOMNode visualNode = VisualDomUtil.getTargetNode(mouseEvent);
if (visualNode != null && visualNode.getNodeType() == Node.ELEMENT_NODE
&&
(HTML.TAG_INPUT.equalsIgnoreCase(visualNode.getNodeName()) ||
HTML.TAG_BUTTON.equalsIgnoreCase(visualNode.getNodeName()) ||
"SELECT".equalsIgnoreCase(visualNode.getNodeName())) &&
- !selection.containsNode(visualNode, false) &&
visualBuilder.canInnerDrag((nsIDOMElement)visualNode)) {
+ !selection.containsNode(visualNode, false) &&
visualBuilder.canInnerDrag((nsIDOMElement)visualNode.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID)))
{
return (nsIDOMElement)visualNode;
}
return null;
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java
===================================================================
---
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java 2007-08-16
16:49:42 UTC (rev 3177)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java 2007-08-16
16:49:47 UTC (rev 3178)
@@ -57,6 +57,7 @@
import org.mozilla.interfaces.nsIDOMAttr;
import org.mozilla.interfaces.nsIDOMDocument;
import org.mozilla.interfaces.nsIDOMElement;
+import org.mozilla.interfaces.nsIDOMEventTarget;
import org.mozilla.interfaces.nsIDOMMouseEvent;
import org.mozilla.interfaces.nsIDOMNode;
import org.mozilla.interfaces.nsIDOMNodeList;
@@ -1444,19 +1445,29 @@
}
private boolean inDragArea(Rectangle dragArea, Point mousePoint) {
- return dragArea.contains(mousePoint) &&
- mousePoint.x < (dragArea.x + DRAG_AREA_WIDTH) &&
- mousePoint.y < (dragArea.y + DRAG_AREA_HEIGHT);
+ //TODO add drag and drop support
+// return dragArea.contains(mousePoint) &&
+// mousePoint.x < (dragArea.x + DRAG_AREA_WIDTH) &&
+// mousePoint.y < (dragArea.y + DRAG_AREA_HEIGHT);
+ return true;
}
nsIDOMElement getDragElement(nsIDOMMouseEvent mouseEvent) {
// TODO Max Areshkau figure out with selected element
-// nsIDOMElement selectedElement = browser.getSelectedElement();
-// if (selectedElement != null && canInnerDrag(selectedElement)) {
-// if (inDragArea(getNodeBounds(selectedElement),
VisualDomUtil.getMousePoint(mouseEvent))) {
-// return selectedElement;
-// }
-// }
+ /*We use element on which was click
+ *
+ */
+ try{
+ nsIDOMEventTarget eventTarget = mouseEvent.getTarget();
+ nsIDOMElement selectedElement = (nsIDOMElement)
eventTarget.queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
+ if (selectedElement != null && canInnerDrag(selectedElement)) {
+ if (inDragArea(getNodeBounds(selectedElement),
VisualDomUtil.getMousePoint(mouseEvent))) {
+ return selectedElement;
+ }
+ }
+ } catch(XPCOMException exception) {
+ exception.printStackTrace();
+ }
return null;
}
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mapping/VpeDomMapping.java
===================================================================
---
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mapping/VpeDomMapping.java 2007-08-16
16:49:42 UTC (rev 3177)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mapping/VpeDomMapping.java 2007-08-16
16:49:47 UTC (rev 3178)
@@ -51,7 +51,7 @@
Map.Entry<nsIDOMNode, VpeNodeMapping> entry = iter.next();
nsIDOMNode visualNode = entry.getKey();
if (!visualNode.equals(except)) {
- visualMap.remove(visualNode);
+ iter.remove();
}
}
sourceMap.clear();
@@ -74,9 +74,23 @@
}
public VpeNodeMapping getNodeMappingAtVisualNode(nsIDOMNode visualNode) {
- if (visualNode != null) {
- return visualMap.get(visualNode);
+
+
+ Iterator<Map.Entry<nsIDOMNode, VpeNodeMapping>> iter =
visualMap.entrySet().iterator();
+ //Map.get() doesn't work correctly for this situation
+ while(iter.hasNext()){
+ Map.Entry<nsIDOMNode,VpeNodeMapping> element = iter.next();
+ nsIDOMNode key = element.getKey();
+ if(visualNode.equals(key)) {
+
+ return element.getValue();
+ }
+
}
+//
+// if (visualNode != null) {
+// return visualMap.get(visualNode);
+// }
return null;
}
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mozilla/MozillaDomEventListener.java
===================================================================
---
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mozilla/MozillaDomEventListener.java 2007-08-16
16:49:42 UTC (rev 3177)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mozilla/MozillaDomEventListener.java 2007-08-16
16:49:47 UTC (rev 3178)
@@ -350,14 +350,14 @@
getEditorDomEventListener().mouseDown(mouseEvent);
} else if(MOUSEUPEVENTTYPE.equals(domEvent.getType())) {
- nsIDOMMouseEvent mouseEvent;
- mouseEvent = (nsIDOMMouseEvent)
domEvent.queryInterface(nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_IID);
- getEditorDomEventListener().mouseUp(mouseEvent);
+// nsIDOMMouseEvent mouseEvent;
+// mouseEvent = (nsIDOMMouseEvent)
domEvent.queryInterface(nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_IID);
+// getEditorDomEventListener().mouseUp(mouseEvent);
} else if(CLICKEVENTTYPE.equals(domEvent.getType())) {
- nsIDOMMouseEvent mouseEvent;
- mouseEvent = (nsIDOMMouseEvent)
domEvent.queryInterface(nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_IID);
- getEditorDomEventListener().mouseClick(mouseEvent);
+// nsIDOMMouseEvent mouseEvent;
+// mouseEvent = (nsIDOMMouseEvent)
domEvent.queryInterface(nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_IID);
+// getEditorDomEventListener().mouseClick(mouseEvent);
} else if(DBLCLICK.equals(domEvent.getType())) {
nsIDOMMouseEvent mouseEvent;
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/template/VpeAbstractTemplate.java
===================================================================
---
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/template/VpeAbstractTemplate.java 2007-08-16
16:49:42 UTC (rev 3177)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/template/VpeAbstractTemplate.java 2007-08-16
16:49:47 UTC (rev 3178)
@@ -667,7 +667,7 @@
// if (dragger != null) {
// return dragger.isDragEnabled();
// } else {
- return false;
+ return true;
// }
}
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerEditor.java
===================================================================
---
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerEditor.java 2007-08-16
16:49:42 UTC (rev 3177)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe.xulrunner/src/org/jboss/tools/vpe/xulrunner/editor/XulRunnerEditor.java 2007-08-16
16:49:47 UTC (rev 3178)
@@ -121,7 +121,7 @@
}
return null;
}
-
+
public nsIDocShell getDocShell() {
nsIInterfaceRequestor interfaceRequestor = (nsIInterfaceRequestor)
getWebBrowser().queryInterface(nsIInterfaceRequestor.NS_IINTERFACEREQUESTOR_IID);
return (nsIDocShell) interfaceRequestor.getInterface(nsIDocShell.NS_IDOCSHELL_IID);