aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CREDITS1
-rw-r--r--vimiumFrontend.js21
2 files changed, 19 insertions, 3 deletions
diff --git a/CREDITS b/CREDITS
index a60d0a7c..b7a8d149 100644
--- a/CREDITS
+++ b/CREDITS
@@ -30,5 +30,6 @@ Contributors:
Wang Ning <daning106@gmail.com> (github:daning)
Bernardo B. Marques <bernardo.fire@gmail.com> (github: bernardofire)
Niklas Baumstark <niklas.baumstark@gmail.com> (github: niklasb)
+ Ângelo Otávio Nuffer Nunes <angelonuffer@gmail.com> (github: angelonuffer)
Feel free to add real names in addition to GitHub usernames.
diff --git a/vimiumFrontend.js b/vimiumFrontend.js
index e217e955..a22cbd8f 100644
--- a/vimiumFrontend.js
+++ b/vimiumFrontend.js
@@ -8,6 +8,7 @@ var getCurrentUrlHandlers = []; // function(url)
var insertModeLock = null;
var findMode = false;
+var findModeMatchIndex = 0;
var findModeQuery = "";
var findModeQueryHasResults = false;
var isShowingHelpDialog = false;
@@ -339,7 +340,7 @@ function copyCurrentUrl() {
var getCurrentUrlPort = chrome.extension.connect({ name: "getCurrentTabUrl" });
getCurrentUrlPort.postMessage({});
- HUD.showForDuration("Yanked URL", 1000);
+ HUD.showForDuration("Yanked URL", 1000);
}
function toggleViewSourceCallback(url) {
@@ -619,8 +620,8 @@ function handleDeleteForFindMode() {
}
function handleEnterForFindMode() {
- exitFindMode();
performFindInPlace();
+ exitFindMode();
}
function performFindInPlace() {
@@ -639,7 +640,21 @@ function performFindInPlace() {
}
function executeFind(backwards) {
- findModeQueryHasResults = window.find(findModeQuery, false, backwards, true, false, true, false);
+ var pattern = new RegExp(findModeQuery, "g");
+ var text = document.body.textContent;
+ var result = text.match(pattern);
+ if ( ! findMode )
+ if (backwards)
+ if (findModeMatchIndex > 0)
+ findModeMatchIndex -= 1;
+ else
+ findModeMatchIndex = result.length - 1;
+ else
+ if (findModeMatchIndex < result.length - 1)
+ findModeMatchIndex += 1;
+ else
+ findModeMatchIndex = 0;
+ findModeQueryHasResults = window.find(result[findModeMatchIndex], false, backwards, true, false, true, false);
}
function focusFoundLink() {