File tree Expand file tree Collapse file tree 4 files changed +230
-376
lines changed
packages/kit-headless/src/components/select Expand file tree Collapse file tree 4 files changed +230
-376
lines changed Original file line number Diff line number Diff line change @@ -216,6 +216,16 @@ export const HSelectItem = component$<SelectItemProps>((props) => {
216216 ? true
217217 : ! context . isListboxOpenSig . value ;
218218 break ;
219+
220+ case 'a' :
221+ if ( e . ctrlKey && context . multiple ) {
222+ for ( const [ index , item ] of context . itemsMapSig . value ) {
223+ if ( ! item . disabled ) {
224+ await selectionManager$ ( index , 'add' ) ;
225+ }
226+ }
227+ }
228+ break ;
219229 }
220230 } ) ;
221231
Original file line number Diff line number Diff line change @@ -92,16 +92,6 @@ export const HSelectTrigger = component$<SelectTriggerProps>((props) => {
9292 ? true
9393 : ! context . isListboxOpenSig . value ;
9494 break ;
95-
96- case 'a' :
97- if ( e . ctrlKey && context . multiple ) {
98- for ( const [ index , item ] of context . itemsMapSig . value ) {
99- if ( ! item . disabled ) {
100- await selectionManager$ ( index , 'add' ) ;
101- }
102- }
103- }
104- break ;
10595 }
10696
10797 /** When initially opening the listbox, we want to grab the first enabled option index */
Original file line number Diff line number Diff line change @@ -35,6 +35,10 @@ export function createTestDriver<T extends DriverLocator>(rootLocator: T) {
3535 return getTrigger ( ) . locator ( '[data-value]' ) ;
3636 } ;
3737
38+ const getHighlightedItem = ( ) => {
39+ return getRoot ( ) . locator ( '[data-highlighted]' ) ;
40+ } ;
41+
3842 const openListbox = async ( key : OpenKeys | 'click' ) => {
3943 await getTrigger ( ) . focus ( ) ;
4044
@@ -59,5 +63,6 @@ export function createTestDriver<T extends DriverLocator>(rootLocator: T) {
5963 getItemAt,
6064 getValueElement,
6165 openListbox,
66+ getHighlightedItem,
6267 } ;
6368}
You can’t perform that action at this time.
0 commit comments