diff --git a/src/ol/extent.js b/src/ol/extent.js index 9858190746..cc74b803fb 100644 --- a/src/ol/extent.js +++ b/src/ol/extent.js @@ -400,26 +400,25 @@ export function extendXY(extent, x, y) { * callback returns a truthy value the function returns that value * immediately. Otherwise the function returns `false`. * @param {Extent} extent Extent. - * @param {function(this:T, import("./coordinate.js").Coordinate): S} callback Callback. - * @param {T=} opt_this Value to use as `this` when executing `callback`. + * @param {function(import("./coordinate.js").Coordinate): S} callback Callback. * @return {S|boolean} Value. - * @template S, T + * @template S */ -export function forEachCorner(extent, callback, opt_this) { +export function forEachCorner(extent, callback) { let val; - val = callback.call(opt_this, getBottomLeft(extent)); + val = callback(getBottomLeft(extent)); if (val) { return val; } - val = callback.call(opt_this, getBottomRight(extent)); + val = callback(getBottomRight(extent)); if (val) { return val; } - val = callback.call(opt_this, getTopRight(extent)); + val = callback(getTopRight(extent)); if (val) { return val; } - val = callback.call(opt_this, getTopLeft(extent)); + val = callback(getTopLeft(extent)); if (val) { return val; } diff --git a/src/ol/geom/Circle.js b/src/ol/geom/Circle.js index 5b38988a77..7ee4ffab44 100644 --- a/src/ol/geom/Circle.js +++ b/src/ol/geom/Circle.js @@ -143,7 +143,7 @@ class Circle extends SimpleGeometry { return true; } - return forEachCorner(extent, this.intersectsCoordinate, this); + return forEachCorner(extent, this.intersectsCoordinate.bind(this)); } return false; diff --git a/test/spec/ol/extent.test.js b/test/spec/ol/extent.test.js index e0984eb4b9..eb59120a2e 100644 --- a/test/spec/ol/extent.test.js +++ b/test/spec/ol/extent.test.js @@ -239,13 +239,6 @@ describe('ol.extent', function() { } ); - it('calls the callback with given scope', function() { - const extent = [1, 2, 3, 4]; - const scope = {humpty: 'dumpty'}; - _ol_extent_.forEachCorner(extent, callbackTrue, scope); - expect(callbackTrue.calledOn(scope)).to.be(true); - }); - }); describe('getArea', function() {