aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/components/RuleDetailsIssues.tsx32
-rw-r--r--sonar-core/src/main/resources/org/sonar/l10n/core.properties1
2 files changed, 26 insertions, 7 deletions
diff --git a/server/sonar-web/src/main/js/apps/coding-rules/components/RuleDetailsIssues.tsx b/server/sonar-web/src/main/js/apps/coding-rules/components/RuleDetailsIssues.tsx
index 6f953ba6bb7..60ccb04f82c 100644
--- a/server/sonar-web/src/main/js/apps/coding-rules/components/RuleDetailsIssues.tsx
+++ b/server/sonar-web/src/main/js/apps/coding-rules/components/RuleDetailsIssues.tsx
@@ -18,12 +18,14 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import * as React from 'react';
+import * as PropTypes from 'prop-types';
import { Link } from 'react-router';
-import { getFacet } from '../../../api/issues';
import DeferredSpinner from '../../../components/common/DeferredSpinner';
-import { translate } from '../../../helpers/l10n';
-import { formatMeasure } from '../../../helpers/measures';
+import Tooltip from '../../../components/controls/Tooltip';
+import { getFacet } from '../../../api/issues';
import { getIssuesUrl } from '../../../helpers/urls';
+import { formatMeasure } from '../../../helpers/measures';
+import { translate } from '../../../helpers/l10n';
interface Props {
organization: string | undefined;
@@ -45,6 +47,11 @@ interface State {
export default class RuleDetailsIssues extends React.PureComponent<Props, State> {
mounted = false;
+
+ static contextTypes = {
+ branchesEnabled: PropTypes.bool
+ };
+
state: State = { loading: true };
componentDidMount() {
@@ -103,12 +110,23 @@ export default class RuleDetailsIssues extends React.PureComponent<Props, State>
{ resolved: 'false', rules: this.props.ruleKey },
this.props.organization
);
- return (
- <>
- {' ('}
+
+ const totalItem = (
+ <span className="little-spacer-left">
+ {'('}
<Link to={path}>{total}</Link>
{')'}
- </>
+ </span>
+ );
+
+ if (!this.context.branchesEnabled) {
+ return totalItem;
+ }
+
+ return (
+ <Tooltip overlay={translate('coding_rules.issues.only_main_branches')} placement="right">
+ {totalItem}
+ </Tooltip>
);
};
diff --git a/sonar-core/src/main/resources/org/sonar/l10n/core.properties b/sonar-core/src/main/resources/org/sonar/l10n/core.properties
index 98abe3da3d8..5471f9e08e7 100644
--- a/sonar-core/src/main/resources/org/sonar/l10n/core.properties
+++ b/sonar-core/src/main/resources/org/sonar/l10n/core.properties
@@ -1225,6 +1225,7 @@ coding_rules.deactivate.confirm=Are you sure you want to deactivate this rule in
coding_rules.deactivate_in_all_quality_profiles=Deactivate In All {0} Profiles
coding_rules.inherits="{0}" inherits from "{1}"
coding_rules.issues=Issues
+coding_rules.issues.only_main_branches=Only issues from the main project branches are included.
coding_rules.most_violating_projects=Most Violating Projects
coding_rules.no_results=No Coding Rules
coding_rules.no_tags=No tags