]> source.dussan.org Git - sonarqube.git/commitdiff
Ensure first link in ToC get marked as active on page load
authorPascal Mugnier <pascal.mugnier@sonarsource.com>
Thu, 25 Oct 2018 12:55:20 +0000 (14:55 +0200)
committersonartech <sonartech@sonarsource.com>
Tue, 30 Oct 2018 11:42:04 +0000 (12:42 +0100)
server/sonar-docs/src/layouts/components/HeadingsLink.js

index 4d16c0027f76ef49399a49a9a930736a66cda33a..a940422b4accd9dccda5b65529ff4d6a872f3b29 100644 (file)
@@ -39,6 +39,7 @@ export default class HeadingsLink extends React.Component {
 
   componentDidMount() {
     document.addEventListener('scroll', this.scrollHandler, true);
+    this.scrollHandler();
   }
 
   componentWillReceiveProps(nextProps) {
@@ -64,9 +65,10 @@ export default class HeadingsLink extends React.Component {
       }
       headingIndex = i;
     }
+    const scrollLimit = document.body.scrollHeight - document.body.clientHeight;
     this.setState({
       activeIndex: headingIndex,
-      marginTop: Math.max(MINIMUM_TOP_MARGIN, scrollTop)
+      marginTop: Math.max(MINIMUM_TOP_MARGIN, Math.min(scrollTop, scrollLimit))
     });
     this.markH2(headingIndex + 1, false);
   };