Mastodon: User timeline UI: add tab to show only user's original toots

Created on 19 Jun 2019  路  11Comments  路  Source: tootsuite/mastodon

Pitch

As a user viewing another user's account, deciding whether to follow them or not, I want to see only their own toots, not boosts.

I proposed an exclude_reblogs extension to /api/v1/accounts/:id/statuses in #9606, which @Gargron implemented in #9640 and I documented in mastodon/docs#17.

This feature is thus already supported by the backend, but it needs UI.

Motivation

It can be very hard to see a user's own toots if they boost a lot of other users' toots. When I'm deciding whether to follow someone or allow them to follow me, I really only want to see what they've written, not what other people have written.

Proposed implementation

This could be surfaced in the Mastodon frontend as a fourth tab alongside "Toots", "Toots and Replies", and "Media": "Toots and Boosts". I've prototyped this in #11119: "Toots" now shows only the user's original toots, and "Toots and Boosts" shows the user's toots and boosts.

image

image

Alternate implementation (simple)

Alternatively, to retain the original behavior of the "Toots" tab, we could instead introduce a fourth "Toots without Boosts" tab. This would probably be very similar to #11119, code-wise.

Alternate implementation (complex)

Since that timeline API has several filters which are orthogonal, we could replace the timeline tabs with filter checkboxes for:

  • [x] show replies
  • [x] show boosts
  • [ ] show only media

However, this would be a significant departure from the shape of the existing UI, and I don't know enough React to do it myself (yet). Thoughts welcome.

Notes on other implementations

The only third-party client that I know of that supports exclude_reblogs is Mast as of ShihabM/Mast#35, which made exclude_reblogs a global preference. I don't think we want to go that route UI-wise.

I added exclude_reblogs to Pleroma's backend in pleroma/pleroma#598.

suggestion

Most helpful comment

+1 for the filter rather than additional tabs. The current implementation could certainly remain default but I want to be able to view just what that user posts while deciding whether or not to follow them.

All 11 comments

what about a column for each category?

Notes on other implementations (continued)

The Monsterpit instance has implemented this UI enhancement similarly to my prototype, with a fourth column that shows boosts:

IMG_9390

I understand that on the single-column layout there might be enough space to fit the tab in, but on smaller phones as well as the multi-column UI there's no space left. Also, it's ambigous which is the better default: to show boosts or not. Personally sometimes I open profiles to check their latests boosts because they are commenting on something that I don't have a clear context on in the home feed. Likewise, it's becoming a confusing labeling system... Toots, toots and replies, toots and boosts...

@Gargron I'd be fine with preserving the default behavior (showing toots and boosts on the "Toots" tab) in the interest of least surprise to existing users.

As for the width issue and the confusing labeling system, those are both valid issues, so maybe a more compact collapsible filter control would be a better option. I'll see what I can come up with. The width issue could be much worse in non-English localizations.

For reference, is there a target lowest-end phone/window size that you tend to use for testing?

what about a column for each category?

@Moth-Tolias: you can already do that, but not on a per-user basis and not if you're not logged in. However, maybe reusing the existing filter UI could work for this:

Screenshot (1)

Screenshot (3)

would much rather see something more like the notification filter or the header bar toggles. personally i wish to view user's original posts without boosts or replies, and there's no elegant way to show all the possible combinations -- toots (and boosts), toots and replies, toots and replies and boosts, just boosts, just toots, etc etc.

I also much prefer the filter version. It makes the most sense. Be it with switches or checkboxes, it doesn't matter to me (although, switches may be more consistent as they are already used in columns).

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

still would be nice to see

+1 for the filter rather than additional tabs. The current implementation could certainly remain default but I want to be able to view just what that user posts while deciding whether or not to follow them.

can we also have another filter to show our own interactions ( from the past, if any ) with them?

if I visit their profile, I'd like to see whether I've interacted with them in the past. It could've been in some other thread from a different user or a one-off reply that I would've engaged with a toot that they posted but some other person I was following boosted.

https://mastodon.social/@divine_shine/103872958808245369

Was this page helpful?
0 / 5 - 0 ratings

Related issues

strugee picture strugee  路  76Comments

sturmen picture sturmen  路  67Comments

valentin2105 picture valentin2105  路  67Comments

kaniini picture kaniini  路  70Comments

ghost picture ghost  路  54Comments