| OLD | NEW |
| 1 <html> | 1 <html> |
| 2 <head> | 2 <head> |
| 3 <script> | 3 <script> |
| 4 | 4 |
| 5 var apiHandle; | 5 var apiHandle; |
| 6 var onnativesuggestioncalls = 0; | 6 var onnativesuggestioncalls = 0; |
| 7 var onsubmitcalls = 0; | 7 var onsubmitcalls = 0; |
| 8 var savedUserText = null; | 8 var savedUserText = null; |
| 9 var suggestionIndex = -1; | 9 var suggestionIndex = -1; |
| 10 var suggestions = ["result 1", "result 2", "result 3"]; | 10 var suggestions = ["result 1", "result 2", "result 3"]; |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 42 if (suggestionIndex < suggestions.length - 1) { | 42 if (suggestionIndex < suggestions.length - 1) { |
| 43 suggestionIndex++; | 43 suggestionIndex++; |
| 44 apiHandle.setValue(suggestions[suggestionIndex]); | 44 apiHandle.setValue(suggestions[suggestionIndex]); |
| 45 } | 45 } |
| 46 } | 46 } |
| 47 | 47 |
| 48 function previousSuggestion() { | 48 function previousSuggestion() { |
| 49 if (suggestionIndex != -1) { | 49 if (suggestionIndex != -1) { |
| 50 suggestionIndex--; | 50 suggestionIndex--; |
| 51 if (suggestionIndex == -1) { | 51 if (suggestionIndex == -1) { |
| 52 apiHandle.setValue(savedUserText); | 52 resetSuggestion(); |
| 53 } else { | 53 } else { |
| 54 apiHandle.setValue(suggestions[suggestionIndex]); | 54 apiHandle.setValue(suggestions[suggestionIndex]); |
| 55 } | 55 } |
| 56 } | 56 } |
| 57 } | 57 } |
| 58 | 58 |
| 59 function resetSuggestion() { |
| 60 apiHandle.setValue(savedUserText); |
| 61 suggestionIndex = -1; |
| 62 } |
| 63 |
| 59 function handleKeyPress(event) { | 64 function handleKeyPress(event) { |
| 60 var VKEY_UP = 0x26; | 65 var VKEY_UP = 0x26; |
| 61 var VKEY_DOWN = 0x28; | 66 var VKEY_DOWN = 0x28; |
| 67 var VKEY_ESCAPE = 0x1B; |
| 62 | 68 |
| 63 if (event.keyCode == VKEY_DOWN) { | 69 if (event.keyCode == VKEY_DOWN) { |
| 64 nextSuggestion(); | 70 nextSuggestion(); |
| 65 } else if (event.keyCode == VKEY_UP) { | 71 } else if (event.keyCode == VKEY_UP) { |
| 66 previousSuggestion(); | 72 previousSuggestion(); |
| 73 } else if (event.keyCode == VKEY_ESCAPE) { |
| 74 resetSuggestion(); |
| 67 } | 75 } |
| 68 } | 76 } |
| 69 | 77 |
| 70 function setUp() { | 78 function setUp() { |
| 71 apiHandle = getApiHandle(); | 79 apiHandle = getApiHandle(); |
| 72 apiHandle.onnativesuggestions = handleNativeSuggestions; | 80 apiHandle.onnativesuggestions = handleNativeSuggestions; |
| 73 apiHandle.onsubmit = handleSubmit; | 81 apiHandle.onsubmit = handleSubmit; |
| 74 apiHandle.onchange = handleOnChange; | 82 apiHandle.onchange = handleOnChange; |
| 75 apiHandle.onkeypress = handleKeyPress; | 83 apiHandle.onkeypress = handleKeyPress; |
| 76 if (apiHandle.value) { | 84 if (apiHandle.value) { |
| 77 handleNativeSuggestions(); | 85 handleNativeSuggestions(); |
| 78 handleOnChange(); | 86 handleOnChange(); |
| 79 } | 87 } |
| 80 } | 88 } |
| 81 | 89 |
| 82 setUp(); | 90 setUp(); |
| 83 | 91 |
| 84 </script> | 92 </script> |
| 85 </head> | 93 </head> |
| 86 <body> | 94 <body> |
| 87 <h1>Instant</h1> | 95 <h1>Instant</h1> |
| 88 </body> | 96 </body> |
| 89 </html> | 97 </html> |
| OLD | NEW |