properly cleanup multiselect when changing session

This commit is contained in:
nightwing 2013-03-24 16:01:57 +04:00
commit 2d90f50491

View file

@ -831,14 +831,10 @@ exports.onSessionChange = function(e) {
var oldSession = e.oldSession; var oldSession = e.oldSession;
if (oldSession) { if (oldSession) {
// todo use events oldSession.multiSelect.removeEventListener("addRange", this.$onAddRange);
if (oldSession.multiSelect && oldSession.multiSelect.editor == this) oldSession.multiSelect.removeEventListener("removeRange", this.$onRemoveRange);
oldSession.multiSelect.editor = null; oldSession.multiSelect.removeEventListener("multiSelect", this.$onMultiSelect);
oldSession.multiSelect.removeEventListener("singleSelect", this.$onSingleSelect);
session.multiSelect.removeEventListener("addRange", this.$onAddRange);
session.multiSelect.removeEventListener("removeRange", this.$onRemoveRange);
session.multiSelect.removeEventListener("multiSelect", this.$onMultiSelect);
session.multiSelect.removeEventListener("singleSelect", this.$onSingleSelect);
} }
session.multiSelect.on("addRange", this.$onAddRange); session.multiSelect.on("addRange", this.$onAddRange);