1
0
Fork 0
mirror of https://github.com/immich-app/immich.git synced 2025-01-10 13:56:47 +01:00
immich/web/src/lib/components/shared-components
Ben b71aa4473b
feat(web): keyboard accessible context menus (#10017)
* feat(web,a11y): context menu keyboard navigation

* wip: all context menus visible

* wip: more migrations to the ButtonContextMenu, usability improvements

* wip: migrate Administration, PeopleCard

* wip: refocus the button on click, docs

* fix: more intuitive RightClickContextMenu

- configurable title
- focus management: tab keys, clicks, closing the menu
- automatically closing when an option is selected

* fix: refining the little details

- adjust the aria attributes
- intuitive escape key propagation
- extract context into its own file

* fix: dropdown options not clickable in a <Portal>

* wip: small fixes

- export selectedColor to prevent unexpected styling
- better context function naming

* chore: revert changes to list navigation, to reduce scope of the PR

* fix: remove topBorder prop

* feat: automatically select the first option on enter or space keypress

* fix: use Svelte store instead to handle selecting menu options

- better prop naming for ButtonContextMenu

* feat: hovering the mouse can change the active element

* fix: remove Portal, more predictable open/close behavior

* feat: make selected item visible using a scroll

- also: minor cleanup of the context-menu-navigation Svelte action

* feat: maintain context menu position on resize

* fix: use the whole padding class as better tailwind convention

* fix: options not announcing with screen reader for ButtonContextMenu

* fix: screen reader announcing right click context menu options

* fix: handle focus out scenario

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-06-17 20:52:38 -07:00
..
context-menu feat(web): keyboard accessible context menus (#10017) 2024-06-17 20:52:38 -07:00
create-share-link-modal fix(web): selecting shared link expiration (#10437) 2024-06-17 08:31:11 -07:00
dialog fix(web): confirm button is disabled if two dialogs are shown subsequently (#10440) 2024-06-17 11:44:25 -07:00
gallery-viewer fix(web): backwards asset navigation in GalleryViewer (#10132) 2024-06-11 15:27:18 +00:00
map feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
navigation-bar fix(web): update avatar color immediately (#10393) 2024-06-16 08:38:32 -07:00
notification chore(web): use development lang for tests (#10025) 2024-06-07 16:12:39 +01:00
portal chore(web): cleanup promise handling (#7382) 2024-02-27 10:37:37 -06:00
progress-bar chore(web): cleanup promise handling (#7382) 2024-02-27 10:37:37 -06:00
scrollbar fix(web): wrong month on timeline scrollbar cursor (#8996) 2024-04-22 06:22:59 -05:00
search-bar feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
settings chore(web): standardize settings labels (#10303) 2024-06-14 02:32:41 -05:00
side-bar fix(web): missing svelte translations (#10199) 2024-06-12 17:37:46 +01:00
album-selection-modal.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
apple-header.svelte chore(web): prettier (#2821) 2023-06-30 23:50:47 -05:00
autogrow-textarea.spec.ts fix(web): set album description textarea height correctly (#9880) 2024-06-01 13:47:14 -04:00
autogrow-textarea.svelte fix(web): set album description textarea height correctly (#9880) 2024-06-01 13:47:14 -04:00
change-date.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
change-location.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
combobox.svelte chore(web): remove unnecessary input.select for lang selector (#10273) 2024-06-13 12:44:06 +00:00
control-app-bar.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
drag-and-drop-upload-overlay.svelte fix(web): drag and drop with non english language (#10040) 2024-06-08 04:57:46 -05:00
dropdown-button.svelte fix(web): selecting shared link expiration (#10437) 2024-06-17 08:31:11 -07:00
empty-placeholder.svelte fix(web): small fixes for empty placeholder (#7859) 2024-03-11 21:18:47 -04:00
focus-trap.svelte refactor(web): svelte actions (#9701) 2024-05-23 12:56:48 -05:00
full-screen-modal.svelte chore(web): simpler unique ID generation (#9945) 2024-06-02 12:41:44 -04:00
fullscreen-container.svelte fix(web): FullScreenContainer logo (#7938) 2024-03-14 02:00:22 +00:00
immich-logo-small-link.svelte fix(web): update password-protected share logo size (#9567) 2024-05-28 09:10:53 +07:00
immich-logo.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
loading-spinner.svelte fix: use loading spinner for library spinner (#6116) 2024-01-01 22:10:48 -05:00
modal-header.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
navigation-loading-bar.svelte feat(web): assets now have a permanent URL (#8532) 2024-04-24 19:24:19 +00:00
password-field.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
profile-image-cropper.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
show-shortcuts.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
status-box.svelte refactor(web): byte unit utils (#10332) 2024-06-14 17:27:46 +00:00
theme-button.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
upload-asset-preview.svelte refactor(web): byte unit utils (#10332) 2024-06-14 17:27:46 +00:00
upload-panel.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00
user-avatar.svelte fix(web): update avatar color immediately (#10393) 2024-06-16 08:38:32 -07:00
version-announcement-box.svelte feat(web): translations (#9854) 2024-06-04 15:53:00 -04:00