Closed obulat closed 1 year ago
Storybook and Tailwind configuration previews: Ready
Storybook: https://wordpress.github.io/openverse-frontend/_preview/2185 Tailwind: https://wordpress.github.io/openverse-frontend/_preview/2185/tailwind
Please note that GitHub pages takes a little time to deploy newly pushed code, if the links above don't work or you see old versions, wait 5 minutes and try again.
You can check the GitHub pages deployment action list to see the current status of the deployments.
Size Change: -2.21 kB (0%)
Total Size: 879 kB
Filename | Size | Change | |
---|---|---|---|
./.nuxt/dist/client/app.js |
141 kB | -354 B (0%) | |
./.nuxt/dist/client/app.modern.js |
116 kB | -396 B (0%) | |
./.nuxt/dist/client/commons/app.js |
87.7 kB | +12 B (0%) | |
./.nuxt/dist/client/commons/app.modern.js |
78.1 kB | +14 B (0%) | |
./.nuxt/dist/client/components/v-all-results-grid.js |
7.46 kB | -75 B (-1%) | |
./.nuxt/dist/client/components/v-all-results-grid.modern.js |
4.96 kB | -98 B (-2%) | |
./.nuxt/dist/client/components/v-external-search-form.js |
1.91 kB | -155 B (-8%) | ✅ |
./.nuxt/dist/client/components/v-external-search-form.modern.js |
1.9 kB | -151 B (-7%) | ✅ |
./.nuxt/dist/client/components/v-image-grid.js |
4.85 kB | -76 B (-2%) | |
./.nuxt/dist/client/components/v-image-grid.modern.js |
2.39 kB | -74 B (-3%) | |
./.nuxt/dist/client/components/v-related-images.modern.js |
2.95 kB | -79 B (-3%) | |
./.nuxt/dist/client/components/v-search-grid.js |
5.74 kB | -143 B (-2%) | |
./.nuxt/dist/client/components/v-search-grid.modern.js |
5.66 kB | -138 B (-2%) | |
./.nuxt/dist/client/components/v-sources-table.js |
16.1 kB | +27 B (0%) | |
./.nuxt/dist/client/components/v-sources-table.modern.js |
16.1 kB | +27 B (0%) | |
./.nuxt/dist/client/pages/image/_id/index.modern.js |
7.27 kB | -54 B (-1%) | |
./.nuxt/dist/client/pages/search.js |
5.02 kB | -86 B (-2%) | |
./.nuxt/dist/client/pages/search.modern.js |
2.52 kB | -90 B (-3%) | |
./.nuxt/dist/client/pages/search/audio.js |
6.07 kB | -85 B (-1%) | |
./.nuxt/dist/client/pages/search/audio.modern.js |
3.58 kB | -78 B (-2%) | |
./.nuxt/dist/client/pages/search/image.js |
563 B | -62 B (-10%) | 👏 |
./.nuxt/dist/client/pages/search/image.modern.js |
2.63 kB | -112 B (-4%) |
@obulat how did you generate the tab-order image? Can you also share what the tab-order looks like for RTL languages?
@dhruvkb it's a firefox feature!
Whoa, that's awesome! In all this time of using Firefox, I never knew about this.
Fixes
Fixes #2125 by @obulat Fixes #2182 by @obulat
Description
This PR moves the sidebar in the DOM order to the position right after the header. Then, using CSS grid, the visual order is changed back to "sidebar on the right". This way, the focus order for keyboard users and for screenreader users is Header -> Filters sidebar -> Main -> Footer.
Normally, using CSS to change the DOM order is bad, but in the case of the search page layout, this actually converts the DOM order into the expected one.
Previously, we used code to manually handle focus after "Tab"/"Shift+Tab" presses on "Filters" button and the last tabbable element in the sidebar and
main
content. However, this only worked for the keyboard navigation, and not the screenreader navigation. This PR allows us to remove the manual focus management code.Changes in the tabbing order
Before
After LTR
After RTL
Testing Instructions
Open the search page. Move focus using your keyboard "Tab" key: after the Filters
Checklist
Update index.md
).main
) or a parent feature branch.[best_practices]: https://git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project#_commit_guidelines
Developer Certificate of Origin
Developer Certificate of Origin
``` Developer Certificate of Origin Version 1.1 Copyright (C) 2004, 2006 The Linux Foundation and its contributors. 1 Letterman Drive Suite D4700 San Francisco, CA, 94129 Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Developer's Certificate of Origin 1.1 By making a contribution to this project, I certify that: (a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or (b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or (c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it. (d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. ```