-
-
Notifications
You must be signed in to change notification settings - Fork 389
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
Mastodon.social just changed how DM notifications work, and we must add a new feature or some content may be hidden #4331
Comments
I'll finish the notification refactoring and then look into this. |
I'd like to implement this feature, how should we integrate it into our UI? |
@connyduck I have been trying to keep up with mastodon/mastodon about this, this is the most recent version they posted (not merged and "possibly incomplete" but you can see the new spec additions in the diff): I propose that under "Account Preferences" we split "Filters" into two entries, "Post Filters" and "Notification Filters" Under the Notification Filters subpane we should have four checkboxes corresponding to "People you don't follow', "people not following you", "new accounts", "unsolicited private mentions". If we can put "filter out notifications from" above the checkboxes, and smalltext under the checkboxes explaining each of the four different settings (as some of them describe complex concepts!) that would be ideal. I think I said at one point I could attempt to make a UI mockup but work has been busy. Would it still help if I attempted this or does my description make sense? |
Can't we check for the presence of the I don't think it would be a good idea to try to incorporate this into the notifications tab filter pane popup, unfortunately, there's just not enough room to fit it in cleanly. I for one would be very unhappy if we moved the filter popup into its own pane instead of a popup because I like to use the popup for very quick changes (I even have a personal UI hack I use to make it faster). However, one option might be, in the notifications tab ⋮ menu, a "Server side filters" or "Server filters" item, next to the existing "Filters" item, going to the Account Preferences pane. (We could also maybe rename "Filters" to "Kinds", or leave the Filters button as "Filters" but rename the item in the ⋮ menu to "Type Filters", but I think that might be more confusing than doing nothing. Overall I think the goal should be to try to communicate a difference between client-side and server-side filters. Maybe "Tusky filters" and "Server filters"?) |
Claire in the other thread informally endorses checking for |
It is kinda weird with pull to refresh though. The way I have it now the second item (the first actual notification) will stay in place and the filtered notification count will be pushed up by new notifications. Another possibility would be to always have the filtered notification count visible and push older notifications down. Both feel a bit weird, maybe it is because it is unfamiliar. |
It feels more like "Filtered notifications" should be sticky on top of the list and not part of it. For example it could use a CollapsingToolbarLayout scroll flag like enterAlways. |
Three thoughts:
This is a long comment sorry. But, I think here are my three possible suggestions for how to handle this. Do one of:
In short I don't really agree with Mastodon GmbH that the filtered notifications should be shown to the user at all… and if they are shown in my opinion they should be as de-emphasized as possible, interrupt the user as possible, and be as easy to dismiss as possible. |
I just want to add that we probably need to change the whole layout in the app so I would try and not overthink this too much. I really think the two big buttons as they are now is not a good solution and should go but also the bubble has a bit too much emphasis for "things I care less about" |
Detailed description
The server-side filtering Mastodon does for DMs has suddenly changed. Mastodon.social has already deployed the new version of the feature right now, and other Mastodon-Ruby servers will pick up the new feature when 4.3.0 ships. The new server-side feature requires Tusky to implement one or more client-side features.
Previously, Mastodon had a setting "Block direct messages from accounts you don't follow" in the Preferences tab. When this setting was checked, DMs from non-followed accounts were silently hidden (in other words, it acted like "Mute", not "Block").
As of two weeks ago, mastodon.social changed this. I'm not aware of any announcement of this outside of the pull request and I discovered it by accident this morning.
There is now a large bar at the top of the notification filters pane (not the preferences*), listing various options that put a notification into "filtered notification" state:
The last of these options, "Filter out notifications from… unsolicited private mentions", is on by default for new users. Actually that's not true, it's on by default for everyone, but according to Claire from Mastodon that was a bug so apparently soon it will be ratcheted back down and only new users (and users who specifically chose to have the flag on) will have it on.
When these "filter" options are engaged, if a "filtered" post is received, it will look like this:
A "N notifications filtered" box appears at the top of the notification column. When clicked, a new column opens showing each user who has sent you filtered notifications. If you click on a username, it opens a third column showing just the notifications from the user in question (screenshot). To make the "N notifications filtered" box go away, you must click the "Dismiss" or "Accept" button next to each of the listed users.
There is a problem: This new feature is server-side, and according to Claire from Mastodon
In summary, there is a new feature that is on by default for some users, and unless Tusky proactively adds support for this feature, this feature will hide content from Tusky users in such a way they cannot know content is being hidden, and cannot turn the feature off, unless they go to the website.
Expected behavior
The new feature is only partially documented (according to @renchap Mastodon has "an internal ticket" to add documentation) but consists of four new endpoints; a list of "notification requests" (it appears to be poll only); a RPC to accept a notification request; an RPC to reject a notification requests; and an RPC to change the server-side notification-filter "policy" (the four checkboxes above, I assume).
I think Tusky 25 should, at minimum, contain a GUI frontend for
notifications/policy
. As far as I know we have no checkbox for the old "Mute direct messages from people you don't follow" setting, so this is new UI. I would put this in "Account Preferences" (Mastodon puts it in the notification filters box, but I don't think this is practical on mobile.)I think Tusky 26 should contain full support for displaying, approving, and dismissing (denying) the notification requests. (Earlier would also be nice, but it is a somewhat large feature and 26 is not far away, so maybe we should not rush it.) I think we can mostly reuse the Follow Notifications UI for this, but I think we should also add a "⋮" menu option for "deny all" (possibly this would be good in Follow Notifications as well) because [in my opinion requiring individually clicking on every request, as the Mastodon Web UI requires, would be bad if a user is being targeted for harassment.
As a stopgap before Tusky 25, I think our official Mastodon account should make a post about the new feature, notifying users that the feature may be on for them and showing how to disable it in the web UI.
Steps to reproduce the problem
n/a
Debug information
n/a
The text was updated successfully, but these errors were encountered: