diff options
author | Claire <claire.github-309c@sitedethib.com> | 2023-02-04 23:18:14 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-04 23:18:14 +0100 |
commit | 76b4e7727b7497c1b68e06133831701f8950ae19 (patch) | |
tree | dee110c9c6afd598b202e73283d5c8f8ae6d3999 /app/javascript/flavours/glitch/components/intersection_observer_article.js | |
parent | ec26f7c1b16ca1429991212292e35e520c617485 (diff) | |
parent | fa433ac5a638b00f5bf77ee52955696d7aa842d6 (diff) |
Merge pull request #2101 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/javascript/flavours/glitch/components/intersection_observer_article.js')
-rw-r--r-- | app/javascript/flavours/glitch/components/intersection_observer_article.js | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/app/javascript/flavours/glitch/components/intersection_observer_article.js b/app/javascript/flavours/glitch/components/intersection_observer_article.js index b28e44e4c..77cd66358 100644 --- a/app/javascript/flavours/glitch/components/intersection_observer_article.js +++ b/app/javascript/flavours/glitch/components/intersection_observer_article.js @@ -21,7 +21,7 @@ export default class IntersectionObserverArticle extends React.Component { state = { isHidden: false, // set to true in requestIdleCallback to trigger un-render - } + }; shouldComponentUpdate (nextProps, nextState) { const isUnrendered = !this.state.isIntersecting && (this.state.isHidden || this.props.cachedHeight); @@ -63,7 +63,7 @@ export default class IntersectionObserverArticle extends React.Component { scheduleIdleTask(this.calculateHeight); this.setState(this.updateStateAfterIntersection); - } + }; updateStateAfterIntersection = (prevState) => { if (prevState.isIntersecting !== false && !this.entry.isIntersecting) { @@ -73,7 +73,7 @@ export default class IntersectionObserverArticle extends React.Component { isIntersecting: this.entry.isIntersecting, isHidden: false, }; - } + }; calculateHeight = () => { const { onHeightChange, saveHeightKey, id } = this.props; @@ -84,7 +84,7 @@ export default class IntersectionObserverArticle extends React.Component { if (onHeightChange && saveHeightKey) { onHeightChange(saveHeightKey, id, this.height); } - } + }; hideIfNotIntersecting = () => { if (!this.componentMounted) { @@ -96,11 +96,11 @@ export default class IntersectionObserverArticle extends React.Component { // this is to save DOM nodes and avoid using up too much memory. // See: https://github.com/mastodon/mastodon/issues/2900 this.setState((prevState) => ({ isHidden: !prevState.isIntersecting })); - } + }; handleRef = (node) => { this.node = node; - } + }; render () { const { children, id, index, listLength, cachedHeight } = this.props; @@ -121,8 +121,9 @@ export default class IntersectionObserverArticle extends React.Component { aria-setsize={listLength} data-id={id} tabIndex='0' - style={style}> - {children && React.cloneElement(children, { hidden: !isIntersecting && (isHidden || !!cachedHeight) })} + style={style} + > + {children && React.cloneElement(children, { hidden: !isIntersecting && (isHidden || !!cachedHeight) })} </article> ); } |