Feature Spec Tool: Select - adobe-photoshop/spaces-design GitHub Wiki

Canvas Interactions

  • Select tool is used to click (select) objects (single or multiple) on canvas and move/transform(scale/rotate) them
  • Arrow keys should move/nudge selected objects 1 pixel (Shift key + arrow should move objects 10 pixels)
  • Mouse over objects should reveal a blue highlighted bounding box
  • Users should be able to marquee select objects (single or multiple) on canvas
  • Double-click on vector or type layers will enter Edit mode (Esc/Enter should commit changes and exit edit mode)
  • Double-click on a group will drill down into the layer hierarchy (Esc key will move up the layer hierarchy and deselect all at the top level. Esc + Alt will hold the top level selection)
  • Objects selected on canvas should also be selected in the Layers pane (layers panel should auto-scroll selected layer into view)
  • Objects selected on canvas should show transform handles (allows scale/rotate)
  • Rotating or scaling objects should auto-commit (unlike Free Transform)
  • Objects that are locked in the layers panel should not be selectable or reveal any mouse over highlighting or transform controls

Modifiers

  • Cmd/Ctrl: allows selection of leaf layers on canvas (ignores groups), reveals smart guides (when enabled)
  • Cmd/Ctrl + click: selects layers discontiguously in layers panel
  • Shift + click: holding down the Shift key allows you to multi-select objects on canvas or contiguous selection in layers panel
  • Shift + Cmd/Ctrl + click: will add to select and ignore groups on canvas (works with marquee select also)
  • Alt + drag: duplicates selected objects (includes artboards)
  • Space: hand tool that pans canvas
  • Delete: will delete selected layers

Panel Interactions

  • When objects are moved/scaled on canvas, the transform fields should reflect those changes (W/H/X/Y)
  • When an object is selected in the layers panel, it should also be selected on canvas (and show transform controls)