aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/GRAPH_VIEW.md8
1 files changed, 8 insertions, 0 deletions
diff --git a/docs/GRAPH_VIEW.md b/docs/GRAPH_VIEW.md
index ccddfe7..6bbcf83 100644
--- a/docs/GRAPH_VIEW.md
+++ b/docs/GRAPH_VIEW.md
@@ -37,6 +37,7 @@ extra work.
| `x` `n` `y` `;` | xrefs / rename / retype / comment, exactly as in the listing |
| `Tab` | leave for the pseudocode of the block you're on |
| mouse | drag to pan, click to place the cursor, double-click to follow |
+| minimap | click to jump the view there, drag to scrub |
Graph mode is **sticky**: following a call from the graph lands in the callee's
graph rather than dumping you back in the listing.
@@ -109,6 +110,13 @@ per block). On `main` (87 blocks) that is a 1378×518 canvas down to 545×289.
The **minimap** (`m`) is a coarse occupancy grid of the whole graph with the
viewport marked, drawn top-right and inset two columns — a `ScrollView` paints
its scrollbar over the last column, which otherwise eats the minimap's border.
+Clicking it jumps the view to that part of the graph (and lands the cursor on a
+block if one is there, so the keyboard carries on from where you pointed);
+dragging scrubs. Because it floats over the canvas rather than living in it,
+`on_click` has to test the minimap's hit-box **before** translating the click
+into canvas coordinates — otherwise a click on the overview reads as a click on
+whatever block happens to lie underneath it. `_minimap_rect()` is the single
+source of truth for both the drawing and the hit-test.
## Limits