Cmd jump to request

This commit is contained in:
Gregory Schier
2024-06-09 07:03:16 -07:00
parent 7b2cb64b14
commit dd483dbdd8
7 changed files with 44 additions and 11 deletions

View File

@@ -111,7 +111,7 @@ export function GrpcConnectionLayout({ style }: Props) {
) : messages.length >= 0 ? (
<GrpcConnectionMessagesPane activeRequest={activeRequest} methodType={methodType} />
) : (
<HotKeyList hotkeys={['grpc_request.send', 'sidebar.toggle', 'urlBar.focus']} />
<HotKeyList hotkeys={['grpc_request.send', 'sidebar.focus', 'urlBar.focus']} />
)}
</div>
)

View File

@@ -83,7 +83,7 @@ export const ResponsePane = memo(function ResponsePane({ style, className, activ
>
{activeResponse == null ? (
<HotKeyList
hotkeys={['http_request.send', 'http_request.create', 'sidebar.toggle', 'urlBar.focus']}
hotkeys={['http_request.send', 'http_request.create', 'sidebar.focus', 'urlBar.focus']}
/>
) : isResponseLoading(activeResponse) ? (
<div className="h-full w-full flex items-center justify-center">

View File

@@ -159,6 +159,20 @@ export function Sidebar({ className }: Props) {
return { tree, treeParentMap, selectableRequests, selectedRequest };
}, [activeWorkspace, selectedId, requests, folders, collapsed.value]);
const jumpToRequest = async (index: number) => {
const r = selectableRequests[index];
if (r != null) await handleSelect(r.id);
};
useHotKey('sidebar.jump_1', () => jumpToRequest(0));
useHotKey('sidebar.jump_2', () => jumpToRequest(1));
useHotKey('sidebar.jump_3', () => jumpToRequest(2));
useHotKey('sidebar.jump_4', () => jumpToRequest(3));
useHotKey('sidebar.jump_5', () => jumpToRequest(4));
useHotKey('sidebar.jump_6', () => jumpToRequest(5));
useHotKey('sidebar.jump_7', () => jumpToRequest(6));
useHotKey('sidebar.jump_8', () => jumpToRequest(7));
const focusActiveRequest = useCallback(
(
args: {

View File

@@ -31,7 +31,6 @@ export function SidebarActions() {
className="pointer-events-auto"
size="sm"
title="Show sidebar"
hotkeyAction="sidebar.toggle"
icon={hidden ? 'leftPanelHidden' : 'leftPanelVisible'}
/>
<CreateDropdown hotKeyAction="http_request.create">

View File

@@ -186,7 +186,7 @@ export default function Workspace() {
</div>
) : activeRequest == null ? (
<HotKeyList
hotkeys={['http_request.create', 'sidebar.toggle', 'settings.show']}
hotkeys={['http_request.create', 'sidebar.focus', 'settings.show']}
bottomSlot={
<HStack space={1} justifyContent="center" className="mt-3">
<Button variant="border" size="sm" onClick={() => importData.mutate()}>