From 2eb7943f2aeaec8efc74b16b7bedb56da9913abf Mon Sep 17 00:00:00 2001 From: alecpl <alec@alec.pl> Date: Fri, 23 Apr 2010 07:25:37 -0400 Subject: [PATCH] - code cleanup (mostly identation fixes) --- program/js/tiny_mce/plugins/searchreplace/js/searchreplace.js | 23 ++++++++++++++++++----- 1 files changed, 18 insertions(+), 5 deletions(-) diff --git a/program/js/tiny_mce/plugins/searchreplace/js/searchreplace.js b/program/js/tiny_mce/plugins/searchreplace/js/searchreplace.js index 890eb37..c0a6243 100644 --- a/program/js/tiny_mce/plugins/searchreplace/js/searchreplace.js +++ b/program/js/tiny_mce/plugins/searchreplace/js/searchreplace.js @@ -42,6 +42,9 @@ ca = f[m + '_panel_casesensitivebox'].checked; rs = f['replace_panel_replacestring'].value; + if (s == '') + return; + function fix() { // Correct Firefox graphics glitches r = se.getRng().cloneRange(); @@ -62,12 +65,20 @@ switch (a) { case 'all': + // Move caret to beginning of text + ed.execCommand('SelectAll'); + ed.selection.collapse(true); + if (tinymce.isIE) { while (r.findText(s, b ? -1 : 1, fl)) { r.scrollIntoView(); r.select(); replace(); fo = 1; + + if (b) { + r.moveEnd("character", -(rs.length)); // Otherwise will loop forever + } } tinyMCEPopup.storeSelection(); @@ -79,14 +90,16 @@ } if (fo) - wm.alert(ed.getLang('searchreplace_dlg.allreplaced')); + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.allreplaced')); else - wm.alert(ed.getLang('searchreplace_dlg.notfound')); + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); return; case 'current': - replace(); + if (!ed.selection.isCollapsed()) + replace(); + break; } @@ -102,12 +115,12 @@ r.scrollIntoView(); r.select(); } else - wm.alert(ed.getLang('searchreplace_dlg.notfound')); + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); tinyMCEPopup.storeSelection(); } else { if (!w.find(s, ca, b, false, false, false, false)) - wm.alert(ed.getLang('searchreplace_dlg.notfound')); + tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound')); else fix(); } -- Gitblit v1.9.1