From c297033f8403b8a5d96308acc77b9399eca5e2c2 Mon Sep 17 00:00:00 2001 From: Piotr Sarnacki Date: Fri, 27 Jul 2012 20:37:42 +0200 Subject: [PATCH] Use collection instead of each I'm not sure why, but this fixes a problem that occures in builds/show. It's probably some kind of weird behavior that's happening when ember manages views insterted with each as opposed to collection management. --- .../javascripts/app/templates/repos/list.hbs | 40 ++++++++----------- assets/javascripts/app/views/repo.coffee | 37 +++++++++-------- 2 files changed, 36 insertions(+), 41 deletions(-) diff --git a/assets/javascripts/app/templates/repos/list.hbs b/assets/javascripts/app/templates/repos/list.hbs index 26dbc5e2..c1d9fff6 100644 --- a/assets/javascripts/app/templates/repos/list.hbs +++ b/assets/javascripts/app/templates/repos/list.hbs @@ -15,29 +15,21 @@
-
diff --git a/assets/javascripts/app/views/repo.coffee b/assets/javascripts/app/views/repo.coffee index 9c122e47..027a698d 100644 --- a/assets/javascripts/app/views/repo.coffee +++ b/assets/javascripts/app/views/repo.coffee @@ -18,28 +18,31 @@ 'active' if @get('tab') == 'search' ).property('tab') - RepositoriesItemView: Travis.View.extend - repositoryBinding: 'context' + RepositoriesListView: Em.CollectionView.extend + elementId: 'repositories' + repositoryBinding: 'content' + tagName: 'ul' - classes: (-> - $.compact(['repository', @get('color'), @get('selected')]).join(' ') - ).property('color', 'selected') + emptyView: Ember.View.extend + template: Ember.Handlebars.compile('
Loading
') - color: (-> - Travis.Helpers.colorForResult(@get('repository.lastBuildResult')) - ).property('repository.lastBuildResult') + itemViewClass: Travis.View.extend + repositoryBinding: 'content' + classNames: ['repository'] + classNameBindings: ['color', 'selected'] + selectedBinding: 'repository.selected' - selected: (-> - 'selected' if @get('repository.selected') - ).property('repository.selected') + color: (-> + Travis.Helpers.colorForResult(@get('repository.lastBuildResult')) + ).property('repository.lastBuildResult') - urlRepository: (-> - Travis.Urls.repository(@get('repository.slug')) - ).property('repository.slug') + urlRepository: (-> + Travis.Urls.repository(@get('repository.slug')) + ).property('repository.slug') - urlLastBuild: (-> - Travis.Urls.build(@get('repository.slug'), @get('repository.lastBuildId')) - ).property('repository.slug', 'repository.lastBuildId') + urlLastBuild: (-> + Travis.Urls.build(@get('repository.slug'), @get('repository.lastBuildId')) + ).property('repository.slug', 'repository.lastBuildId') RepositoryView: Travis.View.extend templateName: 'repos/show'