Author: mareshkau
Date: 2007-08-17 06:01:06 -0400 (Fri, 17 Aug 2007)
New Revision: 3204
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/mozilla/MozillaEditor.java
Log:
http://jira.jboss.com/jira/browse/JBIDE-744
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-17
09:43:22 UTC (rev 3203)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/VpeVisualDomBuilder.java 2007-08-17
10:01:06 UTC (rev 3204)
@@ -1516,9 +1516,11 @@
}
nsIDOMElement getLastSelectedElement() {
- // TODO Max Areshkau figure out with last selekted element
-// return browser.getSelectedElement();
- return null;
+ // TODO Max Areshkau figure out with last selected element
+ //in mozilla user can select more than one element, but this
+ //function can return only first element(think about this)
+
+ return (nsIDOMElement)
xulRunnerEditor.getSelection().getAnchorNode().queryInterface(nsIDOMElement.NS_IDOMELEMENT_IID);
}
public void pushIncludeStack(VpeIncludeInfo includeInfo) {
Modified:
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mozilla/MozillaEditor.java
===================================================================
---
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mozilla/MozillaEditor.java 2007-08-17
09:43:22 UTC (rev 3203)
+++
branches/jbosstools_xulrunner/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mozilla/MozillaEditor.java 2007-08-17
10:01:06 UTC (rev 3204)
@@ -62,6 +62,8 @@
import org.mozilla.interfaces.nsIDOMNamedNodeMap;
import org.mozilla.interfaces.nsIDOMNode;
import org.mozilla.interfaces.nsIDOMNodeList;
+import org.mozilla.interfaces.nsISelection;
+import org.mozilla.interfaces.nsISelectionPrivate;
public class MozillaEditor extends EditorPart implements IReusableEditor {
protected static final String INIT_URL = "file://" + (new
File(VpePlugin.getDefault().getResourcePath("ve"),
"init.html")).getAbsolutePath();
@@ -529,20 +531,22 @@
}
private void addSelectionListener() {
- if (contentAreaEventListener != null) {
- // TODO Max Areshkau figure out with selection listener
-// nsISelectionController selectionController = visualEditor.getSelectionController();
-// nsISelection selection =
selectionController.getSelection(nsISelectionController.SELECTION_NORMAL);
-// nsISelectionPrivate selectionPrivate =
selection.queryInterface(nsISelectionPrivate.NS_SELECTIONPRIVATE_IID);
-// selectionPrivate.addSelectionListener(contentAreaEventListener);
+ if (contentAreaEventListener != null&&xulRunnerEditor!=null) {
+
+ nsISelection selection = xulRunnerEditor.getSelection();
+ nsISelectionPrivate selectionPrivate = (nsISelectionPrivate)
selection.queryInterface(nsISelectionPrivate.NS_ISELECTIONPRIVATE_IID);
+ selectionPrivate.addSelectionListener(contentAreaEventListener);
+
}
}
private void removeSelectionListener() {
- // TODO Max Areshkau figure out with selection listener
-// nsISelectionController selectionController = visualEditor.getSelectionController();
-// selectionController.removeSelectionListener(contentAreaEventListener.getSelectionListener());
-// selectionController.Release();
+ if (contentAreaEventListener != null&&xulRunnerEditor!=null) {
+
+ nsISelection selection = xulRunnerEditor.getSelection();
+ nsISelectionPrivate selectionPrivate = (nsISelectionPrivate)
selection.queryInterface(nsISelectionPrivate.NS_ISELECTIONPRIVATE_IID);
+ selectionPrivate.removeSelectionListener(contentAreaEventListener);
+ }
}
public void setSelectionRectangle(nsIDOMElement element, int resizerConstrains, boolean
scroll) {