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

[Request]: Stream timelines UX #373

Open
2 of 4 tasks
eobet opened this issue Jul 12, 2023 · 6 comments
Open
2 of 4 tasks

[Request]: Stream timelines UX #373

eobet opened this issue Jul 12, 2023 · 6 comments
Labels
enhancement New feature or request

Comments

@eobet
Copy link

eobet commented Jul 12, 2023

Describe the request

  1. With streamed updates enabled, I can't figure out what indicates if there's a new post available or not. There's an arrow button which seems to be a "scroll back to top" button, but for example, there's no round badge with a newly streamed unread post count number in it, like there is with unread notifications (or even a differently colored background for unread newly streamed posts).
  2. This is a classic problem, but when you open the app you scroll down to go back in history. However, newly streamed posts appear at the top... but when you click the "scroll back to top" to see more than one newly streamed post, it seems you have to start scrolling down again. So what you end up is not only a yo-yo interaction pattern, but one which has no clear indicator as to when you reached an "older" post (aside from the near term memory of the user).
  3. Even if you deliberately leave the window open at the very top, newly streamed posts still populate downwards, so there's seemingly no natural way to use the app while only scrolling in a single direction. You have to do the yo-yo up and down the timeline (which again can be very disorienting to some users... though perhaps not traditional Linux users who tend to be a bit more advanced).

Implementation Details

  • This should be an option in settings.
  • This should be only available to some fediverse backends. (Include which ones on the above field).
  • This is client-only (and shouldn't sync with the instance).
  • This follows the GNOME HIG.
@eobet eobet added the enhancement New feature or request label Jul 12, 2023
@GeopJr
Copy link
Owner

GeopJr commented Jul 13, 2023

With streamed updates enabled, I can't figure out what indicates if there's a new post available or not. There's an arrow button which seems to be a "scroll back to top" button, but for example, there's no round badge with a newly streamed unread post count number in it, like there is with unread notifications (or even a differently colored background for unread newly streamed posts).

I'll refrain from implementing an attention badge for new posts right now due to #228

This is a classic problem, but when you open the app you scroll down to go back in history. However, newly streamed posts appear at the top... but when you click the "scroll back to top" to see more than one newly streamed post, it seems you have to start scrolling down again. So what you end up is not only a yo-yo interaction pattern, but one which has no clear indicator as to when you reached an "older" post (aside from the near term memory of the user).

Even if you deliberately leave the window open at the very top, newly streamed posts still populate downwards, so there's seemingly no natural way to use the app while only scrolling in a single direction. You have to do the yo-yo up and down the timeline (which again can be very disorienting to some users...

I'm not sure what's the alternative. Since the order is reverse chronological, it's expected for new posts to be at the top, is there another pattern used by Mastodon Web/Mobile or another frontend? FWIW the scroll to top button is not meant to indicate new posts but just a typical scroll to top floating action button found on websites.

though perhaps not traditional Linux users who tend to be a bit more advanced).

Tuba is not aimed at advanced users

@eobet
Copy link
Author

eobet commented Jul 13, 2023

There are two quick fixes to prevent the need to yo-yo up and down the timeline:

  1. When the user is at the top of the timeline, streamed posts should appear above the scroll position instead of pushing it down.
  2. If the user has scrolled down, the up arrow button should place the scrolling position at the last previously read new post instead of the last newly streamed post.

The two above changes will mean that scrolling down always reads older posts, and scrolling up always reads newer posts.

(This is not a radical or innovative change, btw. Apps like Toot! use the exact same model. That app, like many other Mastodon apps, does have an unread post count indicator, though, which I hope Tuba will also get in the future.)

@Minkiu
Copy link

Minkiu commented Oct 12, 2023

Hey there, thanks for Tuba!

Something that could be done is similar to how Mastodon web does it, have a "card" (sorry don't know the actual widget name) that says "X New items" and when you click it, it will expand (disappear) and show the new elements; and in turn I guess we could add a line between the last item and the first newly loaded one.

Mastodon's UI:
image

A quick mockup of how it could look like:
image

Cheers!

@douglasthiel
Copy link

I just want Tuba to remember where I left off reading from the last time I used Tuba or the Website instance (if that's even possible).

What I don't want is to be automatically positioned at the top of the all that posts in my Home feed. This is confusing to me b/c I don't know how many unread items I have and scrolling down I get the feeling that I'm lost.

@matlag
Copy link

matlag commented Nov 28, 2023

Wouldn't that all be addressed if the posts were in chronological order?
New posts at the bottom, no need for a button to jump to the bottom, just keep scrolling down.

@douglasthiel
Copy link

douglasthiel commented Nov 29, 2023

Wouldn't that all be addressed if the posts were in chronological order? New posts at the bottom, no need for a button to jump to the bottom, just keep scrolling down.

Quite possibly.
See Metatext on iOS. Your position is stationary while reading or away from the app; that is, without the user's direct manipulation. There is a message that alerts you to the fact that there are more posts. I just scroll down to see the posts come down from the top of the view.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants