Skip to content

Commit

Permalink
Merge pull request #1379 from martiansideofthemoon/cyndaquil
Browse files Browse the repository at this point in the history
Bug 1245760 - Moving to first non-success step on loading log viewer with…
  • Loading branch information
camd committed Apr 29, 2016
2 parents 75a4d09 + 337e891 commit 1998eb6
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 12 deletions.
26 changes: 16 additions & 10 deletions ui/js/controllers/logviewer.js
Expand Up @@ -84,6 +84,11 @@ logViewerApp.controller('LogviewerCtrl', [
$scope.selectedBegin = 'undefined';
};

$scope.setLineNumber = function(number) {
$scope.selectedBegin = number;
$scope.selectedEnd = number;
};

$scope.hasFailedSteps = function () {
var steps = $scope.artifact.step_data.steps;
for (var i = 0; i < steps.length; i++) {
Expand Down Expand Up @@ -267,19 +272,20 @@ logViewerApp.controller('LogviewerCtrl', [
if ($scope.step_data.all_errors.length === 0) {
angular.element(document).ready(function () {
if (isNaN($scope.selectedBegin)) {
$scope.displayLog($scope.step_data.steps[0], 'initialLoad');
} else {
moveScrollToLineNumber($scope.selectedBegin, $event);
for (var i = 0; i < $scope.step_data.steps.length; i++) {
var step = $scope.step_data.steps[i];
if (step.result !== "success") {
$scope.selectedBegin = step.started_linenumber;
$scope.selectedEnd = step.finished_linenumber;
break;
}
}
}
moveScrollToLineNumber($scope.selectedBegin, $event);
});
} else {
$timeout(function() {
if (isNaN($scope.selectedBegin)) {
angular.element('.lv-error-line').first().trigger('click');
} else {
moveScrollToLineNumber($scope.selectedBegin, $event);
}
}, 100);
$scope.setLineNumber($scope.step_data.all_errors[0].linenumber);
moveScrollToLineNumber($scope.selectedBegin, $event);
}
}

Expand Down
3 changes: 2 additions & 1 deletion ui/js/directives/treeherder/log_viewer_steps.js
Expand Up @@ -57,7 +57,8 @@ treeherder.directive('lvLogSteps', ['$timeout', '$q', function ($timeout, $q) {
scope.displayLog = function (step, state) {
scope.displayedStep = step;
scope.currentLineNumber = step.started_linenumber;

scope.selectedBegin = step.started_linenumber;
scope.selectedEnd = step.finished_linenumber;
scope.loadMore({}).then(function () {
$timeout(function () {
var raw = $('.lv-log-container')[0];
Expand Down
2 changes: 1 addition & 1 deletion ui/partials/logviewer/lvLogSteps.html
Expand Up @@ -21,7 +21,7 @@
ng-mouseover="check=(step==displayedStep)"
ng-mouseleave="check=false"
ng-class="{'lv-line-highlight': check}"
ng-click="scrollTo($event, step, error.linenumber); eraseSelected()"
ng-click="scrollTo($event, step, error.linenumber); eraseSelected(); setLineNumber(error.linenumber)"
class="text-left pull-left lv-error-line">
<span class="label label-default lv-line-no text-left">
{{::error.linenumber}}
Expand Down

0 comments on commit 1998eb6

Please sign in to comment.