Skip to content

Add precise sizing and clearer contour editing controls #369

Description

@kostyafarber

Problem

Glyph editing lacks independent width/height controls and clear feedback for available selection and drawing gestures. Line-to-cubic upgrades have no prospective handle preview, upgrading a closing segment can move handles ahead of the authored contour start, and users cannot choose another first point without rebuilding the contour.

Expected outcome

Users can size selections independently, preview curve upgrades, distinguish drawing and selection actions through cursors, and choose the first on-curve point of a closed contour without changing its shape.

Acceptance criteria

  • Add independent Dimensions width/height controls above Position, fixed to visual top-left; retain proportional, anchor-dependent Scale sizing and undo.
  • Show add feedback for Shift-hover over unselected points, omit unsupported Alt-copy feedback, and use shape-specific crosshairs and aligned pen cursors at standard and Retina resolutions.
  • Show solid grey prospective handles on Cmd-hover over an authored line, upgrade on Cmd-click rather than Alt-click, and retain Cmd-drag bending for cubics.
  • Remove the preview on modifier release or canvas exit and restore it when returning to the same position.
  • Preserve the original on-curve contour start when upgrading the closing line.
  • Offer Make First Point for exactly one selected on-curve point in an authored closed contour; preserve geometry, winding, identities, selection, and undo/redo.

Context

Follows #364 and #11. Cmd-hover over lines is intentionally expanded from the earlier cubic-only bend affordance. Make First Point extends the canvas menu delivered in #288.

Review evidence

Electron tests capture Dimensions and prospective-handle screenshots. OS cursor artwork is not included in Playwright page screenshots and must be reviewed from the SVG assets. Native-menu interaction and screenshot verification remain pending.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions