diff --git a/lib/OpenLayers/Layer.js b/lib/OpenLayers/Layer.js index 762f00c1e3..eb3640fe21 100644 --- a/lib/OpenLayers/Layer.js +++ b/lib/OpenLayers/Layer.js @@ -275,16 +275,6 @@ OpenLayers.Layer = OpenLayers.Class({ * {Float} */ minResolution: null, - - /** - * Property: resolution - * {Float} Current resolution that the layer is drawn in. This is - * used to determine whether the zoom has changed when calling - * from . Subclasses may set this.resolution to - * null prior to calling redraw to force passing zoomChanged - * true to moveTo. - */ - resolution: null, /** * APIProperty: numZoomLevels @@ -561,8 +551,7 @@ OpenLayers.Layer = OpenLayers.Class({ var extent = this.getExtent(); if (extent && this.inRange && this.visibility) { - zoomChanged = this.resolution == null || - this.resolution !== this.map.getResolution(); + var zoomChanged = true; this.moveTo(extent, zoomChanged, false); this.events.triggerEvent("moveend", {"zoomChanged": zoomChanged}); @@ -587,7 +576,6 @@ OpenLayers.Layer = OpenLayers.Class({ display = display && this.inRange; } this.display(display); - this.resolution = this.map.getResolution(); }, /** @@ -643,8 +631,6 @@ OpenLayers.Layer = OpenLayers.Class({ // deal with gutters this.setTileSize(); - - this.resolution = null; } }, diff --git a/lib/OpenLayers/Layer/HTTPRequest.js b/lib/OpenLayers/Layer/HTTPRequest.js index 35b5638491..9483e4997f 100644 --- a/lib/OpenLayers/Layer/HTTPRequest.js +++ b/lib/OpenLayers/Layer/HTTPRequest.js @@ -122,7 +122,6 @@ OpenLayers.Layer.HTTPRequest = OpenLayers.Class(OpenLayers.Layer, { */ mergeNewParams:function(newParams) { this.params = OpenLayers.Util.extend(this.params, newParams); - this.resolution = null; var ret = this.redraw(); if(this.map != null) { this.map.events.triggerEvent("changelayer", { @@ -147,7 +146,7 @@ OpenLayers.Layer.HTTPRequest = OpenLayers.Class(OpenLayers.Layer, { if (force) { return this.mergeNewParams({"_olSalt": Math.random()}); } else { - return OpenLayers.Layer.prototype.redraw.call(this); + return OpenLayers.Layer.prototype.redraw.apply(this, []); } }, diff --git a/tests/Layer.html b/tests/Layer.html index eb2c9270f7..c6ce1f80e1 100644 --- a/tests/Layer.html +++ b/tests/Layer.html @@ -672,82 +672,19 @@ // test that the moveend event was triggered t.ok(log.event, "an event was logged"); t.eq(log.event.type, "moveend", "moveend was triggered"); - t.eq(log.event.zoomChanged, false, "event says zoomChanged false"); + t.eq(log.event.zoomChanged, true, "event says zoomChanged true - poor name"); layer.moveTo = function(bounds, zoomChanged, dragging) { var extent = layer.map.getExtent(); t.ok(bounds.equals(extent), "redraw calls moveTo with the map extent"); - t.ok(!zoomChanged, - "redraw calls moveTo with zoomChanged false"); + t.ok(zoomChanged, + "redraw calls moveTo with zoomChanged true"); t.ok(!dragging, "redraw calls moveTo with dragging false"); } layer.redraw(); } - - // This function includes integration tests to verify that the - // layer's moveTo function is called with the expected value - // for zoomChanged - function test_moveTo_zoomChanged(t) { - t.plan(6); - - var log = {}; - var map = new OpenLayers.Map('map'); - - var l1 = new OpenLayers.Layer('l1', {isBaseLayer: true}); - l1.moveTo = function(bounds, zoomChanged, dragging) { - log.moveTo = {zoomChanged: zoomChanged}; - OpenLayers.Layer.prototype.moveTo.apply(this, arguments); - }; - - map.addLayer(l1); - map.zoomToMaxExtent(); - - log = {}; - l1.redraw(); - t.eq(log.moveTo.zoomChanged, false, - "[a] redraw calls moveTo with zoomChanged false"); - - log = {}; - l1.resolution = null; - l1.redraw(); - t.eq(log.moveTo.zoomChanged, true, - "[b] redraw calls moveTo with zoomChanged true"); - - l1.setVisibility(false); - log = {}; - l1.setVisibility(true); - t.eq(log.moveTo.zoomChanged, false, - "[c] redraw calls moveTo with zoomChanged false"); - - l1.setVisibility(false); - map.zoomIn(); - log = {}; - l1.setVisibility(true); - t.eq(log.moveTo.zoomChanged, true, - "[d] redraw calls moveTo with zoomChanged true"); - - l1.moveTo = OpenLayers.Layer.prototype.moveTo; - - var l2 = new OpenLayers.Layer('l2'); - l2.moveTo = function(bounds, zoomChanged, dragging) { - log.moveTo = {zoomChanged: zoomChanged}; - OpenLayers.Layer.prototype.moveTo.apply(this, arguments); - }; - log = {}; - map.addLayer(l2); - t.eq(log.moveTo.zoomChanged, true, - "[e] redraw calls moveTo with zoomChanged true"); - - map.removeLayer(l2); - log = {}; - map.addLayer(l2); - t.eq(log.moveTo.zoomChanged, true, - "[f] redraw calls moveTo with zoomChanged true"); - - map.destroy(); - } function test_layer_setIsBaseLayer(t) { t.plan(2); diff --git a/tests/Layer/HTTPRequest.html b/tests/Layer/HTTPRequest.html index 6ea34810e5..dcb6e23017 100644 --- a/tests/Layer/HTTPRequest.html +++ b/tests/Layer/HTTPRequest.html @@ -68,7 +68,7 @@ } function test_Layer_HTTPRequest_mergeNewParams (t) { - t.plan( 9 ); + t.plan( 8 ); var map = new OpenLayers.Map('map'); layer = new OpenLayers.Layer.HTTPRequest(name, url, params, options); @@ -100,9 +100,7 @@ layer.redraw = function() { t.ok(true, "layer.mergeNewParams calls layer.redraw"); - t.ok(layer.resolution === null, "layer.mergeNewParams sets resolution to null"); - }; - layer.resolution = 'fake'; + } layer.mergeNewParams(); } diff --git a/tests/Tile/Image.html b/tests/Tile/Image.html index 545a6d2826..6ef426e386 100644 --- a/tests/Tile/Image.html +++ b/tests/Tile/Image.html @@ -374,53 +374,6 @@ map.destroy(); } - // test for https://github.com/openlayers/openlayers/pull/36 - // (more an integration test than a unit test) - function test_olImageLoadError(t) { - t.plan(6); - - var map = new OpenLayers.Map('map'); - var layer = new OpenLayers.Layer.WMS("invalid", "foo", {layers: 'basic'}); - map.addLayer(layer); - - var size = new OpenLayers.Size(5, 6); - var position = new OpenLayers.Pixel(20, 30); - var bounds = new OpenLayers.Bounds(1, 2, 3, 4); - - var tile = new OpenLayers.Tile.Image(layer, position, bounds, null, size); - var log = []; - tile.events.register("loaderror", this, function(e) { - log.push([ - e.object.imgDiv.style.visibility, - OpenLayers.Element.hasClass(e.object.imgDiv, 'olImageLoadError') - ]); - }); - tile.events.register("loadend", this, function(e) { - log.push(e); - }) - tile.draw(); - - t.delay_call(0.1, function() { - - t.eq(log.length, 2, "loaderror and loadend events triggered"); - t.eq(log[0][0], "hidden", "tile still hidden when loaderror is triggered"); - t.eq(log[0][1], true, "tile has olImageLoadError class already when loaderror is triggered"); - t.ok(log[1].object === tile, "loadend event triggered after loaderror"); - - // check initial state - t.ok(OpenLayers.Element.hasClass(tile.imgDiv, 'olImageLoadError'), - 'tile image has the olImageLoadError class (init state)'); - - layer.setVisibility(false); - layer.setVisibility(true); - - t.ok(OpenLayers.Element.hasClass(tile.imgDiv, 'olImageLoadError'), - 'tile image still has the olImageLoadError class'); - - map.destroy(); - }); - } - function test_getCanvasContext(t) { if (!OpenLayers.CANVAS_SUPPORTED) { t.plan(0); @@ -445,7 +398,7 @@ }); } } - +