aboutsummaryrefslogtreecommitdiffstats
path: root/migemized_find.js
diff options
context:
space:
mode:
authoranekos2008-08-22 21:50:15 +0000
committeranekos2008-08-22 21:50:15 +0000
commitbd0e3c1d24254663aa88b944d450da30d7f9e3b6 (patch)
tree82a1d9ddbd88bc19c3f768d469223d4ae872e149 /migemized_find.js
parenta257e8195f2656692749ae294971c691deabb9dc (diff)
downloadvimperator-plugins-bd0e3c1d24254663aa88b944d450da30d7f9e3b6.tar.bz2
後方検索できなかったのを修正
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@18093 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'migemized_find.js')
-rw-r--r--migemized_find.js15
1 files changed, 14 insertions, 1 deletions
diff --git a/migemized_find.js b/migemized_find.js
index ebad31e..255e91c 100644
--- a/migemized_find.js
+++ b/migemized_find.js
@@ -107,6 +107,19 @@
find: function (str, backwards, range, start, end) {
if (!range)
range = this.defaultRange;
+
+ if (!start) {
+ start = range.startContainer.ownerDocument.createRange();
+ start.setStartBefore(range.startContainer);
+ }
+ if (!end) {
+ end = range.endContainer.ownerDocument.createRange();
+ end.setEndAfter(range.endContainer);
+ }
+
+ if (backwards)
+ [start, end] = [end, start];
+
try {
return XMigemoCore.regExpFind(str, 'i', range, start, end, backwards);
} catch (e) {
@@ -146,7 +159,7 @@
if (last) {
if (backwards) {
end = last.cloneRange();
- end.setStart(last.endContainer, last.endOffset);
+ end.setEnd(last.startContainer, last.startOffset);
} else {
start = last.cloneRange();
start.setStart(last.endContainer, last.endOffset);