UsdLayerManager/openspec/changes/multi-viewport-support/specs/shared-selection/spec.md

1.5 KiB

ADDED Requirements

Requirement: Shared selection across all viewport tiles

Selection SHALL be shared across all viewport tiles. When a prim is picked in any tile (single click or rect drag), all tiles SHALL update their selection highlight display to show the same set of selected prims.

Scenario: Pick in Tile A, Tile B shows highlight

  • WHEN the user single-clicks a prim in tile A
  • THEN tile A and tile B both highlight that prim with the selection overlay

Scenario: Rect select in Tile B, Tile A updates

  • WHEN the user rect-drags over multiple prims in tile B
  • THEN both tile A and tile B highlight the same set of prims

Requirement: Selection change propagates to SceneHierarchyPanel and PropertyPanel

When selection changes via any viewport tile, the OnPrimPicked / OnPrimsPickedRect callbacks SHALL fire from the ViewportPanel container, just as they do today.

Scenario: Pick in viewport updates hierarchy

  • WHEN the user picks a prim in any tile
  • THEN the SceneHierarchyPanel and PropertyPanel update to show the selected prim's properties

Requirement: Shift+click additive selection across tiles

Shift+click SHALL work consistently across all tiles. Prim picked in any tile is added to or removed from the shared selection set.

Scenario: Shift+click in Tile A, then Tile B

  • WHEN the user selects prim P1 in tile A, then Shift+clicks prim P2 in tile B
  • THEN both P1 and P2 are in the shared selection, highlighted in both tiles