Documentation Index
Fetch the complete documentation index at: https://mintlify.com/SunkenInTime/icarus/llms.txt
Use this file to discover all available pages before exploring further.
Global shortcuts
These shortcuts work throughout the application:| Shortcut | Action | Description |
|---|---|---|
Ctrl+Z / Cmd+Z | Undo | Undo the last action (drawing, placement, deletion) |
Ctrl+Shift+Z / Cmd+Shift+Z | Redo | Redo the previously undone action |
F12 | Debug dialog | Open the in-app debug dialog (developer feature) |
Ctrl+V / Cmd+V | Paste image | Paste an image from clipboard |
Ctrl shortcuts are for Windows and Linux. Cmd shortcuts are for macOS. Icarus detects your platform automatically.Interaction modes
Switch between different interaction states:| Shortcut | Mode | Description |
|---|---|---|
S | Navigation | Switch to navigation mode for panning and selecting |
Q | Drawing | Toggle drawing mode on/off for freehand drawing |
W | Erasing | Toggle eraser mode on/off to remove drawings |
T | Add text | Create a new text element at the center of the view |
Interaction state priority
Only one interaction state can be active at a time:- Press
Qto enter drawing mode (overrides previous state) - Press
Wto enter erasing mode (overrides previous state) - Press
Sto return to navigation mode (default state)
Page navigation
Quickly move between strategy pages:| Shortcut | Action | Description |
|---|---|---|
A | Forward page | Go to the next page (wraps to first page at the end) |
D | Backward page | Go to the previous page (wraps to last page at the start) |
Page navigation behavior
- Pages are navigated in sort order
- Switching pages triggers animated transitions
- The current page is saved before switching
- Forward and backward wrap around the page list
Page shortcuts use
A and D instead of arrow keys to avoid conflicts when editing text fields.Widget shortcuts
These shortcuts apply to selected elements:| Shortcut | Action | Description |
|---|---|---|
E | Delete widget | Delete the currently selected element |
Text editing overrides
When editing text fields, these shortcuts are disabled to allow normal text input:T- Allows typing the letter “t”A- Allows typing the letter “a”D- Allows typing the letter “d”Q- Allows typing the letter “q”W- Allows typing the letter “w”S- Allows typing the letter “s”Ctrl+Z/Cmd+Z- Handled by text field for undoEnter- Submits the text field
Shortcut customization
Currently, keyboard shortcuts are hardcoded and cannot be customized. The shortcuts are defined in:globalShortcuts- Work throughout the appwidgetShortcuts- Work on selected elementstextEditingOverrides- Override global shortcuts during text entry
Platform differences
Windows and Linux
- Use
Ctrlas the modifier key - Standard keyboard layout support
macOS
- Use
Cmd(Command) as the modifier key Ctrlis treated separately and not used for main shortcuts
Keyboard detection
Icarus uses Flutter’sLogicalKeyboardKey system:
- Platform-agnostic key detection
- Support for international keyboard layouts
- Handles both
controlandmetakeys appropriately
Undo/Redo details
The undo/redo system tracks actions across different element types:- Drawings: Addition and deletion of freehand strokes
- Agents: Placement and removal of agent icons
- Abilities: Placement and removal of ability markers
- Text: Addition and removal of text elements
- Utilities: Placement and removal of utility markers
Action tracking
When you perform an action:- The action is recorded with a type, ID, and group
- The action is added to the undo stack
- Pressing undo removes the action from history and reverts it
- Pressing redo reapplies the most recent undone action
Switching pages does not clear undo history for the current page. However, undo/redo does not work across pages.
Accessibility
Keyboard shortcuts improve accessibility:- No mouse required for common actions
- Single-key shortcuts for mode switching
- Consistent modifier key usage
- Visual feedback for active modes