diff options
| author | ilya | 2010-01-03 17:49:49 -0800 |
|---|---|---|
| committer | ilya | 2010-01-03 17:49:49 -0800 |
| commit | cfd02c9f5030252223b8c39d6958beedfeab65b9 (patch) | |
| tree | fd2e6678e743ad3e2c05b9c9cfb2fdfc093d73b3 /vimiumFrontend.js | |
| parent | 9f7d9452a5d8818eaf8f37354d54416e85780a6f (diff) | |
| download | vimium-cfd02c9f5030252223b8c39d6958beedfeab65b9.tar.bz2 | |
Add some UI feedback in the HUD if there are no exact matches for the current search. Fixes #42.
Diffstat (limited to 'vimiumFrontend.js')
| -rw-r--r-- | vimiumFrontend.js | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/vimiumFrontend.js b/vimiumFrontend.js index 06650feb..c055981d 100644 --- a/vimiumFrontend.js +++ b/vimiumFrontend.js @@ -13,6 +13,7 @@ var keyCodes = { ESC: 27, backspace: 8, deleteKey: 46, enter: 13, space: 32 }; var insertMode = false; var findMode = false; var findModeQuery = ""; +var findModeQueryHasResults = false; var keyPort; var settingPort; var saveZoomLevelPort; @@ -347,20 +348,22 @@ function exitInsertMode() { function handleKeyCharForFindMode(keyChar) { findModeQuery = findModeQuery + keyChar; - showFindModeHUDForQuery(); performFindInPlace(); + showFindModeHUDForQuery(); } function handleDeleteForFindMode() { if (findModeQuery.length == 0) + { exitFindMode(); + performFindInPlace(); + } else { findModeQuery = findModeQuery.substring(0, findModeQuery.length - 1); + performFindInPlace(); showFindModeHUDForQuery(); } - - performFindInPlace(); } function handleEnterForFindMode() { @@ -384,15 +387,18 @@ function performFindInPlace() { } function performFind() { - window.find(findModeQuery, false, false, true, false, true, false); + findModeQueryHasResults = window.find(findModeQuery, false, false, true, false, true, false); } function performBackwardsFind() { - window.find(findModeQuery, false, true, true, false, true, false); + findModeQueryHasResults = window.find(findModeQuery, false, true, true, false, true, false); } function showFindModeHUDForQuery() { - HUD.show("/" + insertSpaces(findModeQuery)); + if (findModeQueryHasResults || findModeQuery.length == 0) + HUD.show("/" + insertSpaces(findModeQuery)); + else + HUD.show("/" + insertSpaces(findModeQuery + " (No Matches)")); } /* |
