|
16 | 16 | @mouseenter="searchActive = true" |
17 | 17 | /> |
18 | 18 | <input |
19 | | - class="quickAccessInput" |
| 19 | + class="quickAccessInput browser-default" |
20 | 20 | @keydown="onKeypress($event)" |
21 | 21 | @focus="searchActive = true" |
| 22 | + @blur="searchActive = false" |
22 | 23 | v-model="searchTerm" |
23 | 24 | type="text" |
24 | | - tabindex="2" |
| 25 | + tabindex="5" |
25 | 26 | v-focus-if="{ focused: searchActive }" |
26 | 27 | v-tooltips |
27 | 28 | :title="quickAccessTitle" |
@@ -107,6 +108,7 @@ import Site from '../SiteSelector/Site'; |
107 | 108 | import Matomo from '../Matomo/Matomo'; |
108 | 109 | import debounce from '../debounce'; |
109 | 110 | import Tooltips from '../Tooltips/Tooltips'; |
| 111 | +import { closeMobileLeftMenu } from '../SideNav/SideNav'; |
110 | 112 |
|
111 | 113 | const { ListingFormatter } = window; |
112 | 114 |
|
@@ -157,6 +159,7 @@ function scrollFirstElementIntoView(element: HTMLElement) { |
157 | 159 | } |
158 | 160 |
|
159 | 161 | export default defineComponent({ |
| 162 | + name: 'QuickAccess', |
160 | 163 | directives: { |
161 | 164 | FocusAnywhereButHere, |
162 | 165 | FocusIf, |
@@ -257,6 +260,8 @@ export default defineComponent({ |
257 | 260 | this.deactivateSearch(); |
258 | 261 | } else if (isEscKey && areSearchResultsDisplayed) { |
259 | 262 | this.deactivateSearch(); |
| 263 | + } else if (isTabKey) { |
| 264 | + this.searchActive = false; |
260 | 265 | } else { |
261 | 266 | setTimeout(() => { |
262 | 267 | this.searchActive = true; |
@@ -381,12 +386,15 @@ export default defineComponent({ |
381 | 386 | this.makeSureSelectedItemIsInViewport(); |
382 | 387 | }, |
383 | 388 | selectSite(idSite: string|number) { |
| 389 | + this.deactivateSearch(); |
| 390 | + closeMobileLeftMenu(); |
384 | 391 | SitesStore.loadSite(idSite); |
385 | 392 | }, |
386 | 393 | selectMenuItem(index: number) { |
387 | 394 | const target: HTMLElement|null = document.querySelector(`[quick_access='${index}']`); |
388 | 395 | if (target) { |
389 | 396 | this.deactivateSearch(); |
| 397 | + closeMobileLeftMenu(); |
390 | 398 |
|
391 | 399 | const href = target.getAttribute('href'); |
392 | 400 | if (href && href.length > 10 && target && target.click) { |
|
0 commit comments