Timeline: Use messageChangeCounter to mark messages read less often
This commit is contained in:
parent
69d0ed3309
commit
af2c884c9f
5 changed files with 162 additions and 6 deletions
|
@ -542,6 +542,7 @@ const useProps = (overrideProps: Partial<PropsType> = {}): PropsType => ({
|
|||
overrideProps.isIncomingMessageRequest === true
|
||||
),
|
||||
items: overrideProps.items || Object.keys(items),
|
||||
messageChangeCounter: 0,
|
||||
scrollToIndex: overrideProps.scrollToIndex,
|
||||
scrollToIndexCounter: 0,
|
||||
totalUnseen: number('totalUnseen', overrideProps.totalUnseen || 0),
|
||||
|
|
|
@ -86,6 +86,7 @@ export type ContactSpoofingReviewPropType =
|
|||
export type PropsDataType = {
|
||||
haveNewest: boolean;
|
||||
haveOldest: boolean;
|
||||
messageChangeCounter: number;
|
||||
messageLoadingState?: TimelineMessageLoadingState;
|
||||
isNearBottom?: boolean;
|
||||
items: ReadonlyArray<string>;
|
||||
|
@ -648,12 +649,14 @@ export class Timeline extends React.Component<
|
|||
): void {
|
||||
const {
|
||||
items: oldItems,
|
||||
messageChangeCounter: previousMessageChangeCounter,
|
||||
messageLoadingState: previousMessageLoadingState,
|
||||
} = prevProps;
|
||||
const {
|
||||
discardMessages,
|
||||
id,
|
||||
items: newItems,
|
||||
messageChangeCounter,
|
||||
messageLoadingState,
|
||||
} = this.props;
|
||||
|
||||
|
@ -712,7 +715,8 @@ export class Timeline extends React.Component<
|
|||
numberToKeepAtTop,
|
||||
});
|
||||
}
|
||||
} else {
|
||||
}
|
||||
if (previousMessageChangeCounter !== messageChangeCounter) {
|
||||
this.markNewestBottomVisibleMessageRead();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue