Scratch-gui: Users often delete sprites permanently, and didn't mean to

Created on 8 Aug 2019  Â·  20Comments  Â·  Source: LLK/scratch-gui

Users often:

  • delete a sprite, and didn't mean to
  • don't realize that they have deleted a sprite
  • don't realize that it is possible to restore a sprite
  • lose the ability to restore a sprite because they deleted more than one, or did something else that removed the restore sprite option

This is a multi-part problem that might involve more than one change to improve. Some suggestions have been:

  • confirm when deleting sprite: https://github.com/LLK/scratch-gui/issues/4311

    • (plus, maybe if a user is deleting more than one sprite in a row, don't show the confirm window for all of them)

  • when a sprite is deleted, show user a message explaining that it can be restored in the edit menu
  • ~make the trash can icon on a sprite appear only after already selecting the sprite~ that is the current behavior

I'm phrasing the title

High Impact High Severity enhancement needs design needs discussion priority 2

Most helpful comment

This has happened to me more than once, and it's very heartbreaking 😢

Worse, I think it's more likely to affect beginners.

All 20 comments

After discussion with the team, we want to make a few prototypes to experiment with. We want to balance being able to delete several items quickly (e.g. costumes from the list) without needing to confirm each action. But we also want to help people know about the ability to restore deleted sprites/costumes. Some ideas to prototype were

  • A "toast" message that tells scratcher that they can undo (or allow undoing right there) a la gmail
  • Show a confirm for sprites that have code attached to them (but not e.g. the default cat)
  • Similar heuristic for confirming costume deletion?

@paulkaplan So I made it.
https://apple502j.github.io/scratch-example/alert/ : Gives you an alert whenever you delete a sprite. Dismissable. Uses a new icon I made. Code https://github.com/apple502j/scratch-gui/tree/show-alert
https://apple502j.github.io/scratch-example/confirm/ : Lets you confirm() when the sprite has at least one block (not script) Code https://github.com/apple502j/scratch-gui/tree/show-confirm

@apple502j awesome! these are really helpful. Do you think you could use the maxDisplaySecs on the alert (probably 15s is good)? Also, would it be easy to wire up the restore behavior directly to a button in the alert? I forget how those alerts work, it might not be simple. But thanks for putting these up on live urls, that is really helpful.

@paulkaplan Maybe we can add DeletionRestorer. I'll try

@paulkaplan @benjiwheeler Here's a "nicer alert" version, which has Undo button:
https://apple502j.github.io/scratch-example/nicer-alert/ (Source https://github.com/apple502j/scratch-gui/tree/show-nicer-alert)

Here's a thing you might want to do:

  • Add some backdrops, and delete it when the alert is up. The button should be disabled.
  • Undo from Edit menu. The button should be disabled.
  • Click the Undo. The alert should disappear.

TODO: Add clearList

Just noting that this would be a good candidate for attention at this week's bugs & glitches prioritization meeting!

I can't understand why this issue (which confused a lot of people in this 1.5 years) is prio 5 and flaky test, which is just dev-facing problem, is labeled critical because the dev felt it was a huge pain. Will the priprity be bumped to at least like 4?

@apple502j the prioritization system is still under development, and I've been told it doesn't make sense to appeal the prioritization categorizations of issues yet.

That said, as soon as it's ok to appeal, I want to appeal for this issue to get re-prioritized!

I think it could be considered High Severity, and High Impact. I would suggest it be given a priority of at least (that is, at most) 3.

Also I want to point out that @apple502j has submitted some proposed fixes, so it might be possible to significantly improve this pretty quickly.

cc: @BryceLTaylor

It's unclear to me how high the impact of this issue actually is. It would be useful to gather evidence of how often this happens. How many help tickets get filed, forum posts, etc.

@BryceLTaylor, in the workshops that I provide for 7th graders it happens multiple times a day ;-/

I think this is a big issue - You don't often delete sprites (not costumes,
but whole sprites).
But when selecting a sprite, it can be easy to slightly miss click and
touch the delete sprite button... The undo is a great option, but only if
not notice you did it, which is easy to miss... I think it just needs a
confirmation popup for sprites

On Tue, 12 May 2020 at 16:48, Philipp Kitzberger notifications@github.com
wrote:

@BryceLTaylor https://github.com/BryceLTaylor, in the workshops that I
provide for 7th graders it happens multiple times a day ;-/

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/LLK/scratch-gui/issues/5077#issuecomment-627428803,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABTM3PWMSOLXFLBG6W56343RRFVTZANCNFSM4IKLDYYQ
.

Question: What demotivates you the most when making projects on Scratch?
To lose a sprite I've been working for a long time clicking accidentally on the bin…

Nice job @Apple502j ! This sounds like a cool feature and would be very usefull! Also if one was deleting a sprite, evenif they DID know about the edit>restore sprite option and they did not notice they deleted a sprite they might edit further and then the undo would no longer restore the sprite. Support for the deletion of sprites, and also for costumes and sounds, but since there are many cases where the quick deletion of multiple costumes and sounds is nessecary perhaps a checkbox for "do not remind me again"

good points; many nice features but clunky in places: such things result in massive wasting of time & wastes of creative effort, so, priority 5 means 'they' dont care/ like it that way; why not simply store twenty or fifty of them(selectable etc) in a location that would allow redo, same for all other steps; But what about Backgrounds that go poof when the thing is run in fullscreen: very notnice unencouragingfor Students whove just invested half a day drawing something! may sound prosaic, but just always try save Two copies of everything that takes more than five minutes to make, both as separate files & altogether; Or: changing bitmap to vector & back a couple times to show how cool of a feature that is to have, but which then promptly crashes the program,& such disappearances may be inferred by Students as having been inadvertent misdeletions

@MHRB1 According to some members, anything that requires design or discussion is automatically labeled as priority 5 - "High Impact" and "High Severity" will usually make the issue prio-1 or prio-2, and I am sure they know that (I hope Bryce does too)

The thing about the undo thing is; we need to store the thing to re-make the sprite which could have been GC'd otherwise, so it's kinda bad for the performance:tm: - mostly assets. Yes, there is auto-saving and there is a thing called asset server, but that is not always the case!

About crashes: unless the VM (and project downloader) are damaged, it should be possible to save stuff - it would be another issue though.

Just trying to keep attention to this issue alive, and to express my hope that we can work on this soon.

This has happened to me more than once, and it's very heartbreaking 😢

Worse, I think it's more likely to affect beginners.

My irl friend recently started scratch but got angry and decided to quit scratch after this happened to him. He had been working for hours on it and didn't know about the undo so he eventually just closed the tab. ;-; I really hope this can be implemented

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ericrosenbaum picture ericrosenbaum  Â·  3Comments

thisandagain picture thisandagain  Â·  4Comments

thisandagain picture thisandagain  Â·  3Comments

fsih picture fsih  Â·  3Comments

Richienb picture Richienb  Â·  3Comments