Unlisten before calling listener and bind to target by default

This commit is contained in:
Andreas Hocevar
2016-02-25 17:32:55 +01:00
parent fa180cfa13
commit 00a0f14743
2 changed files with 24 additions and 14 deletions

View File

@@ -107,11 +107,12 @@ ol.events.ListenerObjType;
*/
ol.events.bindListener_ = function(listenerObj) {
var boundListener = function(evt) {
var rv = listenerObj.listener.call(listenerObj.bindTo, evt);
var listener = listenerObj.listener;
var bindTo = listenerObj.bindTo || listenerObj.target;
if (listenerObj.callOnce) {
ol.events.unlistenByKey(listenerObj);
}
return rv;
return listener.call(bindTo, evt);
}
listenerObj.boundListener = boundListener;
return boundListener;