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