Commit Graph

3037 Commits

Author SHA1 Message Date
Chris Williams
0b9464f017 Fixes #5534 by adding a check for null. (#5535) 2017-06-01 17:20:08 +02:00
iZucken
da2c8ef2db Fix for issue #5116 (#5544)
* Fix for issue #5116

As this filters out custom inputs created from property names (supposedly using innerHTML), they still will become unusable whenever _update() is fired on control.
I believe that this is a different issue coming from design of a module.

* Followup fix for #5116
2017-06-01 16:26:19 +02:00
Matt Grande
1120c46ed9 Add precision parameter to all toGeoJSON functions (#5444)
* Add precision parameter to all toGeoJSON functions

* Replace usage of toPrecision with Utils.formatNum

* Always default to six decimal places

* Fix docs

* Allow precision of 0
2017-05-31 14:06:58 +02:00
Javier Jimenez Shaw
4f5fef2a56 docstrings: Typo in Projection.LonLat.js (#5532) 2017-05-26 09:44:14 +02:00
ghybs
f66d13976a Docs(Marker): modify icon option description (#5529)
* Docs(Marker): modify icon option description

To explain that a _common_ / generic instance of `L.Icon.Default` is used, instead of leaving room to think that a _new instance_ of `L.Icon.Default` is created for every Marker without specified `icon` option.

See https://github.com/Leaflet/Leaflet.markercluster/issues/786#issuecomment-302893446

* Docs(Marker): replace icon class by instance

it actually needs a proper _instance_ of `L.Icon`, not a "class".
2017-05-24 11:03:00 +02:00
MGMsystems
ba7bfb5011 Div icon accept node element as option (#5517)
* Added option to allow DOM elements inside a DIV icon

* Removed white line

* Adapted so that the dom element can be passed with the html option

* Update DivIcon.js

Changed documentation to state HTMLElement
2017-05-22 09:57:21 +02:00
Iván Sánchez Ortega
7a068122c7 Turn nonBubblingEvents into a documented boolean option (#4883)
* Turn nonBubblingEvents into a documented boolean option

* Update var names after rebase
2017-05-18 11:14:27 +02:00
Per Liedman
942e1df2b8 Always export window.L; fixes #5489 (#5504) 2017-05-18 10:28:14 +02:00
Iván Sánchez Ortega
873d4cab31 Handle edge case of empty bounds on _getBoundsCenterZoom (#5157)
* Handle edge case of empty bounds on _getBoundsCenterZoom

* Unit test for map._getBoundsCenterZoom
2017-05-11 22:33:46 +02:00
ghybs
f677f9c6d2 Feat(Bounds): add new methods for 2 missing corners (#5488)
* Feat(Bounds): add getTopLeft & getBottomRight methods

as suggested in #5475, for consistency with `LatLngBounds` methods which already provide methods for the 4 possible corners.
Also include the docstrings.

* Docs(Bounds): add comments to identify corners

in BoundsSpec.

* Test(Bounds): add tests for existing corner methods

namely getBottomLeft and getTopRight.
Checked that expecting different values make the tests fail.

* Test(Bounds): add spec for 2 new corner methods

namely getTopLeft and getBottomRight.
Closes #5475 together with previous PR #5487.

* Refactor(Bounds): return this.min(max) instead of new Point

as TopLeft corner is tha same as this.min (BottomRight same as this.max).

* Docs(Bounds): add links to this.min(max)

to make it clearer that these methods are just shorthands to already available properties.
Furthermore, it implies that they output those properties directly, making a clue for the app developer that if he/she wants to modify them, they should be cloned before doing so in order to prevent unintentional behaviour.
2017-05-11 22:24:15 +02:00
ghybs
2ff69debc6 Docs(Bounds): change topLeft/bottomRight to corner1/2 (#5487)
as suggested in issue #5475.
The actual relative position of the given corners do not matter for the factory / constructor current functionality: it just determines the min/max coordinate values.
2017-05-11 22:22:00 +02:00
Per Liedman
222bc47a0d Handle Polylines with empty array of LatLngs (#5498)
Fixes #5497
2017-05-04 10:05:15 +02:00
Iván Sánchez Ortega
66cf6a0ea1 Take devicePixelRatio into account for scrollwheel zoom in win10+chrome (#5480) 2017-04-27 16:47:11 +02:00
Iván Sánchez Ortega
b19893c9ba Add hook points to allow for a proper NoGap plugin (#5476) 2017-04-27 15:38:55 +02:00
Iván Sánchez Ortega
7e1740ecdf Better sanity checks for avoiding loading infinite tiles (#5479)
* Sanity check to prevent loading tiles when bounds are `Infinity`

* Make linter happy

* Better sanity checks for avoiding loading infinite tiles

* typo
2017-04-25 15:00:47 +02:00
Iván Sánchez Ortega
6d6b07612e Sanity check to prevent loading tiles when bounds are Infinity (#5478)
* Sanity check to prevent loading tiles when bounds are `Infinity`

* Make linter happy
2017-04-25 14:31:27 +02:00
Patrick Paskaris
8e96ac476d Fix box zoom race condition (#5452)
* Fix box zoom race condition

The deferred call to `_resetState` can interrupt the next box zoom if
the user initiates it before the timeout fires. This causes the mouse
move handler to create a second box zoom element, orphaning the first
one and leaving it in the DOM.

* Extract duplicate code into private method
2017-04-20 15:57:17 +02:00
Oliver Heilig
1318b999ef On update set current tiles active to avoid pruning (#5381) (#5431)
* On update set current tiles active to avoid pruning (#5381)

* fix for missing tiles - without flickering (#5381)
2017-04-20 14:19:26 +02:00
Luis Camacho
b9df865730 make L.Mixin.Events a simple object instead of a prototype so it doesn't have a 'constructor' property. fixes #5451 (#5453) 2017-04-20 12:45:33 +02:00
Guillaume P
ac05f68a39 Canvas: call ctx.setLineDash in _fillStroke (#5454)
* Canvas: call ctx.setLineDash in _fillStroke

This make dashArray working properly for cirles.

fix #5182

* Debug: add dashed circle example

* Debug: add simple example reproducing #5182
2017-04-20 12:41:26 +02:00
Luis Camacho
ff72181b52 Fix __super__ by not copying it from the parent when subclassing (#5456) 2017-04-20 12:39:49 +02:00
Mstislav Zhivodkov
cbaf02034c Remove global L usage (#5463) 2017-04-20 12:38:28 +02:00
Per Liedman
da4e6c1c5e Only rearrange DOM in toFront/toBack if needed (#5465)
Addresses problem where Internet Explorer re-fires mouseover if
the element is re-appended to the DOM.

Fixes #4050.
2017-04-18 16:09:19 +02:00
Mirodil
458b7177b2 Push back keyboard navigation order of L.Popup's close button (#5461)
* Web accessibility

so tabbing through the page make the link(in the popup) to the first entry focussed before the 'x' for close

* remove spaces
2017-04-18 15:12:00 +02:00
gatsbimantico
cc4dce13d0 Issue #5118 Fix documentation for method setZoom 2017-04-17 19:17:33 +01:00
qjas
3e000fbe9d Remove spurious check in DomUtil.preventOutline (#5435)
The codes first execute "element.tabIndex"(show that element is not
NULL), then execute "!element" in the condition of if stmt(check whether
the element is NULL or not). It is a contradiction.
I think since the element must not be NULL(otherwise the execution of
"element.tabIndex" would be wrong) when the while stmt finishes, the
next if stmt doesn't need to check the element like "!element" again.
Checking the element.style is already enough. So remove the "!element".
2017-04-05 12:12:56 +02:00
Iván Sánchez Ortega
61ff641951 Add new class L.VideoOverlay (#4988)
* Add VideoOverlay class based on ImageOverlay

* Make linter happy

* Move VideoOverlay include to layer/index

* Fix mapbox tokens
2017-04-04 22:45:09 +02:00
john gravois
48a76bc6fd jsdoc DomUtil.TRANSITION_END 2017-03-30 17:34:51 -07:00
Iván Sánchez Ortega
28a0adc132 Ensure renderer's container is init'ed when a path is added to map (#5404) 2017-03-29 09:52:43 +02:00
Dave Leaver
27263b7afa Control.Layers: Only add layer events to layers when we are on the map. Fixes #5421 (#5422) 2017-03-28 23:10:29 +02:00
Tom Salisbury
96cfdd3a3d Added z-index support to ImageOverlay (#5418) 2017-03-28 10:54:24 +02:00
Tom Salisbury
8278ed393d Added error event to ImageOverlay layer and added tests for the new (#5416)
event and existing error handling. Also added missing
documentation for the load event.
2017-03-28 08:54:26 +02:00
ghybs
06ed42ad2c Docstrings: LayerGroup.hasLayer add method call with id (#5411)
With the current `hasLayer` code, we can call this method by passing the `_leaflet_id` and get the same result as passing the corresponding layer object.
Added the alternative method call, as done for `removeLayer` method.
2017-03-27 09:35:05 +02:00
Per Liedman
d3c7ed13ad Stop map on drag start instead of pointer down (#5378)
* Stop map on drag start instead of pointer down; fix #5350

* Remove unused _onDown event handler
2017-03-08 15:41:02 +01:00
Per Liedman
c18ac11efb Include L.Mixin.Events again; add deprecation notice (#5365)
Close #5358
2017-03-07 09:53:24 +01:00
Anant Prakash
da1a89871d Error handler in ImageOverlay for 404 links (#5307)
* Added Error handler in L.ImageOverlay._initImage

* fixed syntax
2017-03-02 13:28:52 +01:00
Lewis Christie
0ed260c847 fix invalid geoJSON produced by nested LayerGroups (#5359) 2017-03-02 13:21:56 +01:00
Iván Sánchez Ortega
01e0640335 Docstrings: recover lost docstring for L.Util.lastId (#5352) 2017-02-21 14:52:17 +01:00
ghybs
9e4f79d1e5 Fix(#5328): Layers Control can now become scrollable even if collapsed: false (#5348)
* Fix(#5328): Layers Control scrollable even if collapsed: false

the `expand()` method was called only when expanding the Layers Control through user action.
In the case of option `collapsed: false`, no event listener is attached (no user action expected to expand), therefore the control height is no longer adjusted compared to map container's height, whereas the only time it is done is at initialization, when the control is not yet inserted into the DOM, hence it does not have an actual height to check against.
Therefore added a hook on `addTo()` in order to run `expand()` AFTER the control has been insterted into the DOM.
The same issue happens when later adding more base layers / overlays to the Layers Control: it not collapsed, we should run again the height check (e.g. through the `expand()` method) to make sure we make it scrollable if necessary.
Therefore called `expand()` after each `_addLayer()`.
Actually checking first if the control is on map and if option `collapsed: false` in order to prevent calling `expand()` for nothing.

* Test(ControlLayers): 2 tests for collapsed: false being scrollable

(for issue #5328).
CAUTION: unlike most other tests, had to actually insert the map container into the DOM (i.e. `document.body`) for these tests to be useful, otherwise the height remains at 0.
This may lead to memory leak and tests hanging if done on too many tests (see Leaflet.markercluster tests issue, e.g. https://github.com/Leaflet/Leaflet.markercluster/pull/577)
2017-02-21 14:33:01 +01:00
Denis
643ca522c1 Export lastId in Util (#5349)
Looking over at the documentation I noticed that `lastId` was an available property however it wasn't exported.

http://leafletjs.com/reference-1.0.3.html#util-lastid
2017-02-21 13:37:57 +01:00
Joachim Kuebart
29375b4b9c ES6ify: Provide missing SVG static methods. (#5330) 2017-02-14 19:39:57 +01:00
Iván Sánchez Ortega
c856c6090f Do not stop keypress on escape if no popup is open 2017-02-14 13:15:50 +01:00
Iván Sánchez Ortega
b997839fe7 Docstrings: map.panBy has options 2017-02-14 12:08:13 +01:00
Simon Legner
c5f7dc4ad3 ES2015 modules: Add index.js files to subdirectories/namespace (#5329)
* Add index.js files to subdirectories/namespace

This allows to streamline the import/export in the main file.

* Fix tests by switching to karma-rollup-plugin
2017-02-13 14:14:00 +01:00
Joachim Kuebart
1010451a66 Pull min/maxNativeZoom from TileLayer into GridLayer, as per #5316. (#5319)
* Pull min/maxNativeZoom from TileLayer into GridLayer, as per #5316.

* Add a couple unit tests for GridLayer's maxNativeZoom
2017-02-09 10:33:43 +01:00
Per Liedman
689b71e280 Disable click propagation on zoom control buttons (#5318)
Close #5308.
2017-02-08 13:02:10 +01:00
Madis Allikmaa
59298a72d0 Docstrings: Fix popup "autoClose" and "closeOnClick" options, fixes #5040 (#5304)
* Fix popup "autoClose" and "closeOnClick" options documentation, fixes #5040

* Docstring for Popup `closeOnClick` option

* Backticks on docstrings
2017-02-07 16:24:36 +01:00
Miguel Andrade
ad75456fa5 add margin to LatLngBounds.equals method (#5071)
* add margin to LatLngBounds equals method

* add tests
2017-02-02 16:55:30 +01:00
Iván Sánchez Ortega
53e90945aa add L.Draggable options and fix docstring (#5301) 2017-02-02 16:46:58 +01:00
Iván Sánchez Ortega
ddc3a9ca61 Fix max/min calculation for getBoundsZoom (fixes #5136) (#5137)
* Fix max/min calculation for getBoundsZoom (fixes #5136)

* Added test for inside param of L.Map.getBoundsZoom()
2017-02-02 16:21:10 +01:00
Iván Sánchez Ortega
14c5f1602c Scrubbing of detached DOM elements, prevents memory leaks (#5265)
* Scrubbing of detached DOM elements, prevents memory leaks and fixes #5263

* Make linter happy
2017-02-02 10:57:57 +01:00
Dave Leaver
5603a87c70 Remove marker.dragging when not on the map (#5295)
* Add some tests for #5293

* Fix enabling marker dragging while markers aren't on the map by removing the dragging object when not on the map.

This is a change of behavior (.dragging is only defined when a marker is on the map).

* Docs for dragging change
2017-02-02 10:14:39 +01:00
Iván Sánchez Ortega
f4456b7a9a Stop scroll propagation in L.Layers.Control in chrome>55 (#5280) 2017-02-01 11:08:24 +01:00
Dave Leaver
4921355195 Fix a few uses of children that should be child in comments (#5294) 2017-02-01 09:33:09 +01:00
Vladimir Agafonkin
703ae02aa8 ES6 modules & Rollup (#4989)
* WIP ES6 modules & rollup

* WIP ES6 modules & rollup 2

* WIP ES6 modules & rollup 3

* WIP ES6 modules Browser

* WIP ES6 module fixes

* WIP ES6 modules: simpler browser exports

* WIP ES6: refactor CRS/Projection modules, CRS obj -> CRS.Base

* get rid of unnecessary index.js

* WIP ES6 modules, dom events and stuff

* Make linter happy, rollup to dist/

* revert to CRS namespace/class for now

* WIP rollup: export more stuff

* export controls

* rollup: export Layer

* rollup: export DomEvent

* rollup: export more layer types

* rollup: export Popup/Tooltip

* WIP: ES6-ify marker, icon, domutil, draggable.

* ES6-ify gridlayer, tilelayer.

* ES6-ify: Tweak imports-exports, code is now runnable!!

* ES6-ify: Fix scope in some DomUtils

* ES6-ify: Path, fix Popup

* ES6-ify: Lint & cleanup

* ES6-ify map handlers, more linting

* ES6-ify: Icon.Default namespacing

* ES6-ify: Renderers, CircleMarker

* ES6-ify: Circle, Polyline, LineUtil

* ES6-ify: Polygon, Rectangle, LineUtil, PolyUtil, linting

* ES6-ify: SVG.VML

* ES6-ify: DomEvent.Pointer, DomEvent.DoubleTap

* ES6-ify: Linting, make Karma play nice with Rollup

* ES6-ify: More work on fixing bits breaking some unit tests.

* ES6-ify: rollup the version number, fiddled with build scripts

* ES6-ify: Fiddle with test scripts

* ES6-ify: cleanup (refs to global L, imports from (DOM)Util), prevent cyclic loop on Map imports

* ES6-ify: More cleanup of (DOM)Util/Browser/DomEvent imports

* ES6ify: Use rollup's "legacy" option for ES3 (IE8) builds

* ES6-ify: Clean up build scripts, fix CONTRIBUTING.md instructions

* Typo

* ES6-ify: minor fixes and lefovers after rebasing on top of 1.0.2

* ES6-ify: upgrade to rollup 0.38 for proper IE8 builds, fix L.SVG.VML

* Make linter happy.

* ES6: Fixing typos and sxrew-ups after big rebase

* Fix symlink for debugging scripts

* ES6: Cleanup old build scripts

* ES6-ify: Update build system to include git rev in L.version

* ES6-ify: re-enable unit tests replacing L.Path with L.Polyline

* Export Path

* ES6ify: cleanup old banner file

* ES6-ify: whitespace in var declarations

* ES6-ify: Export toTransformation as L.transformation

* ES6-ify: cleanup L.transform exports

* ES6-ify: "import Util" in Transformation and SVG.VML
2017-01-30 11:35:16 +01:00
Markus
3ac37c29a4 Add L.transformation factory, allow creation from array (#5282)
* added transformation getter

* fixed lint, added editorconfig

* added CRS.Simple transformation values again

* removed editorconfig
2017-01-30 09:43:50 +01:00
Iván Sánchez Ortega
1cc4660d98 Changelog for 1.0.3, version bump. (#5274)
* Changelog for 1.0.3, version bump.

* Fix 1.0.3 release date
2017-01-23 12:16:07 +01:00
Per Liedman
67f12ee6e9 Avoid multiple canvas updatePaths/redraws during viewreset (#5250)
* Avoid multiple canvas updatePaths/redraws during viewreset

Close #5170.

* Fix code style

* Add a code comment
2017-01-23 11:06:03 +01:00
Iván Sánchez Ortega
2b5d401976 Another blind attemp to work around dblclicks on Edge (#5268)
* Another blind attemp to work around dblclicks on Edge

* Make linter happy, do not forget about IE11 & IE11 pointer events
2017-01-23 10:56:08 +01:00
Reinier Battenberg
af72aa7647 IE8: Remove trailing comma in L.Layer options (#5270)
The trailing column in the Layer default Options Object definition crashes IE8.
2017-01-19 16:55:43 +01:00
Iván Sánchez Ortega
ad271063a4 Docstrings: clarify L.Browser.Touch (see #5266) 2017-01-19 09:33:57 +01:00
Mariano Carballal
7f11fdfbae Add alternative text to marker shadows (#5259) 2017-01-17 20:26:44 +02:00
Iván Sánchez Ortega
059a722b5b Implement wrapLatLngBounds (to fix #5149) (#5166)
* Implement wrapLatLngBounds (to fix #5149)

* Unit tests for wrapLatLngBounds
2017-01-13 16:39:01 +01:00
Iván Sánchez Ortega
694da33fc6 Blind attemp to fix Edge dblclicks (side effects of #5185) (#5248)
Blind attempt to fix Edge dblclicks (side effects of #5185)
2017-01-13 08:47:41 +01:00
Iván Sánchez Ortega
007a63ab65 Fix typo in docstrings 2017-01-11 10:29:57 +01:00
Iván Sánchez Ortega
2996298d59 Inclue changes from #5054 into VML code (fixes #5213) (#5215) 2016-12-23 16:32:14 +02:00
Aaron Petcoff
9e5903db40 adds graceful fallback to clientWidth & clinetHeight in getSize (#5209) 2016-12-22 01:36:58 +02:00
Hagai
4e58391235 Fix edge case of closing popups during their popupopen event (#5202)
Replacing `this._map` with `map`.
2016-12-21 14:46:34 +01:00
Marvin Bredal Lillehaug
884463bb09 Avoid getBoundsZoom return Infinity when using CRS with flipped axis (#5204)
* Create new bounds from projected coordinates rather than subtract in getBoundsZoom to avoid negative scale. Fixes #5195

* Fix unit test mocks

Apparently, mocking `project()` instead of `latLngToPoint()` magically works.

* Expected zoomlevel is 9, not 7
2016-12-19 12:40:22 +01:00
Iván Sánchez Ortega
ad6a33aed2 Prevent infinite loop on failing errorTileUrls (fixes #5176) (#5177) 2016-12-14 09:37:57 +01:00
Iván Sánchez Ortega
19d2bd027e Be more picky about pointer events (blind attempt to fix #5180) (#5185) 2016-12-14 09:33:21 +01:00
Pablo Alonso
b1fd47a5a4 Fixed method docs (#5184) 2016-12-12 15:45:33 +01:00
jasonoverland
b1c2e99c1f docstrings: Correct polygon & polyline examples (#5161) 2016-12-07 09:35:20 +01:00
Brandon Kerr
240918d742 Remove incrementation of uninitialized typeListeners attribute 'count' (#5160) 2016-12-06 16:18:31 +01:00
Dave Leaver
107859379e Add missing method documentation for ImageOverlay (#5158) 2016-12-02 13:42:54 +01:00
Iván Sánchez Ortega
1f4c1b9c0f Docstrings: second parameter for map.fitBounds is optional 2016-12-01 13:40:00 +01:00
ghybs
a359ac72eb docstring: grid layer use bounds with noWrap (#5156)
Following #5154, added mention about using `bounds` on Grid Layer when `noWrap` is used (i.e. set to `true`), in order to prevent requesting tiles outside the main world (CRS limits).
Looks like behaviour changed compared to Leaflet 0.7, where the CRS limits were still effective.
In order to restore that behaviour, application developer must now specify `bounds`.
Especially visible with CartoDB tiles which do serve tiles outside the main world.
2016-12-01 13:37:20 +01:00
Ernie23
3f8b6b3b28 Vertical lines while moving over canvas elements (#5148)
* Vertical lines while moving over canvas elements

* Vertical lines while moving over canvas elements

* bounds.min._floor(); bounds.max._ceil(); instead

* Rounding bounds in _redraw function instead of _clear function
2016-12-01 10:48:28 +01:00
Gert Van Gool
9d6e6fcdf4 Fixes Layer.isPopupOpen when no popup is bound (#5106)
* Adds initial tests for L.Layer#popup

* Fixes Layer.isPopupOpen when no popup is bound

This fixes uncaught exception when checking whether a popup isOpen(),
when the layer has no popup bound to it.
2016-11-29 10:33:54 +01:00
Iván Sánchez Ortega
633182a836 Sanity check in LatLngBounds.contains (fixes #5132) (#5135) 2016-11-24 09:36:33 +01:00
geoloep
4f52a36dc1 docstrings: Update bounds property in Projection.leafdoc (#5139)
* Update Projection.leafdoc

To me it appears that the property bounds expects 'Bounds' and not 'LatLngBounds'. All the included projections pass 'Bounds'. Giving the area where the projection is valid in latlng's did not work for me.

* Update Projection.leafdoc
2016-11-23 16:29:06 +01:00
Per Liedman
2253672051 Only collapse layer control if collapsed: true (#5131)
Close #5126
2016-11-23 10:49:59 +01:00
Yuzo Matsuzawa
308ba02d69 Update L.version to 1.0.2 (#5134) 2016-11-23 09:59:32 +01:00
Richard Fairhurst
b90e6685c2 Docs: Use openstreetmap.org, not osm.org (#5130)
* Use openstreetmap.org, not osm.org

osm.org is a convenience redirect for typing into your browser URL bar, and not an officially supported services endpoint (for example, it doesn't have the SSL certificates you might otherwise expect)

* Update reference-1.0.2.html

* Update TileLayer.js
2016-11-22 17:39:48 +01:00
Dave Leaver
941c6a2457 Merge branch 'master' into master 2016-11-22 08:49:45 +13:00
mvl22
9d6a1d3c82 Remove unnecessary gendered text in documentation 2016-11-21 19:28:28 +00:00
Faheel Ahmad
520587d745 Fixed L.LatLng.toBounds docstring (#5127) 2016-11-21 15:22:53 +01:00
Iván Sánchez Ortega
d89271b404 Docstrings: 'x' and 'y' properties for L.Point, closes #5117 2016-11-18 16:35:23 +01:00
Julio Garcia
3875722edf Removing unneeded comment 2016-11-18 15:45:23 +01:00
Julio Garcia
243daa90ef Fixing linting errors 2016-11-18 15:45:23 +01:00
Julio Garcia
4eba3a0973 Adding support for minNativeZoom in TileLayer.js 2016-11-18 15:45:23 +01:00
Per Liedman
4c484462dc Canvas improvements (#5115)
* WIP refactor canvas clear

* Fix clearing bounds, remov unnecessary code

* Refactor redraw logic

* Remove flicker on update

* Fix code style

* Add support for layer ordering with bringToFront/bringToBack

* Fix redraw when layer moves

* Add example for moving canvas layers

* Fix code style

* Use layer ordering for mouse events

* Fix removing first or last layer
2016-11-18 15:22:35 +01:00
Per Liedman
9cb7274001 Make click on canvas fire for only one layer (#5100)
Close #5091.
2016-11-17 16:51:59 +01:00
Iván Sánchez Ortega
4e979514c3 Add a 'sortLayers' option to L.Control.Layers (#4711)
* Add a 'sortLayers' option to L.Control.Layers

* Add a sortFunction option to L.Control.Layers

* Fix default sort function; modify test
2016-11-17 12:52:29 +01:00
Aleksey Shmigelski
feb716401a round tooltip position (#5089) 2016-11-13 18:33:17 +01:00
Patrick Arlt
ab31976c75 A11y fixes from #3210 (#5092) 2016-11-11 17:17:49 -08:00
Yohan Boniface
88d107ca96 Merge pull request #5087 from Leaflet/layers-collapse-alt
Always create L.Control.Layers as collapsed; expand if collapse option not set
2016-11-11 16:15:49 +01:00
Iván Sánchez Ortega
df0a81e365 Finish drags when a L.Draggable is removed, fix #5063. (#5065)
* Finish drags when a L.Draggable is removed, fix #5063.

* Use L.Draggable._dragging to check if we should stop the drag

* Add Draggable.finishDrag to allow finishing drag programmaticaly

Out of any event.
2016-11-11 15:34:03 +01:00
Per Liedman
a4bbec5924 Make sure mouseout for previous hovered layer before mouseover for new (#5090)
Close #5082
2016-11-11 12:04:03 +01:00
Iván Sánchez Ortega
8c22c4e385 Ensure zoom is within span when adding a layer with min/maxzoom, fixes #4915 (#4916)
* Ensure zoom is within span when adding a layer with min/maxzoom, fixes #4915.

* Add tests written by @theashyster

* Add tests to verify map's zoom is actually adjusted to layer's min/max
2016-11-11 10:46:31 +01:00
Per Liedman
d2f91e39bd Always create as collapsed; expand if collapse option not set
Close #5073.
2016-11-10 17:30:31 +01:00
Iván Sánchez Ortega
fd78560036 L.GeoJSON.asFeature should pass through FeatureCollections (#5049)
* L.GeoJSON.asFeature should pass through FeatureCollections

* Add unit test to verify FeatureCollection toGeoJSON
2016-11-10 13:53:38 +01:00
Iván Sánchez Ortega
26cce79170 Mention TMS tile scheme for EPSG:4326 proj, fixes #5072 2016-11-03 16:28:21 +01:00
Per Liedman
957659fcd0 Move attribution option and getAttribution to L.Layer (#5070)
Close #5051.
2016-11-03 09:32:56 +01:00
ghybs
9d91ab06ff docstrings: correct GeoJSON methods returns (#5064)
`addData`, `resetStyle` and `setStyle` methods of `L.GeoJSON` actually return `this` (the current GeoJSON Layer Group), not any Layer.
Can be especially confusing in the case of `resetStyle`, where we pass a layer as argument, and with `addData`, which can accept a single GeoJSON feature, hence we could (mistakenly) think that it returns the newly created layer.
2016-10-30 11:02:24 +01:00
ghybs
aa6aa49f56 docstring: improve default icon customization text (#5058)
detailed that modifying `L.Icon.Default.prototype.options` only customizes the icon, but it remains an image-based icon.

Added a paragraph about completely replacing the default icon, so that it can now be anything (including a divIcon).
2016-10-28 15:21:42 +03:00
Iván Sánchez Ortega
7b3c673a16 docstrings: L.Control inherits from L.Class 2016-10-28 12:38:43 +02:00
ghybs
edbcff4386 Changed of L.LatLngBounds arg names to corners (#5059)
as proposed in a recent issue.
This change should not affect the code, it is only for consistency with docstrings.
docstrings: replaced southWest and northEast argument names by corner1 and corner2, to try to prevent confusion that Leaflet will keep these corners at those places, whereas it actually "re-orders" them to keep lowest values West-most / South-most, as if they were just corners.
2016-10-28 09:38:09 +02:00
Iván Sánchez Ortega
4b8762edf9 Refactor L.Path _update and _project into L.Renderer so that no event handling is needed (#5054)
* Refactor L.Path _update and _project into L.Renderer so that no event handling is needed

* Refactor away L.Path's _update event logic
2016-10-27 09:38:28 +02:00
Per Liedman
670662e718 Fix canvas redraw when style updates fill and/or weight (#5034)
Close #5031.
2016-10-21 16:09:26 +02:00
Per Liedman
fa7accacef Prevent canvas from firing multiple mouseover for same layer. (#5033)
Also, fire mouseover for at most one layer for every mousemove,
preventing overlapping features from firing multiple
mouseover/mouseout (#4495).

Close #5028. Close #4495.
2016-10-21 16:57:59 +03:00
ghybs
34dca3cfd9 Fix #5011 (canvas remove+add) (#5024)
Bug when using map option `preferCanvas: true` (canvas renderer for paths) and removing then adding back a vector within the same animation frame (typically in the same sequence, as done by Leaflet.markercluster at `"zoomend"` event, to remove layers and clusters outside visible bounds).
This commit clears the `_removed` flag from paths when they are added to the canvas.
Also added corresponding test suites.
2016-10-20 15:50:15 +03:00
Per Liedman
a97b87d033 Remove extra word from doc string 2016-10-20 08:22:50 +02:00
Yohan Boniface
bc82976430 Remove duplicated test in Draggable (#5021)
We already are testing for this._enabled some lines before.
2016-10-18 08:00:44 +02:00
erick
d2add3dd5c docstrings: add clarification for projection; closes #4817 (#5010)
* Fix doc: add clarification for projection; closes #4817

Adds clarification in the documentation that specifies that the
`project` and `unproject` methods cannot take in arrays, but only
actual instances of `L.LatLng` and `L.Point`, respectively.

* Fix doc: add clarification for transform methods

Changes the word "real" for the word "actual" so that people don't
confuse actual instances of `L.Point` with coordinates using real
numbers.
2016-10-12 09:22:05 +02:00
Per Liedman
b144d2f13e Fix docs typo: extend MyClass, not L.Class; close #5009 2016-10-10 12:49:19 +02:00
Iván Sánchez Ortega
16e04741a2 Docstrings: Marker.toGeoJSON 2016-10-06 09:15:05 +02:00
Per Liedman
350919b2ff Use all four corners when projecting ImageOverlay during animation (#4993)
Close #4886.
2016-10-02 22:07:05 +03:00
John Muccigrosso
7f350e4442 docstrings: Better description for easelinearity (#4994) 2016-10-02 16:23:11 +02:00
Vladimir Agafonkin
863cf74461 move zoom animation code into Map.js 2016-09-30 19:51:01 +03:00
Vladimir Agafonkin
ff73971294 move pan animation code into Map.js 2016-09-30 19:51:01 +03:00
Vladimir Agafonkin
5110298c45 get rid of separate Layer.Popup.js and Layer.Tooltip.js 2016-09-30 19:51:01 +03:00
Vladimir Agafonkin
88b593b7ab move flyTo to Map.js 2016-09-30 19:51:01 +03:00
Vladimir Agafonkin
d0879e14af move geolocation methods to Map.js 2016-09-30 19:51:01 +03:00
Vladimir Agafonkin
e3545bc9b9 move marker extensions to Marker.js 2016-09-30 19:51:01 +03:00
Iván Sánchez Ortega
9a1d786075 Version bump to 1.0.1 2016-09-30 14:19:56 +02:00
ghybs
d0ffe8a1ab docstrings: L.GeoJSON functions to methods
Corrected docstrings of L.GeoJSON for methods (addData, resetStyle, setStyle) to be really counted as "methods" instead of static "functions" (geometryToLayer, coordsToLatLng, coordsToLatLngs, latLngToCoords, latLngsToCoords, asFeature)
2016-09-30 13:59:58 +03:00
ghybs
bc01b2b30b docstrings: explicit effect of L.GeoJSON filter
Following https://stackoverflow.com/questions/39776919/how-to-reference-the-data-of-an-existing-geojson-leaflet-object/39787583#39787583, sounds like the current definition "decide whether to show a feature or not" implies that the data is retained in memory, but just not shown.

Replaced "show" by "include" to try to make it clearer that the filtered out data is _lost_ (not retained at all within the group).

Also took the opportunity to add a note about changing the `filter` option dynamically (no re-evaluation of child layers, whether they meet the new filter conditions or not).
2016-09-30 13:59:58 +03:00
Jeff Barnes
837d190933 Fix webpack using valid image file for default icon path (#4849) (#4979) 2016-09-30 13:11:52 +03:00
Babajide Fowotade
6b0808d6f0 Don't load class leaflet-tile-loaded in case of error (#4980) 2016-09-30 09:28:42 +02:00
ghybs
628fc04333 docstrings: update L.circle example to match new syntax (#4974)
docstrings: update L.circle example to match new syntax
2016-09-29 13:21:11 +02:00
Matthew Brener
9bb516970e docstrings: its to it's where appropriate in GridLayer.js (#4963)
Very nitpicky I know.
2016-09-28 10:53:33 +02:00
Per Liedman
d10077e13e Fire update event from VML renderer (#4956)
Close #4950.
2016-09-27 19:59:40 +02:00
Vladimir Agafonkin
11533003c0 update version to 1.0.0 2016-09-27 13:32:00 +03:00
Edgard Lorraine Messias
6bb703ca7c docstrings: Removed incorrect semicolon (#4943) 2016-09-27 10:05:17 +02:00
Edgard Lorraine Messias
db7482a561 docstrings: Removed incorrect semicolon (#4942) 2016-09-26 19:06:54 +02:00
Yohan Boniface
e28f7ae984 Do not fail when closing an interactive tooltip not yet added to the map (#4937) 2016-09-26 16:40:51 +03:00
ghybs
695b81f2fa docstrings: L.geoJson → L.geoJSON (#4933)
Replaced factory example `L.geoJson` (from Leaflet 0.7) by `L.geoJSON` for consistency with the new factory signature rendered just below in the generated docs.
2016-09-23 10:14:56 +02:00
Iván Sánchez Ortega
c931d330fe Delay firing the 'update' event on renderers (should fix #4928) (#4929) 2016-09-21 19:20:59 +03:00
Iván Sánchez Ortega
6e08ae427d Improve docs for keypress events, local refs from leafdoc templates (#4907) 2016-09-21 17:38:23 +03:00
Alejandro Sánchez
cdbf4d5057 docstrings: return type of GridLayer.getContainer in (#4904) 2016-09-16 09:27:35 +02:00
Alejandro Sánchez
45775be981 docstrings: CRS.getProjectedBounds and CRS.distance (#4918) 2016-09-15 21:29:48 +02:00
Andris Nolendorfs
62fdf6f642 Fix handling of NaN in getScaleZoom (#4914)
* Fixed an issue when crs.zoom returns NaN in getScaleZoom

* Small documentation fixes
2016-09-15 09:46:53 +02:00
Iván Sánchez Ortega
63fd4edc76 wrap tileBounds if noWrap is false by @fyeah (#4908) 2016-09-12 16:59:21 +02:00
Alejandro Sánchez
55ef437723 Add opacity param to setOpacity jsdoc (#4903) 2016-09-10 23:05:08 +02:00
Per Liedman
ed1a612e6f Make paths insensitive to the order of its map's moveend handlers (#4855)
* Make Paths always update after renderer updates

Close #4851

* Add test

* Add docs for update event

* Remove listener when layer is removed
2016-08-31 17:58:46 +03:00
Iván Sánchez Ortega
2ced69db12 docstrings: Expanded FeatureGroup docs. (#4862) 2016-08-31 17:57:03 +03:00
Baku
61513c9209 Update year (#4850) 2016-08-26 12:37:04 +02:00
Per Liedman
017d29c4eb Just store array of listeners, count is no longer needed. (#4842)
* Just store array of listeners, count is no longer needed.

* Remove unused code
2016-08-25 17:23:58 +02:00
Yohan Boniface
7927708b40 Allow to create and open a tooltip without source (fix #4827) (#4836) 2016-08-25 15:29:20 +02:00