From e061da54c26aed2c831bbd6d2a766daa9c7b10f1 Mon Sep 17 00:00:00 2001 From: "Mr. E23" Date: Mon, 2 Feb 2004 11:57:30 +0000 Subject: [PATCH] insertTags() now ignores any final space character in the selection (normally caused by double-clicking a word) --- stylesheets/wikibits.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/stylesheets/wikibits.js b/stylesheets/wikibits.js index a76aeb2515..d7dcf7acec 100644 --- a/stylesheets/wikibits.js +++ b/stylesheets/wikibits.js @@ -126,14 +126,24 @@ function insertTags(tagOpen, tagClose, sampleText) { var theSelection = document.selection.createRange().text; if(!theSelection) { theSelection=sampleText;} txtarea.focus(); - document.selection.createRange().text = tagOpen + theSelection + tagClose; + if(theSelection.charAt(theSelection.length - 1) == " "){// exclude ending space char, if any + theSelection = theSelection.substring(0, theSelection.length - 1); + document.selection.createRange().text = tagOpen + theSelection + tagClose + " "; + } else { + document.selection.createRange().text = tagOpen + theSelection + tagClose; + } // Mozilla } else if(txtarea.selectionStart || txtarea.selectionStart == '0') { var startPos = txtarea.selectionStart; var endPos = txtarea.selectionEnd; var myText = (txtarea.value).substring(startPos, endPos); if(!myText) { myText=sampleText;} - txtarea.value = txtarea.value.substring(0, startPos) + tagOpen + myText + tagClose + txtarea.value.substring(endPos, txtarea.value.length); + if(myText.charAt(myText.length - 1) == " "){ // exclude ending space char, if any + subst = tagOpen + myText.substring(0, (myText.length - 1)) + tagClose + " "; + } else { + subst = tagOpen + myText + tagClose; + } + txtarea.value = txtarea.value.substring(0, startPos) + subst + txtarea.value.substring(endPos, txtarea.value.length); txtarea.focus(); var cPos=startPos+(tagOpen.length+myText.length+tagClose.length); txtarea.selectionStart=cPos; -- 2.20.1