|
239 | 239 | } |
240 | 240 | } |
241 | 241 |
|
242 | | - function handleShortcut(ev) { |
243 | | - if (document.activeElement.tagName === "INPUT" && |
244 | | - hasClass(document.getElementById('main'), "hidden")) { |
245 | | - return; |
| 242 | + function handleEscape(ev, help) { |
| 243 | + hideModal(); |
| 244 | + var search = document.getElementById("search"); |
| 245 | + if (!hasClass(help, "hidden")) { |
| 246 | + displayHelp(false, ev); |
| 247 | + } else if (!hasClass(search, "hidden")) { |
| 248 | + ev.preventDefault(); |
| 249 | + addClass(search, "hidden"); |
| 250 | + removeClass(document.getElementById("main"), "hidden"); |
246 | 251 | } |
| 252 | + defocusSearchBar(); |
| 253 | + } |
247 | 254 |
|
| 255 | + function handleShortcut(ev) { |
248 | 256 | // Don't interfere with browser shortcuts |
249 | 257 | if (ev.ctrlKey || ev.altKey || ev.metaKey) { |
250 | 258 | return; |
251 | 259 | } |
252 | 260 |
|
253 | 261 | var help = document.getElementById("help"); |
254 | | - switch (getVirtualKey(ev)) { |
255 | | - case "Escape": |
256 | | - hideModal(); |
257 | | - var search = document.getElementById("search"); |
258 | | - if (!hasClass(help, "hidden")) { |
259 | | - displayHelp(false, ev); |
260 | | - } else if (!hasClass(search, "hidden")) { |
261 | | - ev.preventDefault(); |
262 | | - addClass(search, "hidden"); |
263 | | - removeClass(document.getElementById("main"), "hidden"); |
| 262 | + if (document.activeElement.tagName === "INPUT") { |
| 263 | + switch (getVirtualKey(ev)) { |
| 264 | + case "Escape": |
| 265 | + handleEscape(ev, help); |
| 266 | + break; |
264 | 267 | } |
265 | | - defocusSearchBar(); |
266 | | - break; |
| 268 | + } else { |
| 269 | + switch (getVirtualKey(ev)) { |
| 270 | + case "Escape": |
| 271 | + handleEscape(ev, help); |
| 272 | + break; |
267 | 273 |
|
268 | | - case "s": |
269 | | - case "S": |
270 | | - displayHelp(false, ev); |
271 | | - hideModal(); |
272 | | - ev.preventDefault(); |
273 | | - focusSearchBar(); |
274 | | - break; |
| 274 | + case "s": |
| 275 | + case "S": |
| 276 | + displayHelp(false, ev); |
| 277 | + hideModal(); |
| 278 | + ev.preventDefault(); |
| 279 | + focusSearchBar(); |
| 280 | + break; |
275 | 281 |
|
276 | | - case "+": |
277 | | - case "-": |
278 | | - ev.preventDefault(); |
279 | | - toggleAllDocs(); |
280 | | - break; |
| 282 | + case "+": |
| 283 | + case "-": |
| 284 | + ev.preventDefault(); |
| 285 | + toggleAllDocs(); |
| 286 | + break; |
281 | 287 |
|
282 | | - case "?": |
283 | | - if (ev.shiftKey) { |
284 | | - hideModal(); |
285 | | - displayHelp(true, ev); |
| 288 | + case "?": |
| 289 | + if (ev.shiftKey) { |
| 290 | + hideModal(); |
| 291 | + displayHelp(true, ev); |
| 292 | + } |
| 293 | + break; |
286 | 294 | } |
287 | | - break; |
288 | 295 | } |
289 | 296 | } |
290 | 297 |
|
|
0 commit comments