mirror of
https://github.com/mastodon/mastodon.git
synced 2024-12-23 18:02:59 +01:00
cache currently-viewing status id to avoid calling redux with identical value
This commit is contained in:
parent
07e26142ef
commit
c93df2159f
1 changed files with 7 additions and 0 deletions
|
@ -60,6 +60,12 @@ export default class StatusList extends ImmutablePureComponent {
|
||||||
this.props.onLoadMore(this.props.statusIds.size > 0 ? this.props.statusIds.last() : undefined);
|
this.props.onLoadMore(this.props.statusIds.size > 0 ? this.props.statusIds.last() : undefined);
|
||||||
}, 300, { leading: true })
|
}, 300, { leading: true })
|
||||||
|
|
||||||
|
updateCurrentlyViewingWithCache = (id) => {
|
||||||
|
if(this.cachedCurrentlyViewing === id) return;
|
||||||
|
this.cachedCurrentlyViewing = id;
|
||||||
|
this.props.updateCurrentlyViewing(id);
|
||||||
|
}
|
||||||
|
|
||||||
_selectChild (index, align_top) {
|
_selectChild (index, align_top) {
|
||||||
const container = this.node.node;
|
const container = this.node.node;
|
||||||
const element = container.querySelector(`article:nth-of-type(${index + 1}) .focusable`);
|
const element = container.querySelector(`article:nth-of-type(${index + 1}) .focusable`);
|
||||||
|
@ -81,6 +87,7 @@ export default class StatusList extends ImmutablePureComponent {
|
||||||
render () {
|
render () {
|
||||||
const { statusIds, featuredStatusIds, shouldUpdateScroll, onLoadMore, timelineId, ...other } = this.props;
|
const { statusIds, featuredStatusIds, shouldUpdateScroll, onLoadMore, timelineId, ...other } = this.props;
|
||||||
const { isLoading, isPartial } = other;
|
const { isLoading, isPartial } = other;
|
||||||
|
other.updateCurrentlyViewing = this.updateCurrentlyViewingWithCache;
|
||||||
|
|
||||||
if (isPartial) {
|
if (isPartial) {
|
||||||
return <RegenerationIndicator />;
|
return <RegenerationIndicator />;
|
||||||
|
|
Loading…
Reference in a new issue