File tree Expand file tree Collapse file tree 3 files changed +15
-2
lines changed
data-browser/src/components Expand file tree Collapse file tree 3 files changed +15
-2
lines changed Original file line number Diff line number Diff line change @@ -27,6 +27,8 @@ interface DropdownMenuProps {
27
27
/** The list of menu items */
28
28
items : Item [ ] ;
29
29
trigger : DropdownTriggerRenderFunction ;
30
+ /** Enables the keyboard shortcut */
31
+ isMainMenu ?: boolean ;
30
32
}
31
33
32
34
/** Gets the index of an array and loops around when at the beginning or end */
@@ -89,6 +91,7 @@ function normalizeItems(items: Item[]) {
89
91
export function DropdownMenu ( {
90
92
items,
91
93
trigger,
94
+ isMainMenu,
92
95
} : DropdownMenuProps ) : JSX . Element {
93
96
const menuId = useId ( ) ;
94
97
const dropdownRef = useRef < HTMLDivElement > ( null ) ;
@@ -168,7 +171,7 @@ export function DropdownMenu({
168
171
handleToggle ( ) ;
169
172
setUseKeys ( true ) ;
170
173
} ,
171
- { } ,
174
+ { enabled : ! ! isMainMenu } ,
172
175
[ isActive ] ,
173
176
) ;
174
177
// Click / open the item
Original file line number Diff line number Diff line change @@ -211,6 +211,7 @@ function NavBar() {
211
211
/>
212
212
{ showButtons && subject && (
213
213
< ResourceContextMenu
214
+ isMainMenu
214
215
subject = { subject }
215
216
trigger = { MenuBarDropdownTrigger }
216
217
/>
Original file line number Diff line number Diff line change @@ -30,6 +30,8 @@ export interface ResourceContextMenuProps {
30
30
hide ?: string [ ] ;
31
31
trigger ?: DropdownTriggerRenderFunction ;
32
32
simple ?: boolean ;
33
+ /** If it's the primary menu in the navbar. Used for triggering keyboard shortcut */
34
+ isMainMenu ?: boolean ;
33
35
}
34
36
35
37
/** Dropdown menu that opens a bunch of actions for some resource */
@@ -38,6 +40,7 @@ function ResourceContextMenu({
38
40
hide,
39
41
trigger,
40
42
simple,
43
+ isMainMenu,
41
44
} : ResourceContextMenuProps ) {
42
45
const store = useStore ( ) ;
43
46
const navigate = useNavigate ( ) ;
@@ -140,7 +143,13 @@ function ResourceContextMenu({
140
143
141
144
const triggerComp = trigger ?? buildDefaultTrigger ( < FaEllipsisV /> ) ;
142
145
143
- return < DropdownMenu items = { filteredItems } trigger = { triggerComp } /> ;
146
+ return (
147
+ < DropdownMenu
148
+ items = { filteredItems }
149
+ trigger = { triggerComp }
150
+ isMainMenu = { isMainMenu }
151
+ />
152
+ ) ;
144
153
}
145
154
146
155
export default ResourceContextMenu ;
You can’t perform that action at this time.
0 commit comments