diff --git a/js/conversation_panel.js b/js/conversation_panel.js index c79a9b0ad..a79dd7a15 100644 --- a/js/conversation_panel.js +++ b/js/conversation_panel.js @@ -22,6 +22,7 @@ function loadConversation (id) { var conversation = new Whisper.Conversation({ id: id }); conversation.fetch().then(function () { + window.document.title = conversation.getTitle(); new Whisper.ConversationView({ model: conversation }).render().$el.prependTo($('body')); @@ -31,7 +32,7 @@ var bg = extension.windows.getBackground(); extension.windows.getCurrent(function (windowInfo) { - var windowId = window.document.title = windowInfo.id; + var windowId = windowInfo.id; // close the panel if background.html is refreshed bg.addEventListener('beforeunload', function () { diff --git a/js/models/conversations.js b/js/models/conversations.js index 7aeb8b18c..d7dd07bdd 100644 --- a/js/models/conversations.js +++ b/js/models/conversations.js @@ -118,6 +118,10 @@ _.each(models, function(message) { message.destroy(); }); this.archive(); return this.save(); + }, + + getTitle: function() { + return this.get('name') || this.get('members') || this.id; } }); diff --git a/js/views/conversation_list_item_view.js b/js/views/conversation_list_item_view.js index 2d8ae7444..ecadcd840 100644 --- a/js/views/conversation_list_item_view.js +++ b/js/views/conversation_list_item_view.js @@ -45,7 +45,7 @@ var Whisper = Whisper || {}; render: function() { this.$el.html( Mustache.render(this.template, { - contact_name: this.model.get('name') || this.model.get('members') || this.model.id, + contact_name: this.model.getTitle(), last_message: this.model.get('lastMessage'), last_message_timestamp: moment(this.model.get('timestamp')).format('MMM D') })