New Features
New Functionality:
- Graticule Control (#1083)
- Support for image layers tiled using Zoomify storage standard (#1285)
- Atom Format (#1366)
- Add CSW support as an OpenLayers Format (#2132)
- Create a possibility to refresh a vector layer every N seconds (#2317)
- Parser for SOS GetCapabilities (#2337)
- Parser for SOS GetFeatureOfInterest (#2347)
- Format for SOS GetObservation (#2372)
- Protocol for Sensor Observation Service (#2373)
- Create a TransformFeature control (#2433)
- WMS 1.3 support (#2284 #2294 #2355)
Strategy/Protocol Improvements:
- Strategy.Save new events (#1902)
- Allow WFS Protocol to have a different outputFormat (#2107)
- use layer.filter in Strategy.Fixed (#2152)
- allow protocol to be configured with a default filter for read method (#2292)
- extend Protocol.HTTP for MapFish and FeatureServer (#2393)
Format improvements:
- Format.WMSDescribeLayer: store layerName (#2027)
- Format.WMC: protect against MinScaleDenominator of 0 (#2028)
- Format.WFST: cannot write transaction without geometry (#2033)
- KML Format does not support SimpleData elements in ExtendedData (#2062)
- allow use of sld writers in other formats (#2087)
- Add parsing of Attribution, KeywordList and MetadataURL to WMSCapabilities (#2145)
- complete parsing of WMSCapabilities document (#2164)
- OpenLayers.Format.SLD does not work against ArcGIS Server (#2166)
- Format.WMC write sld:min/maxScaleDenominator in the right place (#2174)
- WFST 1.0.0 format: include srsName (GeoServer vendor param) in wfs:Query node (#2228)
- make WFS protocol and format more robust (#2237)
- OpenLayers.Format.WFSCapabilities.v1_0_0 : more parsing of capabilities document (#2245)
- Update WMC format to support params that are not OL Layer properties (#2251)
- WMSCapabilities should call initialize on XML prototype tschaub feature (#2269)
- rewrite WMS GetCapabilities parser (#2283)
- Format.WMSGetFeatureInfo: parse boundedBy if present for msGMLOutput (#2329)
- Parsing of KML attributes gets confused with line breaks (#2398)
- Format.KML: parse outline attribute (#2412)
- Format.KML: don't create name and description node if null (#2417)
- Format.KML - typo - missing break in case declaration (#2448)
Other improvements:
- Theme LayerSwitcher with CSS (#1632)
- Double clicks on Panel control fall through to map (#2069)
- WMSGetFeatureInfo control: add support for mutiple WMS services (#2091)
- updateSize should not call setCenter if map has no center (#2105)
- calling setVisibility when setBaseLayer is used (#2111)
- trigger an event when the layer's opacity change (#2112)
- create an option to cancel adding a layer (#2121)
- WMSGetFeatureInfo: add beforegetfeatureinfo event (#2127)
- Allow OpenLayers.ProxyHost to reference a function (#2128)
- enhance createLiterals to merge context, attributes and data (#2146)
- enabling vector features to be selectable from their text node (#2148)
- use indexOf native function when available (#2167)
- add changelayer event to mergeNewParams function (#2179)
- Introduce standalone mode for ModifyFeature control (#2199)
- add control autoActivate (#2200)
- Improvements to nb translation (#2212)
- LineString.js implied global vars (#2217)
- OpenLayers.Request: let us choose whether we want to run callbacks or not (without duplicating code) (#2218)
- Control.GetFeature: use result.success() (#2227)
- WMSGetFeatureInfo control: WMS version parameter (#2236)
- GetFeature doesn't handle Handler.Box case when result of user interaction is a pixel (#2256)
- Add possibility to ignore duplicate attribution strings for Control.Attribution (#2266)
- Layer vector's getDataExtent method fails on features without geometry (#2267)
- Option to turn off animation of Layer.VirtualEarth (#2286)
- PanZoomBar-Control: add possibility to only zoom to fixed scales even though map.fractionalZoom is set to true (#2288)
- Create an urlAppend function that appends strings to urls and handles ? and & appropriately (#2297)
- Add label offset to styles (#2312)
- move pink tiles to css (#2318)
- give the PanPanel a slideFactor (#2320)
- Support for Layers with cropped edge tiles (with different dimension than the regular grid) (#2324)
- GetFeature Control needs customisable filter type (like INTERSECTS) (#2325)
- set specific baseLayers radio button name to avoid several layerswitcher conflict (#2331)
- apply default options to map when reading a WMC document (#2339)
- add setLayer function to SelectFeature control (#2340)
- add option to the MouseWheel handler to trigger up/down events only when wheel is released (#2345)
- NavigationHistory - move code getting the current state in a method (#2377)
- featuresremoved event is called with zero lenght array if layer.selectedFeature is supplied to layer.removeFeatures (#2379)
- overview map control destroys drag handler too late (#2383)
- _getScriptLocation appears to be a performance bottleneck (#2389)
- give map a method "addControls" to add an array of controls to the map (#2399)
- don't calculateInRange() if it's not needed (#2400)
- graphicName SVG rendering issues in some Safari and Chrome versions (#2402)
- MousePosition control should support mouseOut event (#2404)
- allow user to enable or disable zoomBox in Navigation control (#2416)
- selecting features using a box shouldn't select unrendered features (#2418)
- Change maximum zoom for Google layers (#2429)
- feature label: support fontOpacity (#2438)
- add to GetFeature an event that will send all features at once in an array (#2442)
- MouseWheel: non cumulative mode (#2450)
- Layer.Google resize issue (#2475)
- ScaleLine: move css outside of the code (#2476)
- Map.getResolution needs a fallback to 1st layer in allOverlays mode (#2479)
- allow for layers, center, and zoom in map constructor (#2480)
- Typo in LayerSwitcher causes ugly styling (#2512)
- be liberal when encountering "+" in URI components (#2527)
- Support right mouse click in WMSGetFeatureInfo (#2528)
- Geometry.LinearRing: getCentroid returns NaN without components (#2530)
- add multi option to DrawFeature control (#2542)
- updated i18n files (#2582)
Bug fixes
- Google layers won't get resized properly on map.updateSize() (#1797)
- non symetric graphicName symbols rendered symetric in IE (#1836)
- Move slider to wrong position when click on zoom bar after drag slider (#1861)
- Scale and ScaleLine in Google approx double correct figure at some res'ns (#1890)
- Setting numZoomLevels to 17 or more breaks Virtual Earth layer (#1893)
- WMSGetFeatureInfo format error tschaub bug closed (#2002)
- Undocumented property 'filter' in Layer.Vector assumed in BBOX Strategy (#2061)
- GeoJSON input should accept 3D coords (#2070)
- Google Maps centre moves to the SE on changing layers (#2078)
- Unused code in updateSize method of Map (#2114)
- Radius circle doesn't change for Canvas Vector Layer (#2126)
- zoom-plus-mini.png not found (#2147)
- WMSGetCapabilities: scalehint values seem incorrect (#2150)
- map pan tween should stop playing in destroy (#2156)
- Control.WMSGetFeatureInfo: constructed url styles parameter is a list of "undefined" (#2157)
- Bad Encoding in Catalan translation breaks IE6 (#2161)
- mistake in example map constructor (#2168)
- SetCenter and zoomTo using string results in strange behavior (#2180)
- Feature.destroy does not remove marker from layer (#2181)
- Case-Sensitivity-Bug in class PanZoomBar causes problems changing zoombar style (and more) (#2188)
- Not tagging the geometry on the svg/vml node saves a lot of memory (#2198)
- GetFeatureInfo request needs all required GetMap parameters except VERSION (and REQUEST is GetFeatureInfo of course) (#2201)
- cannot unselect on clickout when selecting by drawing a box (#2204)
- Save strategy should preserve feature.url when transforming (#2215)
- ModifyFeature control in standalone mode should only allow dragging of the selected feature (#2219)
- properly handle null attribute values in WFS update (#2222)
- Control.GetFeature: unselectAll defined twice (#2229)
- VML Renderer : drawText error when using fontColor (#2231)
- When writing a WMC, bounds should not be rounded to a predefined precision (#2242)
- Format.GML.v2 and v3 fail when there's no geometry but bounds. JS error. (#2255)
- layer container and viewport elements can have same ids for multiple maps (#2259)
- SLD format should write dash style and linecap (#2270)
- handle dash arrays with spaces (#2271)
- VirtualEarth layer size never updated (#2285)
- funkiness with allOverlays and one layer maps (#2290)
- Missing @requires directive in Layer/Text.js results in broken custom singlefile-builds (#2298)
- Missing @requires directive in Layer/XYZ.js results in broken custom singlefile-builds (#2299)
- Don't show duplicate attribution by default (#2300)
- Filter format for 1.1.0 should read/write escapeChar instead of escape attribute (#2301)
- return!!(document.namespaces) in support function of VML causes error in IE (7&8) (#2304)
- Memory: PanZoom.getSlideFactor (#2323)
- Remove some unused and undefined local variables (#2326)
- OpenLayers.Util.getParameters not recognize %2C for comma separation (#2327)
- Google termsOfUse are visible on all Layers on startup (#2328)
- Layer.WFS missing OpenLayers.Util.upperCaseObject(params) (#2362)
- Code example in "Marker Overlays" chapter is wrong (#2369)
- mouse wheeling results in fractional zoom levels (#2376)
- PanZoomBar slider bug winxp IE6+, firefox 3+ (#2384)
- Layer.Vector has no proper clone() method (#2391)
- LoadingPanel never stops using Layer.WMS.Post with Internet Explorer (#2406)
- olImageLoadError class name added but never removed (#2407)
- Format.KML: parse LabelStyle (#2413)
- OpenLayers.Element.getDimensions method should not set style.display property to none (#2414)
- VML renderer should only rotate point geometries (#2423)
- Format.KML: always export coordinates in WGS84 (#2424)
- make OverviewMap.destroy more robust (#2430)
- GML parser fails where attribute name matches feature type name (#2435)
- canvas and textAlign: middle not recognized (#2439)
- Map.updateSize does not correctly check for the existence of layers (#2443)
- Browser resize can cause infinite event loop ('moveStart' -> 'updateSize') (#2447)
- EventPane layers cannot be added to a map after being removed from one (#2456)
- scale not preserved when switching base layers (#2457)
- remove global and unused variable (#2459)
- if a map is initialized on a element that is not displayed, updateSize fails (#2461)
- getResolutionFromScale should return undefined resolution for falsey scale (#2464)
- vector features aren't rendered in IE (#2465)
- google terms of use and powered by elements are not styled properly in IE (#2466)
- NavigationHistory: clear should deactivate controls (#2471)
- Lang file encoding error when not utf-8 (#2472)
- Give Layer.Google a proper clone() method (#2473)
- Cloning layers creates clones with the initial state of the original, not the current one (#2477)
- wrong fillColor with externalGraphic and Collection geometry (#2485)
- Vector symbol rotation doesn't rotate against center in Safari (#2499)
- Rendering a previously rotated geometry will not rotate it back (#2500)
- SelectFeature: When control destroy the layers disappear. (#2502)
- vector layers: loadstart event eventually triggered without loadend (#2504)
- Renderer.VML: missing semicolon, global variables (#2529)
- MapGuide: use map.getSize instead of map.getCurrentSize (#2532)
- Superfluous "limit" in Layer.XYZ (#2558)
- accept center with no layers in map constructor (#2561)
- setOpacity not working on Google layer (#2562)
- labelAlign with one character does not work on IE (#2563)
- don't use dot notation for 'abstract' (#2569)
- GetFeature request sent twice by GetFeature Control (#2581)
Compatibility Notes
Make sure to also upgrade your theme directory (and most notably style.css).
