commit: 1823cf435a30af3d54e8b2a072df6f8d6fa59c6d
parent: 6a50329a9c8204803ba3a85b0acb41836a5e355e
Author: Eugen Rochko <eugen@zeonfederated.com>
Date: Wed, 11 Oct 2017 19:21:44 +0200
In thread view, only scroll first update, scroll to replied-to post (#5322)
Diffstat:
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/app/javascript/mastodon/features/status/index.js b/app/javascript/mastodon/features/status/index.js
@@ -78,6 +78,7 @@ export default class Status extends ImmutablePureComponent {
componentWillReceiveProps (nextProps) {
if (nextProps.params.statusId !== this.props.params.statusId && nextProps.params.statusId) {
+ this._scrolledIntoView = false;
this.props.dispatch(fetchStatus(nextProps.params.statusId));
}
}
@@ -240,11 +241,17 @@ export default class Status extends ImmutablePureComponent {
}
componentDidUpdate () {
+ if (this._scrolledIntoView) {
+ return;
+ }
+
const { status, ancestorsIds } = this.props;
if (status && ancestorsIds && ancestorsIds.size > 0) {
- const element = this.node.querySelectorAll('.focusable')[ancestorsIds.size];
- element.scrollIntoView();
+ const element = this.node.querySelectorAll('.focusable')[ancestorsIds.size - 1];
+
+ element.scrollIntoView(true);
+ this._scrolledIntoView = true;
}
}