Skip to content

Add a first-touch rotate hint to the 3D graph canvas on mobile #4169

Description

@atomantic

R3F sets touch-action: none on the Brain Graph / Memory Graph canvas, so it's a dead zone for page scrolling on mobile — a one-finger drag rotates the camera and never scrolls. The mobile-responsive pass bounded the damage by making the canvas viewport-relative (h-[clamp(240px,45vh,500px)]), leaving the bars above and detail panel below as scrollable surfaces, but a user who starts a swipe on the canvas still can't scroll.

Considered and rejected: the map-embed pattern (one finger scrolls, two fingers rotate) — it would make rotating the graph, which is the feature's whole point, a two-hand gesture.

Decision: show a brief "drag to rotate" hint on first touch (e.g. a one-time overlay/toast on the canvas), keeping one-finger drag as rotate and relying on the surrounding scrollable chrome for page scroll. Smallest change of the options considered; a fullscreen mode where the canvas legitimately owns all gestures was the alternative and can be revisited later if the hint proves insufficient.

Applies to both client/src/components/brain/tabs/BrainGraph.jsx and client/src/components/cos/tabs/MemoryGraph.jsx.

Deferred from the mobile-responsive pass. Needs a real device to validate the hint reads well and doesn't get in the way of the actual gesture.

Migrated from PLAN.md by /do:replan --issues.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

in-progressClaimed and being workedplanTracked by /do:replan

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions