diff --git a/services/web/app/views/project/editor/review-panel.jade b/services/web/app/views/project/editor/review-panel.jade index 2da1277572..f6e43f93f2 100644 --- a/services/web/app/views/project/editor/review-panel.jade +++ b/services/web/app/views/project/editor/review-panel.jade @@ -52,13 +52,15 @@ .rp-overview-loading(ng-if="reviewPanel.overview.loading") i.fa.fa-spinner.fa-spin .rp-overview-file( - ng-repeat="(doc_id, entries) in reviewPanel.entries" + ng-repeat="doc in docs" ng-if="!reviewPanel.overview.loading" ) - .rp-overview-file-header - | {{ getFileName(doc_id) }} + .rp-overview-file-header( + ng-if="reviewPanel.entries[doc.doc.id] | notEmpty" + ) + | {{ doc.path }} .rp-entry-wrapper( - ng-repeat="(entry_id, entry) in entries | orderOverviewEntries" + ng-repeat="(entry_id, entry) in reviewPanel.entries[doc.doc.id] | orderOverviewEntries" ) div(ng-if="entry.type === 'insert' || entry.type === 'delete'") change-entry( diff --git a/services/web/public/coffee/ide/file-tree/FileTreeManager.coffee b/services/web/public/coffee/ide/file-tree/FileTreeManager.coffee index 8c49d54c23..c4ad4b30a4 100644 --- a/services/web/public/coffee/ide/file-tree/FileTreeManager.coffee +++ b/services/web/public/coffee/ide/file-tree/FileTreeManager.coffee @@ -275,6 +275,16 @@ define [ doc: entity path: path } + # Keep list ordered by folders, then name + @$scope.docs.sort (a,b) -> + aDepth = (a.path.match(/\//g) || []).length + bDepth = (b.path.match(/\//g) || []).length + if aDepth - bDepth != 0 + return -(aDepth - bDepth) # Deeper path == folder first + else if a.path < b.path + return -1 + else + return 1 getEntityPath: (entity) -> @_getEntityPathInFolder @$scope.rootFolder, entity diff --git a/services/web/public/coffee/ide/review-panel/ReviewPanelManager.coffee b/services/web/public/coffee/ide/review-panel/ReviewPanelManager.coffee index 6a23d15016..cd1231c798 100644 --- a/services/web/public/coffee/ide/review-panel/ReviewPanelManager.coffee +++ b/services/web/public/coffee/ide/review-panel/ReviewPanelManager.coffee @@ -5,5 +5,6 @@ define [ "ide/review-panel/directives/changeEntry" "ide/review-panel/directives/commentEntry" "ide/review-panel/directives/addCommentEntry" + "ide/review-panel/filters/notEmpty" "ide/review-panel/filters/orderOverviewEntries" ], () -> \ No newline at end of file diff --git a/services/web/public/coffee/ide/review-panel/controllers/ReviewPanelController.coffee b/services/web/public/coffee/ide/review-panel/controllers/ReviewPanelController.coffee index 8543e86402..0990baac4d 100644 --- a/services/web/public/coffee/ide/review-panel/controllers/ReviewPanelController.coffee +++ b/services/web/public/coffee/ide/review-panel/controllers/ReviewPanelController.coffee @@ -354,15 +354,6 @@ define [ $scope.gotoEntry = (doc_id, entry) -> ide.editorManager.openDocId(doc_id, { gotoOffset: entry.offset }) - DOC_ID_NAMES = {} - $scope.getFileName = (doc_id) -> - # This is called a lot and is relatively expensive, so cache the result - if !DOC_ID_NAMES[doc_id]? - entity = ide.fileTreeManager.findEntityById(doc_id) - return if !entity? - DOC_ID_NAMES[doc_id] = ide.fileTreeManager.getEntityPath(entity) - return DOC_ID_NAMES[doc_id] - # TODO: Eventually we need to get this from the server, and update it # when we get an id we don't know. This'll do for client side testing refreshUsers = () -> diff --git a/services/web/public/coffee/ide/review-panel/filters/notEmpty.coffee b/services/web/public/coffee/ide/review-panel/filters/notEmpty.coffee new file mode 100644 index 0000000000..52100c7ff1 --- /dev/null +++ b/services/web/public/coffee/ide/review-panel/filters/notEmpty.coffee @@ -0,0 +1,5 @@ +define [ + "base" +], (App) -> + app.filter 'notEmpty', () -> + (object) -> !angular.equals({}, object)