Keyboard Shortcuts

← Back to Documentation Index

Canonical Timeline is designed to be operated entirely from the keyboard. Every common action has a shortcut. This page is your complete reference.


Discovering Shortcuts

Command Palette

Press Cmd+K (Mac) or Ctrl+K (Windows/Linux) to open the command palette. Search for any page or action by name:

  • Type a page name (e.g., "Timelines") to navigate there.
  • Type an action (e.g., "New Event") to trigger it.
  • Navigate results with / .
  • Select with Enter.
  • Close with Escape.

Cheat Sheet

Press Cmd+Shift+K (or Ctrl+Shift+K) to show a modal overlay of all active shortcuts for the current page, grouped by category.


Shortcut Scopes

Shortcuts operate in three scopes. When the same key is bound at multiple scopes, the more specific scope wins:

  1. Global — Always active when you're logged in (unless typing in a form field)
  2. Page — Active only when you're on a specific page
  3. Component — Active only when a specific component has focus (e.g., a dialog)

Global Shortcuts

Available from anywhere in the application.

ShortcutAction
Cmd+KOpen command palette
Cmd+Shift+KShow keyboard shortcut cheat sheet
/Focus search input (when no form field is focused)
EscapeClose any open panel, dialog, or popover; clear focus from active element
Cmd+[Navigate back (browser back)
Cmd+]Navigate forward
G then TGo to Timelines
G then EGo to Entities
G then SGo to Sources
G then IGo to Investigation
G then WGo to Workspace
G then /Go to Search

Timeline Detail Page Shortcuts

ShortcutAction
J or Select next event
K or Select previous event
EnterExpand/collapse selected event
[Jump to earliest event
]Jump to latest event
NCreate new event
EscapeDeselect event / close detail panel

Investigation Page Shortcuts

All Tabs

ShortcutAction
1Switch to Timeline Comparison
2Switch to Timeline Comparison Map

Timeline Comparison

ShortcutAction
J / KNext/previous event in focused column
H / LMove focus between columns (left/right)
Shift+H / LReorder focused column (move left/right)
EnterExpand focused event

Timeline Map

ShortcutAction
+ / -Zoom in/out
Arrow keysPan map
FFit all markers in bounds
Tab / Shift+TabCycle between event markers
EnterOpen marker's event in detail panel

Workspace Page Shortcuts

ShortcutAction
1Switch to Review Queue
2Switch to Reconciliation
3Switch to Activity Feed

Dialog and Component Shortcuts

ShortcutContextAction
EscapeAny dialog, popover, or panelClose
Cmd+EnterDialog with a submit buttonSubmit/confirm
/ Command palette, select menus, dropdownsNavigate items
EnterCommand palette, select menus, dropdownsSelect item
TabForm fieldsMove to next field
Shift+TabForm fieldsMove to previous field

Focus Management

Roving Tabindex

Lists that contain interactive items (event cards, queue items, search results, sidebar navigation, entity list) use a roving tabindex. This means:

  • Only one item in each list has tabindex="0" at any time — it receives keyboard focus.
  • All other items have tabindex="-1" — they receive focus only via arrow-key navigation.
  • Tab moves focus between list containers, not between individual items.
  • and (or J and K) move focus between items within the focused list.

Focus Restoration

  • Closing a dialog, panel, or popover returns focus to the element that triggered it.
  • Navigating between pages places focus on the main content landmark.
  • A "Skip to main content" link is the first focusable element on every page (visible on Tab).

Focus Indicators

A visible focus ring appears on every interactive element when focused via keyboard. No focus styles are suppressed without a replacement visual indicator.


Shortcut Precedence

When shortcuts conflict, the more specific scope wins:

  1. Component shortcuts override page shortcuts (e.g., Escape inside a dialog closes the dialog first, before any page-level behavior)
  2. Page shortcuts override global shortcuts (e.g., J on the timeline page navigates events, overriding any global J binding)
  3. Global shortcuts are the fallback

When Shortcuts Are Suppressed

Shortcuts are ignored when:

  • Focus is in a text input, textarea, or contenteditable element
  • The command palette (Cmd+K) is open

This prevents shortcuts from interfering with normal typing.


Progressive Disclosure

Shortcuts are surfaced through three channels in escalating order:

  1. Passive — Tooltips on buttons show the shortcut in parentheses (e.g., "New Event (N)"). Dropdown menu items show shortcuts right-aligned.
  2. Active — After several keyboard interactions in a session, a subtle toast appears: "Tip: Press Cmd+Shift+K to see all keyboard shortcuts."
  3. On-demand — The cheat sheet overlay (Cmd+Shift+K) shows all available shortcuts.

Limitations

The following interactions remain pointer-first and do not have keyboard shortcuts:

  • Drag-and-drop column reorder in timeline comparison (keyboard alternatives via Shift+H/L are provided, but actual drag remains mouse-only)
  • Node position dragging in entity graph (pan/zoom/select are keyboard-accessible; arbitrary repositioning remains mouse-only)
  • File uploads (drag-and-drop remains mouse-only; the file input's native keyboard trigger works)

Next: File Uploads →