The panorama viewer inverted horizontal drag relative to vertical: the yaw sign was opposite, so dragging right turned the view right instead of moving the scene right. Flip yaw to match the pitch convention (drag the world) and lock the behavior with a ui-workspace scenario.
33 lines
1.0 KiB
Markdown
33 lines
1.0 KiB
Markdown
# Proposal
|
|
|
|
## Why
|
|
|
|
In the 360 panorama viewer the horizontal drag moves the view the wrong way: it is
|
|
inverted relative to the vertical drag. The two axes use opposite sign conventions
|
|
(`PanoViewer.svelte`, `onPointerMove`), so horizontal feels "swapped" while vertical
|
|
feels correct.
|
|
|
|
## What Changes
|
|
|
|
- Align the horizontal drag with the vertical one: dragging right moves the scene
|
|
right (the view turns left), matching the "drag the world" feel already provided
|
|
by the vertical drag.
|
|
- Clarify the `ui-workspace` panorama requirement with a scenario fixing the
|
|
direction convention, so the behavior is testable and does not regress.
|
|
|
|
## Capabilities
|
|
|
|
### New Capabilities
|
|
|
|
<!-- none -->
|
|
|
|
### Modified Capabilities
|
|
|
|
- `ui-workspace`: the «Просмотр 360-панорамы» requirement gains a direction
|
|
scenario — dragging moves the scene with the pointer on both axes.
|
|
|
|
## Impact
|
|
|
|
- Frontend: `frontend/src/lib/components/PanoViewer.svelte` (`onPointerMove`).
|
|
- Spec: `openspec/specs/ui-workspace/spec.md` («Просмотр 360-панорамы»).
|