[25.1] Add Keyboard Navigation to History Lists#21035
Merged
bgruening merged 9 commits intogalaxyproject:release_25.1from Oct 14, 2025
Merged
[25.1] Add Keyboard Navigation to History Lists#21035bgruening merged 9 commits intogalaxyproject:release_25.1from
bgruening merged 9 commits intogalaxyproject:release_25.1from
Conversation
Extends keyboard deletion functionality to include Backspace key on Mac alongside Delete key on Windows.
Introduces a clickable prop to enable keyboard interaction with history cards. Adds new event handlers for click and keydown events that emit appropriate events when the card is in clickable mode.
Enhances the history card list component with keyboard navigation capabilities by adding clickable props, item references for focus management, and range selection anchor highlighting. Introduces new event handlers for keyboard interactions and card clicks to enable accessible navigation through history entries. Adds visual styling for range selection anchor with primary color shadow to improve user feedback during keyboard navigation.
Replaces manual selection state management with a centralized composable that provides consistent selection behavior across components. Adds keyboard navigation support and range selection functionality for improved user experience when managing multiple histories. Simplifies bulk operations by leveraging standardized selection methods and automatic cleanup.
Introduces a new highlighted prop to enable visual highlighting of cards, useful for indicating selection anchors or drawing attention to specific items. Applies a subtle box shadow when the card is highlighted to provide clear visual feedback without being intrusive.
Replaces CSS class-based highlighting with a dedicated highlighted prop for better component encapsulation and maintainability. Removes custom CSS styling and ESLint disable comment while consolidating the highlighting logic into the component's prop system.
Replaces CSS class-based highlighting with a dedicated highlighted prop for better component encapsulation and maintainability. Removes hardcoded styling logic from the parent component and moves the highlighting responsibility to the card component itself.
Adds event.stopPropagation() calls to keyboard event handlers to prevent events from bubbling up to parent elements when the card handles Enter, Space, or other key interactions.
3 tasks
jmchilton
approved these changes
Oct 14, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #21030
xref: #19973
This pull request adds keyboard navigation and selection capabilities to the history lists.
clickableandhighlightedprops toGCardinstead of handling them in several componentsbackspacekey when using a Mac for the delete actionHow to test the changes?
(Select all options that apply)
delete/backspacekeyLicense