Page MenuHomePhabricator

method to dismiss/acknowledge individual notifications
Open, LowPublic

Description

From one of my users:

often i have like 20 unread notifications and most of them don't require me to actually visit the page. i can mark all as read but that's a bit blunt. it'd be nice if there was a shortcut such as right clicking or if there was a button that meant "dismiss".

I find this annoying as well. I often follow the notification link to dismiss it and then go right back to previous page to continue what I was working on.

Event Timeline

sshannin raised the priority of this task from to Needs Triage.
sshannin updated the task description. (Show Details)
sshannin added a project: Notifications.
sshannin added a subscriber: sshannin.

Can you describe better for us the actual problem the user has, this task seems like just a feature request. Between Herald and the Notification options in Settings, there should be enough options here to improve the quality of all the notifications you receive.

Mostly, we'd rather improve Herald and Notification Preferences than build and maintain a new system. We want to make sure the right issue is being resolved.

Where this seems to get me the most is on "close" actions: a diff is closed, an audit is closed, a task is closed, etc.

I get some a lot of notifications of the form:
user closed D​1234: diff description by committing rM1234: same description

I like that I get these notifications, but all the information I need is available in the summary (which is a good thing). But I still have to go visit the diff just to dismiss.

Similarly with notifications for other closures.

Another example would be the notifications for somebody moving a task between columns in the workboard. Again, the notification is valuable, but once I read it I'm happy and don't really need to go view the task.

(separately, is there a way to escape things in remarkup? I used a zero-width space to make the parser fail for D​1234. Escapes would be nicer in general than just the regex setting imo)

I usually just do backticks. D1234

Yeah, reasonable enough. Sometimes I'm just feeling picky and don't want the extra formatting on it though.

Anyways, lmk if things are still unclear on the actual motivation for this task.

Agree that this is more of a "feature request" than a "problem" (although you could say that the problem is that there's no convenient way to dismiss notifications). Not a huge deal obviously; more of an annoyance.

btrahan claimed this task.
btrahan added a subscriber: btrahan.

Unless @chad has an idea on how this UI could work, I think this is a wontfix.

  • You can dismiss individual notifications by visiting the object
  • Notifications have the entire dom element as the click area since its a small, "tight" list, taking you to the object in question (other hyperlinks still work though)
    • Not sure where a button, etc would go?
    • Right click seems undiscoverable (so almost no one would be using it) and generally right clicking in web apps is weirdsauce?
  • You can dismiss all notifications with the mark all as read button.
  • Lots of preferences to control which notifications you receive

The best thing I can think of to solve this directly is a user preference to have clicking the notification dismiss the notification without visiting the object (now, it makes you visit the object at which point the notification is dismissed). Generally, we want to add user preferences very sparingly - more code to support and configurations to test add up quick - and in cases where we expect them to get lots of use to warrant the additional support costs.

Still very interested in any additional color on the problem here - e.g. examples of useless notifications no one wants to hear about and that you have no way of silencing to begin with - but I think the single click to visit the object to clear the notification is as good as we're going to get in this design. (@chad, again, please do feel free to tell me how this UI would work if I am mistaken!)

Still very interested in any additional color on the problem here - e.g. examples of useless notifications no one wants to hear about and that you have no way of silencing to begin with

Not sure if you caught my comment above, so I'll pull down here. Apologies if redundant. I wasn't trying to suggest that there are useless notifications. Rather, I'm saying that saying that there are notifications for which visiting the page is useless (other than to dismiss notification).

My two working examples are:

user closed D​1234: diff description by committing rM1234: same description
user moved T1234: desc to ColumnB on the Release workboard

That being said, I agree it's a bit weird UI-wise. Right-click does suck. The most intuitive to me is just a small little something to the right of the notification that you click to toggle the read/unread state. This would help also if you mislick the wrong notification and want to restore the unread status for it.

I heard you. :D

Facebook (the website) has something like that. I'll defer to @chad whether or not he wants to re-design that space for this use case. Note of course since we're trying to solve the burden of clicking through to an object to dismiss the notification anything here would have to be wildly lightweight to achieve the goal.

kk. As a note, in my opinion at least, I think the main burden is not that it has to be clicked, it's that often I don't want to leave the page I'm on. So what I do now usually is just open in new tab and then immediately close the new tab.

This is doable, but not something the upstream devs would likely build in any reasonable timeframe. 

In general this would be a great task for a contributor. 

 - fits into the vision of email-less Phabricator.

 - unlikely to be built by core devs (low impact)

 - is fairly small and easy for upstream to maintain 

Facebook Messages has a small read/unread toggle circle that UI wise should be low visual impact and easy to replicate.

I think we currently keep "someday" tasks open - even if we can't predict when someday is - so I'm re-opening. (I like to update tasks from the "need triage" aggressively so definitely feel free to change my updates if I'm wrong.)

On the UI, the Facebook message dropdown UI looks like

$author                            subtlecircle
one line message snippet that gets truncated...

(note the two lines, that subtlecircle is much more subtle, and it should be vertically aligned on the far right with the last '.')

Here's a picture

Screen_Shot_2015-04-23_at_11.12.41_AM.png (1×1 px, 461 KB)

Our UI looks like something like

$actor updated "XXX: $user_title"

(Note it is all one line that overflows.) No picture 'cuz you can just click above you silly goose! :P

Is the right way then to just add a little padding / space on the right hand side that's always there for subtlecircle ? say subtle circle width + 2px on either side?

Oh, just realized you probably meant the Facebook notifications dropdown. That has the same single line that may overflow to many lines problem, and they use consistent padding / space on the right hand side to work around it.

Strangely - and I may be in an AB test or something - while you have "Mark as Read" for unread notifications when you hover, you have "read" for read notifications. "Read" seems to do nothing. I think we'd want "Mark as Unread" in the read case.

As much as I hate features, this is relatively easy to build from a JS/eng point of view, fixes T7132 more easily than giving it a real target, and might let us just not pursue T7843.

eadler added a project: Restricted Project.Aug 5 2016, 5:24 PM