summaryrefslogtreecommitdiff
path: root/program/js/common.js
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2014-04-18 13:04:23 +0200
committerAleksander Machniak <alec@alec.pl>2014-04-18 13:04:23 +0200
commit1db17abe7ea7f6931a13ebba48b310343f659140 (patch)
tree66a446bd3632594b0861c33d266b5bc3d0a8ddfc /program/js/common.js
parentc0b295f04b97b0543105dd6cd2c93b61342115c9 (diff)
Fix next message display after removing a message (#1489800)
Diffstat (limited to 'program/js/common.js')
-rw-r--r--program/js/common.js11
1 files changed, 8 insertions, 3 deletions
diff --git a/program/js/common.js b/program/js/common.js
index 2b20ff5ee..28f79d56f 100644
--- a/program/js/common.js
+++ b/program/js/common.js
@@ -330,13 +330,17 @@ removeEventListener: function(evt, func, obj)
triggerEvent: function(evt, e)
{
var ret, h;
+
if (e === undefined)
e = this;
else if (typeof e === 'object')
e.event = evt;
- if (this._events && this._events[evt] && !this._event_exec) {
- this._event_exec = true;
+ if (!this._event_exec)
+ this._event_exec = {};
+
+ if (this._events && this._events[evt] && !this._event_exec[evt]) {
+ this._event_exec[evt] = true;
for (var i=0; i < this._events[evt].length; i++) {
if ((h = this._events[evt][i])) {
if (typeof h.func === 'function')
@@ -359,7 +363,8 @@ triggerEvent: function(evt, e)
}
}
- this._event_exec = false;
+ delete this._event_exec[evt];
+
if (e.event) {
try {
delete e.event;