From 1dea058da99fa2c8e33c5ace9778536d9dac39c7 Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Wed, 18 Jun 2014 11:37:23 +0600 Subject: [PATCH] SONAR-5209 Differential mode feedback --- .../component-viewer/mixins/main-coverage.coffee | 14 ++++++++++++-- .../mixins/main-duplications.coffee | 8 +++++--- .../component-viewer/mixins/main-issues.coffee | 2 +- .../coffee/component-viewer/mixins/main-scm.coffee | 7 ++++++- sonar-server/src/main/js/issues/extra.js | 7 +------ 5 files changed, 25 insertions(+), 13 deletions(-) diff --git a/sonar-server/src/main/coffee/component-viewer/mixins/main-coverage.coffee b/sonar-server/src/main/coffee/component-viewer/mixins/main-coverage.coffee index c252c3d1f16..607cc1e42bf 100644 --- a/sonar-server/src/main/coffee/component-viewer/mixins/main-coverage.coffee +++ b/sonar-server/src/main/coffee/component-viewer/mixins/main-coverage.coffee @@ -47,11 +47,21 @@ define [], () -> filterByCoverage: (predicate) -> - @requestCoverage(@key).done => @_filterByCoverage(predicate) + requests = [@requestCoverage(@key)] + if @settings.get('issues') && !@state.get('hasIssues') + requests.push @requestIssues @key + $.when.apply($, requests).done => + @filterByUnresolvedIssues() + @_filterByCoverage(predicate) filterByCoverageIT: (predicate) -> - @requestCoverage(@key, 'IT').done => @_filterByCoverage(predicate) + requests = [@requestCoverage(@key)] + if @settings.get('issues') && !@state.get('hasIssues') + requests.push @requestIssues @key + $.when.apply($, requests).done => + @filterByUnresolvedIssues() + @_filterByCoverage(predicate) _filterByCoverage: (predicate) -> diff --git a/sonar-server/src/main/coffee/component-viewer/mixins/main-duplications.coffee b/sonar-server/src/main/coffee/component-viewer/mixins/main-duplications.coffee index 93d004abfec..4a2986e80a8 100644 --- a/sonar-server/src/main/coffee/component-viewer/mixins/main-duplications.coffee +++ b/sonar-server/src/main/coffee/component-viewer/mixins/main-duplications.coffee @@ -49,9 +49,11 @@ define [], () -> # Duplications filterByDuplications: -> - unless @state.get 'hasDuplications' - @requestDuplications(@key).done => @_filterByDuplications() - else + requests = [@requestDuplications(@key)] + if @settings.get('issues') && !@state.get('hasIssues') + requests.push @requestIssues @key + $.when.apply($, requests).done => + @filterByUnresolvedIssues() @_filterByDuplications() diff --git a/sonar-server/src/main/coffee/component-viewer/mixins/main-issues.coffee b/sonar-server/src/main/coffee/component-viewer/mixins/main-issues.coffee index 67258d6490c..32aabd46c0a 100644 --- a/sonar-server/src/main/coffee/component-viewer/mixins/main-issues.coffee +++ b/sonar-server/src/main/coffee/component-viewer/mixins/main-issues.coffee @@ -19,7 +19,7 @@ define [ extra_fields: 'actions,transitions,assigneeName,actionPlanName' $.get API_ISSUES, options, (data) => @state.set 'hasIssues', true - @source.set issues: data.issues + @source.set issues: data.issues, activeIssues: data.issues showIssues: (store = false, issue) -> diff --git a/sonar-server/src/main/coffee/component-viewer/mixins/main-scm.coffee b/sonar-server/src/main/coffee/component-viewer/mixins/main-scm.coffee index b33e0090673..48def232547 100644 --- a/sonar-server/src/main/coffee/component-viewer/mixins/main-scm.coffee +++ b/sonar-server/src/main/coffee/component-viewer/mixins/main-scm.coffee @@ -48,7 +48,12 @@ define [], () -> filterBySCM: -> - @requestSCM(@key).done => @_filterBySCM() + requests = [@requestSCM(@key)] + if @settings.get('issues') && !@state.get('hasIssues') + requests.push @requestIssues @key + $.when.apply($, requests).done => + @filterByUnresolvedIssues() + @_filterBySCM() _filterBySCM: () -> diff --git a/sonar-server/src/main/js/issues/extra.js b/sonar-server/src/main/js/issues/extra.js index 2ad691cbbaa..bd1be25048a 100644 --- a/sonar-server/src/main/js/issues/extra.js +++ b/sonar-server/src/main/js/issues/extra.js @@ -155,14 +155,9 @@ define( showCallback = function () { jQuery('.navigator-details').removeClass('navigator-fetching'); app.detailsRegion.show(componentViewer); + componentViewer.settings.set('issues', false); componentViewer.open(that.model.get('component')).done(function() { componentViewer.showIssues(false, that.model.toJSON()); - - var row = componentViewer.$('.code-issue:first').closest('.row'); - if (row.data('line-number') > 0) { - var top = row.position().top; - jQuery('.navigator-details').scrollTop(top - 40); - } }); }; -- 2.39.5