scratchfoundation / scratchfoundation/scratch-blocks

ENA-229: Output connection location can be confusing when dragging long reporters

Open
#1,156 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

accessibility High Prevalence Low Severity needs design priority 3
Dominant language
JavaScript
Stars
2.8k
Forks
1.6k
Avg merge
4h 51m
Merged PRs (30d)
12

Description

Expected Behavior

When a user drags an input block, they should be able to drop the block into the insertion point when they release their mouse over the insertion point.

Actual Behavior

The left coordinate of the input block is used to determine what insertion marker/input "hole" to place the dragged block. This is confusing, especially on longer input blocks where the center or grabbed part of the block is far from the left edge of the block.

Steps to Reproduce

Drag any longish input and try to place it into another block. Notice the selection doesnt use the center of the block or the mouse position, but instead uses the left edge.

image

image

Operating System and Browser

Any OS, any browser

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the drag-and-drop behavior with a long input block and trace the logic that chooses the insertion marker or input hole. Check how the dragged block's left edge and mouse position are used. Done means the drop target follows the grabbed or centered portion of the block, with coverage for long inputs.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.