Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ENA-115: Overview: Redesign save alerts to provide more info when project can’t save (Phase I) #6069

Open
kaaaaathy opened this issue Aug 6, 2020 · 17 comments

Comments

@kaaaaathy
Copy link

kaaaaathy commented Aug 6, 2020

Links

Specs: Customized alerts

Specs: Changes to nav

General spec


Background

Currently...

This design I made is what is currently implemented.
Here is an overview of the issues and pain points that we are solving in Phase I.

OVERVIEW: As Is

(There is a 4th pain point not listed in this image, which is that you can't create or upload a different project because you get stuck on this error.)

Related filed issues

#4045
#4225
#3764

Overview of Proposed Changes

Goals

  1. Customize alerts to each situation (more info below)
    — User can know how to debug or seek help
  2. Show save status in nav
    — User can continue working offline if they want, without alert as distraction
  3. Show connectivity more clearly
    — User knows they're offline, separate from save status

image

Goal 1: Customize alerts to each situation


What about multiple alerts?

There will generally be no situations where there are more than 1 of EACH TYPE of alert.
This is the order of operations in which they should appear:

7 1 3

HOWEVER...

There is a case within Use Case 1 where the user may encounter multiple "Asset too big" issues. On average it's between 1-3, but we've seen cases of ~5 or more on occasion.

In this case, follow this defined behavior for multiple alerts. Max alerts we will show at once is 3.

1 2 5 Multiple Alerts

Goal 2 & 3 (changes to nav)


What is in Phase II?

At this time, we have decided to readdress the issues below in Phase II. Not yet scheduled.

Resolve File menu action behaviors

  • Right now, you can click "Save as Copy," "New," "Load Project" etc in the File menu, but it will not let you leave your project session if you have a save error
  • We should design a way to let users perform these actions, or disable them in the menu, depending on what makes sense per context

Asset too big: Preventative alerts

  • Should we tell the user at the time of upload if the asset is too big?
  • Should we prevent an upload?

Revisit decision around sound editor buttons

  • Right now you can't edit a sound if the edit will make it too big.
  • Is this the behavior we want?
  • If no, we should redesign.
  • If yes, we should make sure we tell the user what is happening. Currently no feedback.

Revisit nav state when your account session changes

  • Currently, when you get logged out in another tab, we still show you signed in
  • We should communicate to people when
    • They get logged out (no feedback right now)
    • They get logged out and someone else is logged in (no feedback right now, but you do get this error if you are trying to save someone else's project, which is not ideal)

Revisit "Save now" in nav

  • More details here
  • The styling of the "Save now" action as a text component is inconsistent with other actionable buttons.
  • We would like to remove, restyle, or rethink this button eventually
  • For now, we will not change this behaviorally or visually, because Scratchers still rely on this UI to save. Thanks to @Za-Chary on Scratch for raising this
@apple502j
Copy link
Contributor

Technical stuff from a person who tried to implement it ( #5768 )

It's important to know that one asset can have multiple names. If you just have Asset then you need to find the name of the asset by looping, which may be a performance concern.

Also, lib/alerts/index.jsx expects the message to be static. If it needs to contain asset name, messages need to be generated dynamically. I did it by accepting a function as an argument and having alert.jsx handle it.

Finally the big problem is: there are many ways this can fail. It can be a number from FetchTool (e.g. 403 (invalid session), 413 (too big), 500 (server error)), it can be Error subclass (JSON.parse or NetworkError), or maybe string (although I think it's just NetsTool)

These are tricky parts but I'm sure ST can do it.

@Explosion-Scratch
Copy link

Wow! This looks great! The mockups are really great and the new styles also look helpfull. I also like being able to exit the alert.

@towerofnix
Copy link
Contributor

One design comment:

Max alerts we will show at once is 3.

Perhaps a small "..." ellipsis bubble could be shown beneath the third reminder, if there is more than three present at once?

@Explosion-Scratch
Copy link

Also this may be unrelated, but why is there "see community" instead of "see project page"?

@towerofnix
Copy link
Contributor

@Explosion-Scratch It's a slightly different design from the actual implementation (out of date probably); you can spot more slight inconsistencies in places like the costume editor toolbox. But yeah, those don't have anything to do with the slide notes regarding the save alerts project.

@mxmou
Copy link
Contributor

mxmou commented Aug 7, 2020

@Explosion-Scratch It's a slightly different design from the actual implementation (out of date probably); you can spot more slight inconsistencies in places like the costume editor toolbox. But yeah, those don't have anything to do with the slide notes regarding the save alerts project.

The bitmap/vector switch and big block category names actually seem better than what we currently have.

@Explosion-Scratch
Copy link

@mxmou, Probably lol.

@kaaaaathy
Copy link
Author

@Explosion-Scratch It's a slightly different design from the actual implementation (out of date probably); you can spot more slight inconsistencies in places like the costume editor toolbox. But yeah, those don't have anything to do with the slide notes regarding the save alerts project.

Yeah good observation :) It is a bit inconsistent based on what files I was using. You can ignore anything that doesn't look like what's in production right now

@kaaaaathy kaaaaathy changed the title Save Alerts Phase I Redesign – Overview Overview: Save Alerts Phase I Redesign Aug 7, 2020
@griffpatch
Copy link

griffpatch commented Aug 8, 2020 via email

@Explosion-Scratch
Copy link

@griffpatch Probably but those might be for another issue, however, I would love those features as well.

@mxmou
Copy link
Contributor

mxmou commented Dec 4, 2020

Any progress on this?

@mxmou
Copy link
Contributor

mxmou commented Dec 20, 2020

@chrisgarrity ^^

@the2000isawesome
Copy link

Has any progress been made towards fixing this problem since the last posts?

@the2000isawesome
Copy link

Any updates?

@leahcimto
Copy link

Any progress on this?

@hiPeeps124816
Copy link

this shouldn't be too hard to implement, any more progress yet?

@apple502j
Copy link
Contributor

Due to how saving works (and how it is done on three different components - WWW, GUI and Storage) this is actually more complicated than you imagine.

But, this is not impossible; should definitely be implemented.

@benjiwheeler benjiwheeler changed the title Overview: Save Alerts Phase I Redesign Overview: Redesign save alerts to provide more info when project can’t save (Phase I) Jul 15, 2022
@cwillisf cwillisf changed the title Overview: Redesign save alerts to provide more info when project can’t save (Phase I) ENA-115: Overview: Redesign save alerts to provide more info when project can’t save (Phase I) Oct 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

10 participants