r1641 - branches/bxe_2_0/mozile
[email protected] Sun, 26 Nov 2006 17:07:29 +0100 (CET)
| Newsgroups | gmane.editors.bitflux.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: chregu
Date: Sun Nov 26 17:07:27 2006
New Revision: 1641
Modified:
branches/bxe_2_0/mozile/mozCE.js
branches/bxe_2_0/mozile/mozilekb.js
Log:
fix #353
different behaviour on fully selected text, if it had inline elements
Modified: branches/bxe_2_0/mozile/mozCE.js
==============================================================================
--- branches/bxe_2_0/mozile/mozCE.js (original)
+++ branches/bxe_2_0/mozile/mozCE.js Sun Nov 26 17:07:27 2006
@@ -190,7 +190,7 @@
* it is unlikely to work for semantically rich and restrictive XML. Deletion of an XML document would have to pay
* attention to that document's semantics.
*/
-Selection.prototype.deleteSelection = function(backspace)
+Selection.prototype.deleteSelection = function(backspace, makeDefault)
{
var cssr = this.getEditableRange();
var doTransform = false;
@@ -201,7 +201,8 @@
{
if (cssr.startContainer.nodeValue.strip().length == 1) {
try {
- var sel = window.getSelection();
+
+ var sel = window.getSelection();
cssr = this.getEditableRange();
var par = cssr.startContainer.parentNode.XMLNode._node;
par.normalize();
@@ -218,11 +219,10 @@
return true;
}
}
- if (! (par.XMLNode.vdom.bxeTabletype == "table-cell" || par.XMLNode.vdom.bxeTabletype == "table-col" )){
+ if (!makeDefault && (! (par.XMLNode.vdom.bxeTabletype == "table-cell" || par.XMLNode.vdom.bxeTabletype == "table-col" ))){
+ //FIXME ondelete
parpar.removeChild(par);
} else {
- //par.appendChild(document.createTextNode(" "));
- //par.removeChild(par.firstChild);
par.XMLNode.makeDefaultNodes();
}
@@ -234,15 +234,15 @@
}
parpar.normalize();
var _h = par.XMLNode._htmlnode;
-
- var _pref = bxe_goToNextNode(cssr,true);
- if (_pref && _pref.nodeType == 1) {_pref = _pref.lastChild;}
- if (_pref && _pref.nodeValue) {
- sel.collapse(_pref,_pref.nodeValue.length);
- } else {
- //alert(_pref);
+ if (!makeDefault) {
+ var _pref = bxe_goToNextNode(cssr,true);
+ if (_pref && _pref.nodeType == 1) {_pref = _pref.lastChild;}
+ if (_pref && _pref.nodeValue) {
+ sel.collapse(_pref,_pref.nodeValue.length);
+ } else {
+ //alert(_pref);
+ }
}
-
sel.collapseToStart();
bxe_Transform();
Modified: branches/bxe_2_0/mozile/mozilekb.js
==============================================================================
--- branches/bxe_2_0/mozile/mozilekb.js (original)
+++ branches/bxe_2_0/mozile/mozilekb.js Sun Nov 26 17:07:27 2006
@@ -596,13 +596,13 @@
sel.extend(sel.focusNode,_pos);
}
-
if (sel.anchorNode.nodeType == 3 && sel.anchorOffset == 0) {
// if only one textnode and fully selected
-
+
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 = bxe_getXMLNodeByHTMLNodeRecursive(sel.anchorNode.parentNode);
@@ -642,8 +642,7 @@
sel = window.getSelection();
bxe_deleteWholeSelection(sel,backspace);
-
- sel.deleteSelection(false);
+ sel.deleteSelection(false,true);
try {
if (_par.childNodes.length == 1 && _par.firstChild.nodeValue.strip().length == 0) {
_par.removeChild(_par.firstChild);
@@ -651,6 +650,7 @@
}
} catch(e) {
+ //console.log(e);
}
--
Bx-editor-cvs mailing list
[email protected]
http://lists.bitflux.ch/cgi-bin/listinfo/bx-editor-cvs