-
Notifications
You must be signed in to change notification settings - Fork 258
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
Gap in message list #1309
Labels
a-msglist
The message-list screen, except what's label:a-content
a-sticky_header
Our `sticky_header` library
Milestone
Comments
gnprice
added
a-msglist
The message-list screen, except what's label:a-content
a-sticky_header
Our `sticky_header` library
labels
Jan 27, 2025
When reproducing this issue, it sometimes also produces an error to the debug console. Here's an example — which seems to have been provoked by an expired event queue, and the widget tree getting replaced as a result:
|
gnprice
added a commit
to gnprice/zulip-flutter
that referenced
this issue
Jan 29, 2025
Fixes zulip#1309. Fixes zulip#725. This is necessary when scrolling back to the origin over items that grew taller while off screen (and beyond the 250px of near-on-screen cached items). For example that can happen because a message was edited, or because new messages came in that were taller than those previously present.
gnprice
added a commit
to gnprice/zulip-flutter
that referenced
this issue
Jan 31, 2025
Fixes zulip#1309. Fixes zulip#725. This is necessary when scrolling back to the origin over items that grew taller while off screen (and beyond the 250px of near-on-screen cached items). For example that can happen because a message was edited, or because new messages came in that were taller than those previously present.
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
a-sticky_header
Our `sticky_header` library
There's a symptom I've seen happen just a couple of times, and just now while working on the sticky-header code (for #82) I realized what's causing it and how to fix it.
Repro recipe:
The result might look like this:
Note the big gap above the "3" message; the recipient header at the very bottom of the list; and the recipient header out of order relative to the message (it has the wrong text for any later message).
Other times the gap can be smaller, like the height of a short message.
I saw a similar gap as part of #725. It's possible the cause of this issue was also the root cause of #725.
Diagnosis
The cause of the issue is that the sticky-header implementation isn't properly handling one aspect of the sliver layout protocol. Specifically, when
_RenderSliverStickyHeaderListInner.performLayout
produces aSliverGeometry
withscrollOffsetCorrection
non-null,_RenderSliverStickyHeaderList.performLayout
is swallowing that information instead of passing it on to its parent.I'll send a fix as part of the sticky-headers PR I'm developing for #82.
The text was updated successfully, but these errors were encountered: