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

Improve display of error messages #13423

Closed
juliusknorr opened this issue Jan 8, 2019 · 13 comments
Closed

Improve display of error messages #13423

juliusknorr opened this issue Jan 8, 2019 · 13 comments
Labels
2. developing Work in progress design Design, UI, UX, etc. enhancement

Comments

@juliusknorr
Copy link
Member

juliusknorr commented Jan 8, 2019

We still have quite a lot of error messages, that are using the javascript OC.Notification methods to notify the user about a failure.

image

The ideal solution would be to move the error messages to the actual element where the error happened, so that we have a nice inline feedback. Unfortunately we currently have around 370 usages of the OC.Notification method (including in the apps in my dev environment), so migrating all is not something that will be done quickly.

Therefore I would propose to make the notifications a bit more prominent (and move them out of the header). We could use toast notifications in the lower right. Yes, those are probably blocking the UI for the user, but in general we use those messages if something bad happened, like a request didn't run successfully. In that case it is fine imo to notify the user a bit more prominent. The current notifications can be pretty easily overlooked.

This is what toast notifications might look like, of course we need to adjust them to fit nicely into our design:
image

What do you think @nextcloud/designers

@juliusknorr juliusknorr added design Design, UI, UX, etc. 0. Needs triage Pending check for reproducibility or if it fits our roadmap labels Jan 8, 2019
@skjnldsv
Copy link
Member

skjnldsv commented Jan 8, 2019

We should definitely push something like that someday yes :)

@MorrisJobke
Copy link
Member

Making them more appealing also results in more usage, or am I wrong? The ultimate goal should be to move as much over first. In general I like this, but we should get rid of them. The more permanent stuff should go into real notifications (behind the bell icon) and the others should be inlined and properly highlighted.

@jancborchardt
Copy link
Member

Short version: I don’t really see the problem with the placement right now. We want to get rid of it and intermittently there’s no real reason to change placement which will just be around for 1 or a few releases. No need to waste resources on this.

Making them more appealing also results in more usage, or am I wrong?

Yes, I think so too.

The more permanent stuff should go into real notifications (behind the bell icon) and the others should be inlined and properly highlighted.

Yup! Much better to spend time on that instead.

Therefore I would propose to make the notifications a bit more prominent (and move them out of the header). We could use toast notifications in the lower right.

Moving them out of the header and to the lower right will actually make them less prominent. Nextcloud has most stuff on the top … the only thing on the bottom which comes to mind is the "Reply" button in Mail, which is also questionable.

@juliusknorr
Copy link
Member Author

These are the problems I see with the placement/current approach:

  • They are are not dismissable if OC.Notification.show is used
  • They block the main navigation UI on small devices
  • It is actually hard to recognize them (they are small and not very prominent)

image

We want to get rid of it and intermittently there’s no real reason to change placement which will just be around for 1 or a few releases. No need to waste resources on this.

This has been on our list for quite some time, with very little progress, so I really think that making the notifications a bit more decent would be a good step forward with small effort.

The more permanent stuff should go into real notifications (behind the bell icon) and the others should be inlined and properly highlighted.

Yup! Much better to spend time on that instead.

Some notifications are not permanent and actually benefit from a toast like approach, since they happen asynchronously when the user might already have moved the corresponding element out of view (by scrolling or switching the view) or when there is no related UI element present:

  • File errors (moving/uploading/deleting failed)
  • Problem loading page, reloading in %n second
  • Connection to server lost

Moving them out of the header and to the lower right will actually make them less prominent. Nextcloud has most stuff on the top … the only thing on the bottom which comes to mind is the "Reply" button in Mail, which is also questionable.

That is right, probably positioning them at the top right ( just underneath the regular notifications icon) would make more sense.

Btw. do we have an issue about migrating to more inline error messages? We probably should provide some design patterns that could be used by app developers to do this.

@stefan-niedermann
Copy link
Member

i once opened a similar issue which might be related (?): owncloud/core#17109

@skjnldsv
Copy link
Member

Moving them out of the header and to the lower right will actually make them less prominent. Nextcloud has most stuff on the top … the only thing on the bottom which comes to mind is the "Reply" button in Mail, which is also questionable.

Yes, there is no perfect answer here unless we have a all-in-one location (like the notification icon) that the user is used to check (though we really need to improve the design and the visibility of a new notification incoming, I think the red dot is not enough :)

@jancborchardt
Copy link
Member

I’m fine with simply moving the location of the notifications from "in the middle of the header" to "top right below the header".

The question is if this just moves the problem of overlaying things, cause then it would be app content. Could be fixed by making every notification dismissable?

@juliusknorr
Copy link
Member Author

The question is if this just moves the problem of overlaying things, cause then it would be app content.

It still makes them a more acessible, also on small screens, especially when there are more then one notification.

Could be fixed by making every notification dismissable?

Yes, that should be done in the same run then.

@wiswedel
Copy link
Contributor

As a simple but effective noticeability-improvement I suggest to CSS a ❗ before the text:

image

@MorrisJobke
Copy link
Member

As a simple but effective noticeability-improvement I suggest to CSS a ❗ before the text:

I don't see any big benefit from adding the emoji there. The problem here that it is shown at all there. Also sometimes it's not used as error, but as feedback that everything worked and then the exclamation mark is wrong.

@wiswedel
Copy link
Contributor

sometimes it's not used as error

but errors are identified as such in the code (.type-error), so they can be addressed properly

@juliusknorr
Copy link
Member Author

I did a quick proof of concept for improved notifications in #15124 ... feedback is welcome.

@skjnldsv skjnldsv added 2. developing Work in progress enhancement and removed 0. Needs triage Pending check for reproducibility or if it fits our roadmap labels Jun 5, 2019
@szaimen
Copy link
Contributor

szaimen commented May 21, 2021

I think this is already implemented/fixed. If not, feel free to reopen.

@szaimen szaimen closed this as completed May 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2. developing Work in progress design Design, UI, UX, etc. enhancement
Projects
None yet
Development

No branches or pull requests

7 participants