Skip to content

UV: Slice B — UV component selection (vertex/edge/face) #460

Description

@fernandotonon

Parent epic: #458
Depends on: Slice A

Goal

Add UV-vertex / UV-edge / UV-face component selection inside the UV editor panel, independent from but optionally synced with the 3D Edit Mode selection.

Scope

  • Selection state lives on UVEditorControllerdo not reuse SelectionSet. UV components are inherently distinct from 3D mesh components (an island border duplicates a 3D vertex into multiple UV vertices).
  • Shortcuts active only when the UV panel has focus: 1 = UV-vertex, 2 = UV-edge, 3 = UV-face.
  • Click, Shift-click (add), Ctrl-click (toggle), drag-box select.
  • Visual feedback: highlight selected components, draw selection box during drag.
  • Panel toolbar: explicit mode buttons matching the shortcut keys, current-mode indicator.
  • Selection sync toggle (off by default): when on, selecting in 3D propagates a UV selection covering the corresponding UV components, and vice versa. When off, the two selections are independent.
  • Highlight the island(s) the active 3D selection belongs to even when sync is off (read-only awareness — different from selection sync).

Acceptance Criteria

  • All three component-selection modes work via shortcuts and toolbar.
  • Multi-select with Shift/Ctrl works correctly across modes.
  • Drag-box select includes only fully-enclosed components in vertex mode and any-touched in face mode (document the rule).
  • Sync toggle works in both directions without infinite signal loops.
  • Unit tests cover click selection, multi-select, and box select.
  • Sentry breadcrumb ui.action recorded on mode change.

Effort

~4 days.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestuiuv-editorUV map editor and editing tools

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions