[OpenLayers-Dev] trunk google-v3 problem resizing and switching
layers & fix
Philip Collins
Philip.Collins at unh.edu
Mon Jul 11 15:39:19 EDT 2011
Go to:
http://openlayers.org/dev/examples/google-v3.html
and make your browser window really skinny. Then try to switch the base
layer. Nothing happens. Then try to make your browser a normal size and
switch layers. Still nothing happens.
The problem is that the current code is relying upon google sending a
tiles loaded event that never occurs. Here's some code to fix that.
// patch openlayers 2.11RC to fix problem when switching to a google layer
from a non google layer after resizing the map
OpenLayers.Layer.Google.v3.onMapResize = function() {
var cache = OpenLayers.Layer.Google.cache[this.map.id];
cache.resized = true;
};
OpenLayers.Layer.Google.v3.setGMapVisibility_old =
OpenLayers.Layer.Google.v3.setGMapVisibility;
OpenLayers.Layer.Google.v3.setGMapVisibility = function(visible) {
var cache = OpenLayers.Layer.Google.cache[this.map.id];
if (visible && cache && cache.resized) {
google.maps.event.trigger(this.mapObject, "resize");
delete cache.resized;
}
OpenLayers.Layer.Google.v3.setGMapVisibility_old.apply(this,arguments);
};
Phil
--
Philip.Collins at unh.edu
University of New Hampshire
Research Computing Center
More information about the Dev
mailing list