Remove openOnHotKeyAction in favor of putting hotkey on the trigger button=

This commit is contained in:
Gregory Schier
2024-03-20 15:56:39 -07:00
parent e2220f771d
commit d2d5f2b957
4 changed files with 11 additions and 20 deletions

View File

@@ -5,14 +5,9 @@ import { Dropdown } from './core/Dropdown';
interface Props { interface Props {
hideFolder?: boolean; hideFolder?: boolean;
children: DropdownProps['children']; children: DropdownProps['children'];
openOnHotKeyAction?: DropdownProps['openOnHotKeyAction'];
} }
export function CreateDropdown({ hideFolder, children, openOnHotKeyAction }: Props) { export function CreateDropdown({ hideFolder, children }: Props) {
const items = useCreateDropdownItems({ hideFolder, hideIcons: true }); const items = useCreateDropdownItems({ hideFolder, hideIcons: true });
return ( return <Dropdown items={items}>{children}</Dropdown>;
<Dropdown openOnHotKeyAction={openOnHotKeyAction} items={items}>
{children}
</Dropdown>
);
} }

View File

@@ -41,10 +41,6 @@ export function RecentRequestsDropdown({ className }: Pick<ButtonProps, 'classNa
dropdownRef.current?.prev?.(); dropdownRef.current?.prev?.();
}); });
useHotKey('request_switcher.toggle', () => {
dropdownRef.current?.toggle();
});
const items = useMemo<DropdownItem[]>(() => { const items = useMemo<DropdownItem[]>(() => {
if (activeWorkspaceId === null) return []; if (activeWorkspaceId === null) return [];
@@ -87,6 +83,7 @@ export function RecentRequestsDropdown({ className }: Pick<ButtonProps, 'classNa
<Button <Button
data-tauri-drag-region data-tauri-drag-region
size="sm" size="sm"
hotkeyAction="request_switcher.toggle"
className={classNames( className={classNames(
className, className,
'text-gray-800 text-sm truncate pointer-events-auto', 'text-gray-800 text-sm truncate pointer-events-auto',

View File

@@ -25,8 +25,13 @@ export const SidebarActions = memo(function SidebarActions() {
hotkeyAction="sidebar.toggle" hotkeyAction="sidebar.toggle"
icon={hidden ? 'leftPanelHidden' : 'leftPanelVisible'} icon={hidden ? 'leftPanelHidden' : 'leftPanelVisible'}
/> />
<CreateDropdown openOnHotKeyAction="http_request.create"> <CreateDropdown>
<IconButton size="sm" icon="plusCircle" title="Add Resource" /> <IconButton
size="sm"
icon="plusCircle"
title="Add Resource"
hotkeyAction="http_request.create"
/>
</CreateDropdown> </CreateDropdown>
</HStack> </HStack>
); );

View File

@@ -55,7 +55,6 @@ export type DropdownItem = DropdownItemDefault | DropdownItemSeparator;
export interface DropdownProps { export interface DropdownProps {
children: ReactElement<HTMLAttributes<HTMLButtonElement>>; children: ReactElement<HTMLAttributes<HTMLButtonElement>>;
items: DropdownItem[]; items: DropdownItem[];
openOnHotKeyAction?: HotkeyAction;
onOpen?: () => void; onOpen?: () => void;
onClose?: () => void; onClose?: () => void;
} }
@@ -71,7 +70,7 @@ export interface DropdownRef {
} }
export const Dropdown = forwardRef<DropdownRef, DropdownProps>(function Dropdown( export const Dropdown = forwardRef<DropdownRef, DropdownProps>(function Dropdown(
{ children, items, openOnHotKeyAction, onOpen, onClose }: DropdownProps, { children, items, onOpen, onClose }: DropdownProps,
ref, ref,
) { ) {
const [isOpen, _setIsOpen] = useState<boolean>(false); const [isOpen, _setIsOpen] = useState<boolean>(false);
@@ -88,11 +87,6 @@ export const Dropdown = forwardRef<DropdownRef, DropdownProps>(function Dropdown
[onClose, onOpen], [onClose, onOpen],
); );
useHotKey(openOnHotKeyAction ?? null, () => {
setIsOpen(true);
menuRef.current?.next?.();
});
useImperativeHandle(ref, () => ({ useImperativeHandle(ref, () => ({
...menuRef.current, ...menuRef.current,
isOpen: isOpen, isOpen: isOpen,