Open
Description
const isFetching = fetching.older || fetching.newer || loading;
// [...]
const sayNoMessages = messages.length === 0 && !isFetching;
We fudge fetching.older
and fetching.newer
as false
in fetchingReducer
when this is a narrow we've just opened, one that state.fetching
doesn't have info for yet.
fetchMessagesInNarrow
correctly sets fetching.older
and fetching.newer
to true
when it's called. But by the time it's called, it's too late: the false
values have already made sayNoMessages
true
, wrongly, for at least a frame. And during that time, we've told the user there are no messages.
Right?