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

Open message list at first unread, rather than latest message #80

Open
gnprice opened this issue Apr 21, 2023 · 0 comments
Open

Open message list at first unread, rather than latest message #80

gnprice opened this issue Apr 21, 2023 · 0 comments
Assignees
Labels
a-msglist The message-list screen, except what's label:a-content beta feedback Things beta users have specifically asked for
Milestone

Comments

@gnprice
Copy link
Member

gnprice commented Apr 21, 2023

When navigating to a message list, our default behavior (if there isn't a specific message we're asked to go to) should be to show the first unread message, if any, and the messages around it.

This means

  • fetching around the first_unread anchor (https://zulip.com/api/get-messages), rather than latest;
  • controlling the scroll position so that we show the first unread, if any, and the latest messages otherwise.

This should probably come after:

A followup is:

@gnprice gnprice added this to the Alpha milestone May 27, 2023
@gnprice gnprice added a-msglist The message-list screen, except what's label:a-content and removed m-alpha labels May 27, 2023
gnprice added a commit that referenced this issue Jun 14, 2023
Filed #187, #188, and #190.

Other items already existed as #80, #82, #95, #122, and #123,
or were already complete (a compose box, and three ways of
attaching something to a message.)
@gnprice gnprice modified the milestones: Alpha, Beta, Launch Sep 22, 2023
@gnprice gnprice modified the milestones: Launch, Beta 2 Dec 22, 2023
@gnprice gnprice added the beta feedback Things beta users have specifically asked for label Dec 23, 2023
gnprice added a commit to gnprice/zulip-flutter that referenced this issue Jan 30, 2024
This means that the overall scroll view has AxisDirection.down
as the scroll direction, rather than AxisDirection.up, and the
SliverStickyHeader is passed GrowthDirection.reverse instead
of GrowthDirection.forward in order to get the same effect.

This makes the scrolling a little easier to think about when focused
on MessageList's code, because for example (as seen in this diff)
`scrollMetrics.extentBefore` now refers to the messages that are
older than the ones on screen, rather than those that are newer.

This also brings us closer to the setup we'll want for zulip#80 and zulip#82,
opening the message list at an anchor other than the end: the empty
placeholder sliver at the bottom will become the list of messages
after the starting anchor, while the sliver at the top will remain
the list of messages above the anchor.
@gnprice gnprice self-assigned this Jan 30, 2024
gnprice added a commit to gnprice/zulip-flutter that referenced this issue Jan 30, 2024
This means that the overall scroll view has AxisDirection.down
as the scroll direction, rather than AxisDirection.up, and the
SliverStickyHeader is passed GrowthDirection.reverse instead
of GrowthDirection.forward in order to get the same effect.

This makes the scrolling a little easier to think about when focused
on MessageList's code, because for example (as seen in this diff)
`scrollMetrics.extentBefore` now refers to the messages that are
older than the ones on screen, rather than those that are newer.

This also brings us closer to the setup we'll want for zulip#80 and zulip#82,
opening the message list at an anchor other than the end: the empty
placeholder sliver at the bottom will become the list of messages
after the starting anchor, while the sliver at the top will remain
the list of messages above the anchor.
chrisbobbe pushed a commit that referenced this issue Jan 30, 2024
This means that the overall scroll view has AxisDirection.down
as the scroll direction, rather than AxisDirection.up, and the
SliverStickyHeader is passed GrowthDirection.reverse instead
of GrowthDirection.forward in order to get the same effect.

This makes the scrolling a little easier to think about when focused
on MessageList's code, because for example (as seen in this diff)
`scrollMetrics.extentBefore` now refers to the messages that are
older than the ones on screen, rather than those that are newer.

This also brings us closer to the setup we'll want for #80 and #82,
opening the message list at an anchor other than the end: the empty
placeholder sliver at the bottom will become the list of messages
after the starting anchor, while the sliver at the top will remain
the list of messages above the anchor.
@gnprice gnprice modified the milestones: Beta 3: Summer 2024, Launch Sep 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a-msglist The message-list screen, except what's label:a-content beta feedback Things beta users have specifically asked for
Projects
Status: No status
Development

No branches or pull requests

1 participant