scratchfoundation / scratchfoundation/scratch-blocks

Block size adaptivity compromise

Open
#1,507 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

needs-discussion request
Dominant language
JavaScript
Stars
2.8k
Forks
1.6k
Avg merge
4h 51m
Merged PRs (30d)
12

Description

Expected Behavior

This isn't an expectation at all, just an idea for how to deal with block size (I'm not sure how much this would affect performance either). With that said, I think it would be neat if when you click on the block editor area, the blocks shrunk to about Scratch 2 size, while when you tap on the editor area with a touchscreen, the blocks grow back to Scratch 3 size. This way, people who dislike how large the blocks are right now would be happy, it would work well on mobile devices, and also would work great on convertible devices like the Surface. It could probably use similar code to the zoom in and zoom out buttons (while making certain the text inside the blocks is readable in zoomed out mode as much as in Scratch 2), but perhaps with an (optional for accesibility purposes) animation showing the zoom in or out to be less confusing to newer Scratchers.

Actual Behavior

Right now, many Scratchers who try out the Scratch 3 preview think the blocks are too big, but they need to be big for touch support. This might be a nice compromise if it would be feasible.

Steps to Reproduce

It can't be reproduced, as it's just an idea for a compromise.

Operating System and Browser

Any

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

The issue does not name any files, tests, or entry points to begin with. First clarify the interaction and accessibility requirements for shrinking blocks on click and enlarging them on touchscreen input, then determine how the existing zoom controls relate; the work is done when the behavior is implemented and remains readable across pointer and touch devices.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.