Don't attach IntersectionObserver for wrapped statuses (#3863)

This fixes a bug that sometimes boosted statuses being hidden on scrolling.

Previously, we've attached IntersectionObserver twice for boosted statuses:
wrapper Status and wrapped Status. This will call intersection handler twice,
so this may results race condition...probably.
lolsob-rspec
unarist 2017-06-20 11:12:51 +09:00 committed by Eugen Rochko
parent 9e5c733a66
commit 79c04b0a2c
1 changed files with 4 additions and 1 deletions

View File

@ -154,7 +154,10 @@ class Status extends ImmutablePureComponent {
render () { render () {
let media = null; let media = null;
let statusAvatar; let statusAvatar;
const { status, account, ...other } = this.props;
// Exclude intersectionObserverWrapper from `other` variable
// because intersection is managed in here.
const { status, account, intersectionObserverWrapper, ...other } = this.props;
const { isExpanded, isIntersecting, isHidden } = this.state; const { isExpanded, isIntersecting, isHidden } = this.state;
if (status === null) { if (status === null) {