Skip to content

Show "Connecting…" banner (or equivalent) when server data is stale #465

@gnprice

Description

@gnprice

When we lose our real-time stream of events from the server, either because of network failures or because the server has expired the event queue and we need to request a new one:

we continue to show the latest server data we had, but it may now be stale. We should communicate to the user that that's what's happening.

In the existing zulip-mobile app, we do this with a banner that reads "Connecting…" and appears just under the app bar.

In this app, we could do the same thing, or we could find a different design. One downside of the "Connecting…" banner is that it occupies some vertical space, which means the rest of the content needs to move down to make room (or else let its top portion be obscured by the banner). Nevertheless it might be the best available option.

Even if we use the same design concept, we'll want to pin down the details: the text style, the layout, the banner's background, the specifics of how it animates in and out.

(In zulip-mobile the details are in src/common/LoadingBanner.js; there's no animation. But the conceptually similar "No Internet connection" banner, found in src/boot/OfflineNoticeProvider.js, does have an animation… on iOS only, because React Native's implementation breaks on Android. Here on Flutter, we should have no such trouble implementing whatever animation we choose.)

Metadata

Metadata

Assignees

Labels

a-modelImplementing our data model (PerAccountStore, etc.)a-syncEvent queue; retry; local echo; racesbeta feedbackThings beta users have specifically asked for

Type

No type

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions