aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/src
diff options
context:
space:
mode:
authorGrégoire Aubert <gregoire.aubert@sonarsource.com>2017-08-16 09:21:04 +0200
committerGrégoire Aubert <gregoire.aubert@sonarsource.com>2017-08-17 16:42:34 +0200
commitf0473f092727b547cc706e103ea33fa254c5e784 (patch)
treed7883864568f5729980a035bc8589398df92969c /server/sonar-web/src
parent92a5bd4f512a7d9db533d04b051b92c3a3bec6c7 (diff)
downloadsonarqube-f0473f092727b547cc706e103ea33fa254c5e784.tar.gz
sonarqube-f0473f092727b547cc706e103ea33fa254c5e784.zip
Fix quality flaws
Diffstat (limited to 'server/sonar-web/src')
-rw-r--r--server/sonar-web/src/main/js/apps/projectActivity/components/ProjectActivityAnalysesList.js51
-rw-r--r--server/sonar-web/src/main/js/components/charts/TreeMapRect.js14
2 files changed, 36 insertions, 29 deletions
diff --git a/server/sonar-web/src/main/js/apps/projectActivity/components/ProjectActivityAnalysesList.js b/server/sonar-web/src/main/js/apps/projectActivity/components/ProjectActivityAnalysesList.js
index ffb96775dc9..e6a4b4f24b2 100644
--- a/server/sonar-web/src/main/js/apps/projectActivity/components/ProjectActivityAnalysesList.js
+++ b/server/sonar-web/src/main/js/apps/projectActivity/components/ProjectActivityAnalysesList.js
@@ -112,32 +112,37 @@ export default class ProjectActivityAnalysesList extends React.PureComponent {
};
updateStickyBadges = (forceBadgeAlignement /*: ?boolean */) => {
- if (this.scrollContainer && this.badges) {
- const scrollTop = this.scrollContainer.scrollTop;
- if (scrollTop != null) {
- let newScrollTop;
- for (let i = 1; i < this.badges.length; i++) {
- const badge = this.badges[i];
- let originOffsetTop = badge.getAttribute('originOffsetTop');
- if (originOffsetTop == null) {
- // Set the originOffsetTop attribute, to avoid using getBoundingClientRect
- originOffsetTop = badge.offsetTop;
- badge.setAttribute('originOffsetTop', originOffsetTop.toString());
- }
- if (Number(originOffsetTop) < scrollTop + 18 + i * 2) {
- if (forceBadgeAlignement && !badge.classList.contains('sticky')) {
- newScrollTop = originOffsetTop;
- }
- badge.classList.add('sticky');
- } else {
- badge.classList.remove('sticky');
- }
- }
- if (forceBadgeAlignement && newScrollTop != null) {
- this.scrollContainer.scrollTop = newScrollTop - 6;
+ if (!this.scrollContainer || !this.badges) {
+ return;
+ }
+
+ const scrollTop = this.scrollContainer.scrollTop;
+ if (scrollTop == null) {
+ return;
+ }
+
+ let newScrollTop;
+ for (let i = 1; i < this.badges.length; i++) {
+ const badge = this.badges[i];
+ let originOffsetTop = badge.getAttribute('originOffsetTop');
+ if (originOffsetTop == null) {
+ // Set the originOffsetTop attribute, to avoid using getBoundingClientRect
+ originOffsetTop = badge.offsetTop;
+ badge.setAttribute('originOffsetTop', originOffsetTop.toString());
+ }
+ if (Number(originOffsetTop) < scrollTop + 18 + i * 2) {
+ if (forceBadgeAlignement && !badge.classList.contains('sticky')) {
+ newScrollTop = originOffsetTop;
}
+ badge.classList.add('sticky');
+ } else {
+ badge.classList.remove('sticky');
}
}
+
+ if (forceBadgeAlignement && newScrollTop != null) {
+ this.scrollContainer.scrollTop = newScrollTop - 6;
+ }
};
updateSelectedDate = (date /*: Date */) => this.props.updateQuery({ selectedDate: date });
diff --git a/server/sonar-web/src/main/js/components/charts/TreeMapRect.js b/server/sonar-web/src/main/js/components/charts/TreeMapRect.js
index 0f6205ef06d..357bd6e5c4e 100644
--- a/server/sonar-web/src/main/js/components/charts/TreeMapRect.js
+++ b/server/sonar-web/src/main/js/components/charts/TreeMapRect.js
@@ -56,13 +56,15 @@ export default class TreeMapRect extends React.PureComponent {
renderLink = () => {
const { link, height, width } = this.props;
- if (link != null && width >= 24 && height >= 24 && (width >= 48 || height >= 50)) {
- return (
- <Link className="treemap-link" to={link} onClick={this.handleLinkClick}>
- <LinkIcon />
- </Link>
- );
+ const hasMinSize = width >= 24 && height >= 24 && (width >= 48 || height >= 50);
+ if (!hasMinSize || link == null) {
+ return null;
}
+ return (
+ <Link className="treemap-link" to={link} onClick={this.handleLinkClick}>
+ <LinkIcon />
+ </Link>
+ );
};
renderCell = () => {