From 37ab50e2e47049281f1686a8dd45ae37bcaeab73 Mon Sep 17 00:00:00 2001 From: tsauerwein Date: Tue, 4 Feb 2014 09:58:19 +0100 Subject: [PATCH] use goog.bind, safari does not support the native bind --- src/ol/pointer/pointereventhandler.js | 5 +++-- src/ol/pointer/touchsource.js | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/ol/pointer/pointereventhandler.js b/src/ol/pointer/pointereventhandler.js index f9450b9a2d..b16f72893b 100644 --- a/src/ol/pointer/pointereventhandler.js +++ b/src/ol/pointer/pointereventhandler.js @@ -68,6 +68,7 @@ ol.pointer.PointerEventHandler = function(element) { */ this.pointerMap = new goog.structs.Map(); + /** * @const * @type {ol.structs.WeakMap} @@ -87,7 +88,7 @@ ol.pointer.PointerEventHandler = function(element) { this.eventSources = {}; this.eventSourceList = []; - this.boundHandler_ = this.eventHandler_.bind(this); + this.boundHandler_ = goog.bind(this.eventHandler_, this); this.registerSources(); }; @@ -167,7 +168,7 @@ ol.pointer.PointerEventHandler.prototype.registerSource = var handler = s.getHandlerForEvent(e); if (handler) { - this.eventMap[e] = handler.bind(s); + this.eventMap[e] = goog.bind(handler, s); } }, this); this.eventSources[name] = s; diff --git a/src/ol/pointer/touchsource.js b/src/ol/pointer/touchsource.js index 75dc2f5018..4cfc79a220 100644 --- a/src/ol/pointer/touchsource.js +++ b/src/ol/pointer/touchsource.js @@ -128,7 +128,7 @@ ol.pointer.TouchSource.prototype.resetClickCount_ = function() { this.clickCount = 0; this.resetId = null; }; - this.resetId = setTimeout(fn.bind(this), this.CLICK_COUNT_TIMEOUT); + this.resetId = setTimeout(goog.bind(fn, this), this.CLICK_COUNT_TIMEOUT); }; @@ -397,12 +397,12 @@ ol.pointer.TouchSource.prototype.dedupSynthMouse_ = function(inEvent) { // remember x/y of last touch var lt = {x: t.clientX, y: t.clientY}; lts.push(lt); - var fn = (function(lts, lt) { + var fn = goog.bind(function(lts, lt) { var i = lts.indexOf(lt); if (i > -1) { lts.splice(i, 1); } - }).bind(null, lts, lt); + }, null, lts, lt); setTimeout(fn, this.DEDUP_TIMEOUT); } };