Fix for potential memory leaks
This commit is contained in:
parent
9c563cf080
commit
b80706089c
1 changed files with 15 additions and 8 deletions
|
@ -52,7 +52,16 @@
|
||||||
this.$('.discussion-container').append(this.view.el);
|
this.$('.discussion-container').append(this.view.el);
|
||||||
this.view.render();
|
this.view.render();
|
||||||
|
|
||||||
this.appWindow.contentWindow.addEventListener('resize', this.forceUpdateMessageFieldSize.bind(this));
|
this.$messageField = this.$('.send-message');
|
||||||
|
|
||||||
|
var onResize = this.forceUpdateMessageFieldSize.bind(this);
|
||||||
|
this.appWindow.contentWindow.addEventListener('resize', onResize);
|
||||||
|
|
||||||
|
this.appWindow.onClosed.addListener(function () {
|
||||||
|
this.appWindow.contentWindow.removeEventListener('resize', onResize);
|
||||||
|
window.autosize.destroy(this.$messageField);
|
||||||
|
this.remove();
|
||||||
|
}.bind(this));
|
||||||
|
|
||||||
setTimeout(function() {
|
setTimeout(function() {
|
||||||
this.view.scrollToBottom();
|
this.view.scrollToBottom();
|
||||||
|
@ -63,7 +72,6 @@
|
||||||
'submit .send': 'sendMessage',
|
'submit .send': 'sendMessage',
|
||||||
'input .send-message': 'updateMessageFieldSize',
|
'input .send-message': 'updateMessageFieldSize',
|
||||||
'keydown .send-message': 'updateMessageFieldSize',
|
'keydown .send-message': 'updateMessageFieldSize',
|
||||||
'close': 'remove',
|
|
||||||
'click .destroy': 'destroyMessages',
|
'click .destroy': 'destroyMessages',
|
||||||
'click .end-session': 'endSession',
|
'click .end-session': 'endSession',
|
||||||
'click .leave-group': 'leaveGroup',
|
'click .leave-group': 'leaveGroup',
|
||||||
|
@ -165,7 +173,7 @@
|
||||||
|
|
||||||
sendMessage: function(e) {
|
sendMessage: function(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
var input = this.$('.send .send-message');
|
var input = this.$messageField;
|
||||||
var message = this.replace_colons(input.val());
|
var message = this.replace_colons(input.val());
|
||||||
var convo = this.model;
|
var convo = this.model;
|
||||||
|
|
||||||
|
@ -204,20 +212,19 @@
|
||||||
return this.$('.bottom-bar form').submit();
|
return this.$('.bottom-bar form').submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
var $messageField = this.$('.send-message'),
|
var $discussionContainer = this.$('.discussion-container'),
|
||||||
$discussionContainer = this.$('.discussion-container'),
|
|
||||||
$discussionContainerPrevHeight = $discussionContainer.outerHeight(),
|
$discussionContainerPrevHeight = $discussionContainer.outerHeight(),
|
||||||
$bottomBar = this.$('.bottom-bar'),
|
$bottomBar = this.$('.bottom-bar'),
|
||||||
$bottomBarPrevHeight = $bottomBar.outerHeight();
|
$bottomBarPrevHeight = $bottomBar.outerHeight();
|
||||||
|
|
||||||
window.autosize($messageField);
|
window.autosize(this.$messageField);
|
||||||
$bottomBar.outerHeight($messageField.outerHeight() + 1);
|
$bottomBar.outerHeight(this.$messageField.outerHeight() + 1);
|
||||||
var $bottomBarNewHeight = $bottomBar.outerHeight();
|
var $bottomBarNewHeight = $bottomBar.outerHeight();
|
||||||
$discussionContainer.outerHeight($discussionContainerPrevHeight - ($bottomBarNewHeight - $bottomBarPrevHeight));
|
$discussionContainer.outerHeight($discussionContainerPrevHeight - ($bottomBarNewHeight - $bottomBarPrevHeight));
|
||||||
},
|
},
|
||||||
|
|
||||||
forceUpdateMessageFieldSize: function (event) {
|
forceUpdateMessageFieldSize: function (event) {
|
||||||
window.autosize.update(this.$('.send-message'));
|
window.autosize.update(this.$messageField);
|
||||||
this.updateMessageFieldSize(event);
|
this.updateMessageFieldSize(event);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue