Skip to content

M8.18: Blend Options dialog and the Blend tool's anchor targeting - #190

Merged
bflatastic merged 2 commits into
mainfrom
m8-blend-options
Oct 6, 2026
Merged

bflatastic merged 2 commits into
mainfrom
m8-blend-options

Conversation

@bflatastic

Copy link
Copy Markdown
Member

Blend Options is now a real dialog, and the Blend tool can blend from chosen anchor points and add keys to an existing blend.

M8.18: Blend Options dialog and Blend tool

  • Blend Options opens a dedicated dialog (blendOptions, ui.blendOptions):
    • Spacing dropdown with its value, the Align to Page / Align to Path buttons, and live preview.
    • Prefilled from the selected blend. Before, OK silently turned a Smooth Color blend into 5 steps.
    • With nothing selected, it sets the defaults new blends start with (Prefs.blend_options).
    • New query: object.blend.info.
  • Blend tool:
    • The anchor points you click become the blend's start points. This adds BlendSpec.starts (append-only) and object.blend.make {starts}, and the path interpolation uses them.
    • Clicking a blend and then another object adds a key instead of nesting a blend inside a blend. Make does the same when a blend is selected.
    • Double-click on the canvas, Alt-click, or a double-click on the toolbar button opens Blend Options.
    • New hint text and 3 new cursors.
  • Blend evaluation moved to the new crates/doc/src/blend.rs. live.rs re-exports the old API, and each pair of keys is now prepared once per blend.
  • The ROADMAP's M8 row lists this change.

Checks

  • Last of a five-PR stack (M8.5 → M8.3 → M8.9 → M8.12 → M8.18) on main at 5a93e78 (M8.16: Enveloped type exports distorted, run by run, everywhere #184). The agent rebased it onto M8.15 itself: the two options_json became blend_options_json and envelope_options_json, and both behaviours are kept. Stacking conflicts in shared lists and docs were merged token by token, keeping both sides.
  • cargo xtask ci passes all 7 steps (fmt, clippy, tests, assets, brands, layers, wasm) on the top of the stack, with 3,164 tests.
  • Nothing dropped. One deliberate change: the Blend Options… menu row no longer carries {"steps": 5}. It keeps the same label and id and opens the new dialog. object.blend.options also works with no blend selected, to set the defaults.

🤖 Generated with Claude Code

bflatastic and others added 2 commits October 6, 2026 11:01
Blend Options is a dedicated dialog (Spacing dropdown with its value,
Align to Page / Align to Path buttons, live preview) opened on the
selected blend's own options, so OK no longer turns Smooth Color into
5 steps; with nothing selected it sets what new blends start with
(object.blend.info reads them). The Blend tool blends from clicked
anchor points (blend spec `starts`), adds keys to an existing blend
instead of nesting it, opens Blend Options on double-click, Alt-click
and its toolbar button, and has its own cursors and hint.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bflatastic
bflatastic merged commit a5c2d6b into main Oct 6, 2026
@bflatastic
bflatastic deleted the m8-blend-options branch October 6, 2026 04:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant