diff --git a/src/renderer/components/item-card/item-card.tsx b/src/renderer/components/item-card/item-card.tsx index b5ec28eae..da130f8ca 100644 --- a/src/renderer/components/item-card/item-card.tsx +++ b/src/renderer/components/item-card/item-card.tsx @@ -183,11 +183,12 @@ const CompactItemCard = ({ }; const handleContextMenu = (e: React.MouseEvent) => { - if (!data || !controls || !internalState) { + if (!data || !controls) { return; } e.preventDefault(); + controls.onMore?.({ event: e, internalState, @@ -337,11 +338,12 @@ const DefaultItemCard = ({ }; const handleContextMenu = (e: React.MouseEvent) => { - if (!data || !controls || !internalState) { + if (!data || !controls) { return; } e.preventDefault(); + controls.onMore?.({ event: e, internalState, @@ -536,11 +538,12 @@ const PosterItemCard = ({ }; const handleContextMenu = (e: React.MouseEvent) => { - if (!data || !controls || !internalState) { + if (!data || !controls) { return; } e.preventDefault(); + controls.onMore?.({ event: e, internalState, diff --git a/src/renderer/components/item-list/helpers/item-list-controls.ts b/src/renderer/components/item-list/helpers/item-list-controls.ts index eaf66f981..f267e7f99 100644 --- a/src/renderer/components/item-list/helpers/item-list-controls.ts +++ b/src/renderer/components/item-list/helpers/item-list-controls.ts @@ -232,10 +232,18 @@ export const useDefaultItemListControls = (args?: UseDefaultItemListControlsArgs }, onMore: ({ event, internalState, item, itemType }: DefaultItemControlProps) => { - if (!item || !internalState || !event) { + if (!item || !event) { return; } + // If no internalState, call ContextMenuController directly + if (!internalState) { + return ContextMenuController.call({ + cmd: { items: [item] as any[], type: itemType as any }, + event, + }); + } + const rowId = internalState.extractRowId(item); if (!rowId) return;