diff --git a/assets/scripts/app/controllers/repos.coffee b/assets/scripts/app/controllers/repos.coffee index 0f8c95e7..d3c64ab8 100644 --- a/assets/scripts/app/controllers/repos.coffee +++ b/assets/scripts/app/controllers/repos.coffee @@ -3,8 +3,14 @@ require 'travis/limited_array' Travis.ReposController = Ember.ArrayController.extend defaultTab: 'recent' isLoadedBinding: 'content.isLoaded' - needs: ['currentUser'] + needs: ['currentUser', 'repo'] currentUserBinding: 'controllers.currentUser' + selectedRepo: (-> + # we need to observe also repo.content here, because we use + # ObjectProxy in repo controller + # TODO: get rid of ObjectProxy there + @get('controllers.repo.repo.content') || @get('controllers.repo.repo') + ).property('controllers.repo.repo', 'controllers.repo.repo.content') init: -> Ember.run.later(@updateTimes.bind(this), Travis.INTERVALS.updateTimes) diff --git a/assets/scripts/app/views/repo/list.coffee b/assets/scripts/app/views/repo/list.coffee index 716be416..f814d764 100644 --- a/assets/scripts/app/views/repo/list.coffee +++ b/assets/scripts/app/views/repo/list.coffee @@ -13,7 +13,9 @@ repoBinding: 'content' classNames: ['repo'] classNameBindings: ['color', 'selected'] - selectedBinding: 'repo.selected' + selected: (-> + @get('content') == @get('controller.selectedRepo') + ).property('controller.selectedRepo') color: (-> Travis.Helpers.colorForState(@get('repo.lastBuildState'))