r1619 - branches/bxe_2_0/mozile
[email protected] Thu, 9 Nov 2006 06:58:48 +0100 (CET)
| Newsgroups | gmane.editors.bitflux.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: chregu
Date: Thu Nov 9 06:58:46 2006
New Revision: 1619
Modified:
branches/bxe_2_0/mozile/mozCE.js
branches/bxe_2_0/mozile/mozilekb.js
Log:
some more selection fixes
Modified: branches/bxe_2_0/mozile/mozCE.js
==============================================================================
--- branches/bxe_2_0/mozile/mozCE.js (original)
+++ branches/bxe_2_0/mozile/mozCE.js Thu Nov 9 06:58:46 2006
@@ -349,6 +349,8 @@
if (xmlnode.nodeType == 2) {
//FIXME 2.0
//xmlnode._node.value = xmlnode._node.ownerElement.getContent();
+ cssr.extractContentsByCSS();
+ xmlnode.nodeValue = this.anchorNode.nodeValue;
} else {
var _position = bxe_getChildPosition(this.anchorNode);
Modified: branches/bxe_2_0/mozile/mozilekb.js
==============================================================================
--- branches/bxe_2_0/mozile/mozilekb.js (original)
+++ branches/bxe_2_0/mozile/mozilekb.js Thu Nov 9 06:58:46 2006
@@ -474,7 +474,7 @@
node = walker.nextNode();
}
do {
- if (node.userModifiable && node.XMLNode && node.XMLNode.canHaveText) {
+ if (node.userModifiable && node.XMLNode && ( node.XMLNode.canHaveText || node.hasAttribute("__bxe_attribute"))) {
try {
sel.collapse(node.firstChild,0);
} catch (e) {
@@ -526,10 +526,6 @@
}
var par = cssr.startContainer.parentNode;
- var bxid = par.getAttribute("__bxe_id");
- if (!bxid) {
- return false;
- }
// if there's a selection then delete it
if(!cssr.collapsed)
@@ -552,7 +548,6 @@
sel.collapse(_node.firstChild,0);
cssr = sel.getRangeAt(0);
par = cssr.startContainer.parentNode;
- bxid = par.getAttribute("__bxe_id");
}
@@ -573,7 +568,6 @@
} else {
startC.insertData(startOff, _ch);
}
-
sel.collapse(startC,startOff+1);
var lala = bxe_getXMLNodeByHTMLNodeRecursive(par);
if (lala.nodeType == 2 ) {
@@ -592,6 +586,7 @@
//try again with normalized
textNode.parentNode.betterNormalize();
textNode.insertData(startOff , _ch);
+
}
//textNode._childPosition = _position;
}
@@ -620,10 +615,10 @@
sel.deleteSelection(backspace);
return true;
}
+
//switch focus and anchor, if focus is before anchor
-
+
sel.fixFocus();
-
if (sel.anchorOffset >= sel.anchorNode.nodeValue.strip().length) {
var _pos = sel.focusOffset;
sel.collapse(sel.focusNode,0);
@@ -635,11 +630,22 @@
if (sel.anchorNode == sel.focusNode) {
if (sel.focusOffset >= sel.anchorNode.nodeValue.strip().length) {
var xmlnode = bxe_getXMLNodeByHTMLNodeRecursive(sel.anchorNode);
+
//xmlnode.parentNode.appendChild(xmlnode.ownerDocument.createTextNode(" "));
- var _par = xmlnode.parentNode;
+ var _par = bxe_getXMLNodeByHTMLNodeRecursive(sel.anchorNode.parentNode);
if (_par) {
- _par.removeChild(xmlnode);
- _par.XMLNode.makeDefaultNodes();
+ if (_par.nodeType == 2) {
+ if (_par.XMLNode.vdom && _par.XMLNode.vdom.bxeDefaultcontent) {
+ _par.nodeValue = _par.XMLNode.vdom.bxeDefaultcontent;
+ } else {
+ _par.nodeValue = "#";
+
+ }
+ //_par.XMLNode.makeDefaultNodes();
+ } else {
+ _par.removeChild(xmlnode);
+ _par.XMLNode.makeDefaultNodes();
+ }
--
Bx-editor-cvs mailing list
[email protected]
http://lists.bitflux.ch/cgi-bin/listinfo/bx-editor-cvs