Skip to content

A click that opens the side panel no longer flings the box across the canvas - #59

Merged
s4mstruthers merged 1 commit into
mainfrom
claude/festive-tesla-3c43yw
Oct 12, 2026
Merged

s4mstruthers merged 1 commit into
mainfrom
claude/festive-tesla-3c43yw

Conversation

@s4mstruthers

Copy link
Copy Markdown
Owner

Clicking a box selects it, which opens the side panel; the splitter narrows
the canvas, whose resizeEvent (and the page's deferred fit) re-fit the view
with auto_fit on, all while the left button is still down on the box. A
movable item's drag anchor is a scene point taken at the press, so once the
view's transform has changed under the pointer, the first pixel of movement
moves the box by the whole difference: on a template canvas a 1 px move took
a box from (300, 0) to (500, 10).

GraphView now notes a fit asked for while the left button is down on it and
does it at the release (or at the first move that finds the button up, when
it was released outside the window). Both fits, GraphView's and the
workflow canvas's, go through the same guard. A test presses a box, lets
the panel open, moves a pixel and releases, and checks the box stayed and
the fit came afterwards.

Co-Authored-By: Claude Fable 5.1 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_0159iy7dUgYeve4qV1z4FhUa

… canvas

Clicking a box selects it, which opens the side panel; the splitter narrows
the canvas, whose resizeEvent (and the page's deferred fit) re-fit the view
with auto_fit on, all while the left button is still down on the box.  A
movable item's drag anchor is a scene point taken at the press, so once the
view's transform has changed under the pointer, the first pixel of movement
moves the box by the whole difference: on a template canvas a 1 px move took
a box from (300, 0) to (500, 10).

GraphView now notes a fit asked for while the left button is down on it and
does it at the release (or at the first move that finds the button up, when
it was released outside the window).  Both fits, GraphView's and the
workflow canvas's, go through the same guard.  A test presses a box, lets
the panel open, moves a pixel and releases, and checks the box stayed and
the fit came afterwards.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159iy7dUgYeve4qV1z4FhUa
@s4mstruthers
s4mstruthers merged commit c577fa0 into main Oct 12, 2026
1 check passed
@s4mstruthers
s4mstruthers deleted the claude/festive-tesla-3c43yw branch October 12, 2026 08:07
s4mstruthers added a commit that referenced this pull request Oct 12, 2026
The fix merged in #59 landed after the 0.11.0 tag, so its changelog line
moves into a section of its own and the version, CITATION.cff and its
release date follow.


Claude-Session: https://claude.ai/code/session_0159iy7dUgYeve4qV1z4FhUa

Co-authored-by: Claude <noreply@anthropic.com>
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.

2 participants