r1625 - branches/bxe_2_0/mozile

[email protected] Fri, 10 Nov 2006 15:32:44 +0100 (CET)
Newsgroups gmane.editors.bitflux.cvs
Message-ID <[email protected]>
Author: chregu
Date: Fri Nov 10 15:32:43 2006
New Revision: 1625

Modified:
   branches/bxe_2_0/mozile/mozCE.js
   branches/bxe_2_0/mozile/mozilekb.js
Log:
selection stuff, once more

Modified: branches/bxe_2_0/mozile/mozCE.js
==============================================================================
--- branches/bxe_2_0/mozile/mozCE.js	(original)
+++ branches/bxe_2_0/mozile/mozCE.js	Fri Nov 10 15:32:43 2006
@@ -246,6 +246,7 @@
 				}
 				
 				sel.collapseToStart();
+				
 				bxe_Transform();
 				return;
 				
@@ -253,7 +254,6 @@
 			sel.collapse(cssr.startContainer,0);
 			
 			sel.extend(cssr.startContainer,cssr.startContainer.length);
-			
 			sel.deleteSelection(backspace);
 			
 			return;
@@ -362,9 +362,17 @@
 				endxmlnode.betterNormalize();
 				var _endposition = bxe_getChildPosition(this.focusNode);
 				var endtextNode = endxmlnode.childNodes[_endposition ];
-				endtextNode.splitText(this.focusOffset);
-				
-				
+				if(endtextNode.splitText) {
+					endtextNode.splitText(this.focusOffset);
+				} else {
+					var _next = endtextNode.childNodes[this.focusOffset];
+					if (_next && _next.nodeType == 3) {
+						endtextNode = _next;
+						endtextNode.splitText(0);
+						endxmlnode = endtextNode.parentNode;
+					}
+				}
+					
 				var walker = document.createTreeWalker(
 				textNode.ownerDocument.documentElement, NodeFilter.SHOW_ALL,
 				null, 
@@ -379,6 +387,8 @@
 					}
 					oldnode = node;
 					node =   walker.nextNode();
+					console.log("--_");
+					console.log(node);
 					if (!(oldnode.compareDocumentPosition(endtextNode) & Node.DOCUMENT_POSITION_CONTAINED_BY)) {
 						oldnode.parentNode.removeChild(oldnode);
 					}
@@ -391,12 +401,10 @@
 				textNode.splitText(this.focusOffset);
 			}
 			textNode = textNode.splitText(this.anchorOffset);
-			
 			// delete last node
 			if (this.anchorNode != this.focusNode) {
 				
 				//endxmlnode.betterNormalize();
-				
 				endxmlnode.removeChild(endtextNode);
 				var blockparent = xmlnode.getBlockParent();
 				var endblockparent = endxmlnode.getBlockParent();
@@ -416,7 +424,6 @@
 				}
 			}
 			if (textNode.parentNode == xmlnode) {
-				
 				xmlnode.removeChild(textNode);
 				xmlnode.betterNormalize();
 				if (xmlnode.childNodes.length == 0)  {

Modified: branches/bxe_2_0/mozile/mozilekb.js
==============================================================================
--- branches/bxe_2_0/mozile/mozilekb.js	(original)
+++ branches/bxe_2_0/mozile/mozilekb.js	Fri Nov 10 15:32:43 2006
@@ -655,10 +655,10 @@
 						} else {
 							if (_par.childNodes.length == 1) {
 								_par.removeChild(_par.firstChild);
+								_par.XMLNode.makeDefaultNodes();
 							} else {
-								_par.removeChild(xmlnode);
+								_par.replaceChild(_par.ownerDocument.createTextNode(" "),xmlnode);
 							}
-							_par.XMLNode.makeDefaultNodes();
 						}
 						
 						
-- 
Bx-editor-cvs mailing list
[email protected]
http://lists.bitflux.ch/cgi-bin/listinfo/bx-editor-cvs