Commit Graph

433 Commits

Author SHA1 Message Date
Vladimir Agafonkin
94303a681b Merge pull request #3952 from Leaflet/label
Implement L.Label
2016-07-15 13:06:36 +03:00
Per Liedman
0bcfbdb537 Cleanup, tests and minor bug fixes for event system 2016-07-08 15:01:38 +02:00
Fabian Zeindl
0210071dad refactoring of events, it should be about 4 times faster now 2016-07-08 14:47:02 +02:00
Yohan Boniface
64ba1f7f95 Rename Label in Tooltip, PopupBase in DivOverlay 2016-07-08 13:51:18 +02:00
Yohan Boniface
fe3649f032 Default L.Label border and tip to white 2016-07-08 11:33:53 +02:00
Yohan Boniface
bd2616f901 Do not rely on options.draggable to compute draggableMoved (#4638)
One can enable dragging of a marker after it has been initialized
with draggable=false.
2016-07-08 11:22:54 +02:00
Yohan Boniface
f8221e09f7 We now load CSS in Phantom, so no need to skip those tests 2016-07-08 11:08:25 +02:00
Yohan Boniface
0dd58bd01f Merge branch 'master' into label 2016-07-08 11:07:22 +02:00
Yohan Boniface
5dfc3364d1 Allow to make screenshots in Phantomjs (#4705)
* Load CSS in PhantomJS

* Allow to take screenshot in PhantomJS while running tests

For that, one need to run this call:

    window.top.callPhantom({'render': 'screenshot.png'});

* Make PhantomJS serve images

* Bonus: those tests now passe in Phantom too

* Add helper to make screenshot in tests

	takeScreenshot();

or

	takeScreenshot('path/to/screenshot.png');
2016-07-08 11:05:12 +02:00
Yohan Boniface
d18d661837 More label tests
431579ce4a
needed to make them pass on Phantom
2016-07-02 23:02:48 +02:00
Yohan Boniface
2f4b97de19 Add support for "center" Label position 2016-07-02 10:52:04 +02:00
Yohan Boniface
14bfedf7ff Merge branch 'master' into label 2016-07-02 10:36:42 +02:00
Iván Sánchez Ortega
8cb745ce0a L.Evented.listens() returns false on removed event handlers, #4474 (#4476)
* Fix L.Evented.listens() on removed event handlers, #4474

* Fix bad unit tests for marker events

* Only check for listerners.length if listerners is actually defined
2016-07-01 11:14:22 +02:00
Per Liedman
01790eacda Ignore events if Draggable is disabled, fixing disabling drag on click in IE11 (#4479)
* Ingore events if Draggable is disabled
Close #3666.

* Add test for verifying fix to #3666
2016-06-27 16:16:03 -07:00
Iván Sánchez Ortega
b2d7cf110b Fix #4039: Use different L.Bounds for "marking as prunable" and loading tiles (#4650)
* Fix #4039: Use different L.Bounds for "marking as prunable" and loading tiles.

* configurable tile pruning tests

* using spy for testing load did not happen
2016-06-21 15:27:44 +02:00
Yohan Boniface
d8a6ad4010 Use proper Hand onStop callback instead of setTimeout in popup spec 2016-06-16 15:34:16 +02:00
Yohan Boniface
d1de37aa88 Fix broken sizeOption when L.point instance (#4636) 2016-06-10 15:36:07 +02:00
Yohan Boniface
95d5b59c5f Fix canvas not filtering click event after drag (#4493)
* Fix preclick not fired in canvas
* Do not add canvas layers to click event targets if just dragged (fix #4458)
2016-06-01 17:43:32 +03:00
Ray Hammond
72c4f986b1 Icon size x can now be initialised with a number (#4608)
Icon size x can now be initialised with a number. Fixes #3185
2016-06-01 17:24:24 +03:00
Jon Woyame
878a022897 Prevent map click when layer has popup (#4603)
* prevent map click when layer has popup

* add test cases for click events on Paths

* update test for Path popups to check popup is open
2016-05-29 22:01:16 +02:00
Per Liedman
fbc6265fb7 Fix when all listeners are removed during dispatch (#4555)
Close #4478.
2016-05-12 10:22:36 +02:00
Yohan Boniface
6e8ac31993 Fix setMaxBounds not resetting when passing null argument (#4494) 2016-05-09 15:12:51 +02:00
Iván Sánchez Ortega
cc3380f98e Tweaked values of getBoundsZoom unit tests (#4528) 2016-05-09 10:42:19 +02:00
Dian Jin
a6888ab13f getBoundsZoom fix for small size and padding and tests (#4532) 2016-05-09 10:39:14 +02:00
Yohan Boniface
4a9140e6b1 Add L.Label related documentation 2016-05-06 15:00:01 +02:00
Yohan Boniface
737137634e Rename Label clickable option to interactive 2016-05-06 13:39:09 +02:00
Yohan Boniface
8a2255afc3 Merge branch 'master' into label 2016-04-30 14:36:48 +02:00
Jan Pieter Waagmeester
02078c2b39 Make sure L.Control.removeLayer() doesn't raise an error if a layer not in the control is removed from it (#4487) 2016-04-22 16:11:22 +02:00
Nathan Cahill
1eafc015c1 create points from objects with x and y properties (#4465) 2016-04-20 17:05:31 +02:00
Iván Sánchez Ortega
23890c5fa4 Skip a touch unit test on non-touch browsers 2016-04-19 12:21:01 +02:00
Iván Sánchez Ortega
5389d23e79 Add unit test for drag handler enable/disable bug (#4387) 2016-04-15 15:30:39 +02:00
David Uvenman
864326610a Added click tolerance also for non-touch devices (#4396)
* Added option for click tolerance. This option is used as a threshold to determine if the user event should be considered a click or a drag.

* Updated docs for clickTolerance to state the correct default value.

* Added tests for click threshold
2016-04-15 10:18:50 +02:00
Iván Sánchez Ortega
b74cf171f8 Merge pull request #4404 from Leaflet/fix-4401
Fix regression when setting style of Path with canvas renderer
2016-04-08 17:50:13 +02:00
Per Liedman
593a553e64 Pass layer on when calling _updateDashArray
Add specs to verify intialization and setStyle with dashArray.
Close #4401.
2016-04-08 16:43:21 +02:00
Per Liedman
36b60b7c88 Round scale to avoid float rounding issues in fitBounds
Reverts _round() fix from b511c7bcc8.

Close #4395.
2016-04-06 22:58:00 +02:00
Zsolt Ero
928100f961 Workaround for flyTo bug
* test for flyTo start latlng == end latlng condition
* workaround for flyTo infinite loop
* expect for zoomend values

Close #4226
2016-04-02 21:12:40 +02:00
Jan Pieter Waagmeester
0bed05d537 Use array in L.Control.Layers to preserve layer order fixes #2086 2016-04-02 20:48:31 +02:00
Per Liedman
b511c7bcc8 Round bounds size.
Bounds size should be in pixels, so round it to avoid
any floating point inaccuracies from projection.

Closes #4255.
2016-04-02 19:55:02 +02:00
Yohan Boniface
4bcc89bc54 Make sure bounds are bounds before testing its validity in fitBounds
Fix #4374
2016-04-02 19:23:58 +02:00
Iván Sánchez Ortega
4b38a7165a rm spurious check, fixes #4068 2016-04-02 18:32:31 +02:00
Iván Sánchez Ortega
c6c0e4f484 Switch prosthetic-hand to 1.3.0 and use onStop callback 2016-04-02 17:55:22 +02:00
Yohan Boniface
b7b409bd07 Merge pull request #4369 from Leaflet/use-mean-earth-radius
Use mean earth radius for distance calculation in L.CRS.Earth.
2016-04-02 15:51:40 +02:00
Per Liedman
868c102a86 Use mean earth radius for distance calculation in L.CRS.Earth.
Close #4184.
2016-04-02 12:01:01 +02:00
Yohan Boniface
446c02f2e7 Make latLngBounds factory return an empty bounds with not argument
Just like the constructor.

Fix #3408
2016-04-02 11:27:56 +02:00
Yohan Boniface
5795f37fe4 Make sure a failing test will not leave the node in place 2016-03-29 10:39:05 +02:00
Yohan Boniface
6bc6e599a0 Increase timeout for "should not be closen when dragging map" test 2016-03-29 10:38:47 +02:00
Yohan Boniface
61da775379 Replace happen.drag by prosthetic-hand in specs 2016-03-28 21:51:27 +02:00
Jan Pieter Waagmeester
ccaf632268 Do not calculate inverted y coords for CRSes with infinite: true
Fixes #4338
2016-03-22 14:10:24 +01:00
Jan Pieter Waagmeester
34075a893a Unit tests for TileLayer getTileUrl replacements 2016-03-21 15:00:13 +01:00
Jan Pieter Waagmeester
37254587be Allow dashes in template placeholders + tests 2016-03-21 14:36:21 +01:00
Iván Sánchez Ortega
8da61993d2 Added four prosthetic-hand tests, checking mouse&touch drag events and touch-zoom 2016-03-18 15:24:42 +01:00
Daniel Ritz
0af11b064e Fix attribution text not removed when Layer is removed from map
Symptom: Switching between layers with different attributions does
not remove the attribution from the previously selected layer.

Control.Attribution keeps track of its attributions with a counter for
each text. The problem described in #4285 is that each time the layer
is added to the map, the counter is increased by two. It's because
Layer calls Control.Attribution.addAttribution() twice, once from
addLayer() and the second time via the whenReady() callback _layerAdd().
This was not caught by the tests since the callback was never fired
(missing map.setView() call).

Fixes #4285
2016-03-01 13:46:40 +01:00
Iván Sánchez Ortega
663978227d Unit tests for #4257, attributionControl layeradd/layerremove 2016-02-18 21:31:00 +01:00
Iván Sánchez Ortega
ccd95e38e6 L.Class.include & mergeOptions now return 'this' 2016-02-15 16:38:35 +01:00
Knut Hühne
df19ec7c30 Add test for throwing error if circle radius is NaN 2016-02-15 11:51:27 +01:00
Iván Sánchez Ortega
63970e9b6c Better cleanup of L.Control.Layers, fixes #4213 (plus unit tests) 2016-02-09 15:43:03 +01:00
Iván Sánchez Ortega
8dee2d3591 Fix for #4208 with extra unit tests 2016-02-09 10:07:36 +01:00
Vladimir Agafonkin
01455c0167 Merge pull request #4193 from Leaflet/grid-extra-loads
Fix extra tile usage
2016-02-08 16:53:50 +02:00
Iván Sánchez Ortega
c6e2a2021a Unit tests for flyTo and TileLayers. 2016-02-05 16:30:29 +01:00
Iván Sánchez Ortega
efdc626262 Fix tile pruning on fade-in, pass all unit tests now :-D 2016-02-04 15:19:35 +01:00
Iván Sánchez Ortega
f777f42c6b More GridLayer unit tests; Grid zoom calculation changed during zoom anims 2016-02-03 17:35:52 +01:00
Iván Sánchez Ortega
bf37a9106c Change the way GridLayer is reset on a map viewreset 2016-02-02 16:56:18 +01:00
Iván Sánchez Ortega
ed05d4ac1e Unit tests for GridLayer loading logic 2016-02-02 14:56:02 +01:00
Iván Sánchez Ortega
afd7959959 Make linter happy. 2016-01-18 10:10:32 +01:00
Iván Sánchez Ortega
65ccc2b36c Fractional zoom controls. 2016-01-18 10:10:32 +01:00
Yohan Boniface
5e6ef5ce12 Consistent GeoJSON casing
I've made the choice to:
- switch API and method to upper case version (GeoJSON, geoJSON, toGeoJSON)
- keep internal variable all lower case (geojson), because we usually do not
  uppercase variables

Fix #2444
2015-12-25 14:00:21 +01:00
Vladimir Agafonkin
f23074d790 Merge pull request #4040 from Leaflet/gridlayer-pixelbounds
Fix GridLayer pixelBounds computation
2015-11-23 23:48:31 +02:00
Yohan Boniface
e2fbe19683 Fix GridLayer pixelBounds computation
Map size does not change from one zoom to another, so we dont need
to scale it.

Without this change, we are creating more or less 4x tiles when
zooming in.
There are still cases where we are requesting a bit more tiles than
what I would expect, but I see it also happens on 0.7.3
2015-11-22 23:19:57 +01:00
Vladimir Agafonkin
63f239a20f Merge pull request #4028 from Leaflet/geojson-setstyle
Do not set layer.options a reference to layer.defaultOptions (fix #3990)
2015-11-18 17:02:46 +02:00
Yohan Boniface
7a1496ea4d Do not set layer.options a reference to layer.defaultOptions (fix #3990)
git bisect point at ad9d0f8c7f
2015-11-18 13:29:02 +01:00
Yohan Boniface
d8b7f6fcbe L.Label: honour opacity option 2015-11-15 19:15:14 +01:00
Yohan Boniface
9d0b13b991 Add some basic unittests for L.Label 2015-11-15 18:56:27 +01:00
Yohan Boniface
fd5411d74b Fix popup toggle on marker click (fix #3992)
Issue was:
- popup toggling is made on 'click' event
- map listen to 'preclick' to close any open popup
- at second user click, 'preclick' has been fired, then popup
  closed, so the popup toggling was reopening it
- this was not an issue before 0d3448d494
  because 'preclick' on the marker was not bubbled to the map
- also the unittest covering this use case was too much coupled with
  the use case with calling marker.fire instead of simulating user
  click on the marker icon
2015-11-14 20:41:53 +01:00
Yohan Boniface
d901a5fc07 Fix interactive=false not taken into account for canvas (fix #3946) 2015-10-19 21:39:04 +02:00
Yohan Boniface
d3198d8d39 Fix duration not passed through from setView to panBy (fix #3300) 2015-10-12 14:02:30 +02:00
Vladimir Agafonkin
8a5184193e Merge pull request #3917 from Leaflet/canvas-stop-event
Canvas events fixes (fix #3915)
2015-10-10 21:24:37 +03:00
Yohan Boniface
6c3b9e10b8 Fix L.Circle init without options.radius 2015-10-09 20:24:42 +02:00
Yohan Boniface
0b0989f9f1 Canvas events fixes (fix #3915)
- fix fireEvent called for each layer containing event point
- fix layer not removed from this._layer at remove
- fix L.DomEvent.stop(e) not honoured for canvas because events
  are both listenned on canvas container and map container
2015-10-09 18:28:35 +02:00
Yohan Boniface
7c2ac9f39d Make sure mouse has an external relatedTarget on mouseout/over (fix #3797 #3708) 2015-10-08 14:57:33 +03:00
Vladimir Agafonkin
8c8d0ac7ee fix whitespace in comments 2015-09-25 15:37:07 +03:00
Vladimir Agafonkin
cfdbd10431 enforce indentation in specs 2015-09-25 13:55:37 +03:00
Vladimir Agafonkin
301473ad4d more strict eslinting 2015-09-25 13:40:21 +03:00
Iván Sánchez Ortega
e0aa981818 Merge pull request #3841 from javimolla/fix2990
Extract logic from getScaleZoom to CRS
2015-09-19 11:03:00 +09:00
Iván Sánchez Ortega
3924d49bcd Consistency between L.circle and L.circleMarker (#3785) 2015-09-17 23:22:55 +09:00
javimolla
76868ad3f4 Extract logic from getScaleZoom to CRS
Added tests for custom crs with zooms not power of two related
2015-09-15 17:58:19 +02:00
Vladimir Agafonkin
08d655fe66 upgrade deps and stricter eslint 2015-09-04 17:46:55 +02:00
Per Liedman
fecd412209 Truncate high/low latitudes for Spherical Mercator like previous versions.
Close #3700.
2015-08-03 21:26:56 +02:00
Fabrizio Minuti
93c2b52604 fix imageoverlay setBound when not added to map
If imageoverlay#setBounds is called when the layer is not added to a
map, the _reset method gets errors on execution
2015-07-28 12:10:40 +02:00
Yohan Boniface
08674721bc Fix baselayerchange event argument (fix #3677) 2015-07-27 15:41:07 +02:00
Yohan Boniface
8d980ce49b Add a unittest to cover dragging map not closing open popup (cf #3632) 2015-07-16 17:01:44 +02:00
Yohan Boniface
07b7219bc9 Only consider a target if it listens for event type (fix #3607) 2015-07-09 23:00:52 +02:00
Yohan Boniface
74018f284e Add nonBubblingEvents option (fix #3604) 2015-07-09 14:12:12 +02:00
Yohan Boniface
50d7121f72 Make _fireDOMEvent accept optional targets
In the case of canvas path, we can't add the canvas element itself
as an interactiveTarget, given that it's big like the path bbox, and
thus would make all this bbox target of events (so also clicking
outside of the path itself, the layer would fire click event, for
example)
2015-07-06 13:55:59 +02:00
Yohan Boniface
f4cc307e70 Add preclick related unitest 2015-07-06 13:55:59 +02:00
Yohan Boniface
0d3448d494 Always fire DOM event on the map too 2015-07-06 13:55:59 +02:00
petr
18933e1764 accept geojson with null geometry 2015-07-01 13:28:10 -07:00
Iván Sánchez Ortega
ad08a5c874 Unit test for map zoom level limit and zoom-less setView 2015-06-05 20:51:20 +03:00
Vladimir Agafonkin
fdd60cc66b ditch viewreset event, reliable zoomend
removes viewreset use everywhere; also changes event order to have
zoomend before move and moveend to make zoomend a reliable viewreset
successor
2015-06-04 20:42:28 +03:00
Iván Sánchez Ortega
c0384bbe21 Implement 'overlaps' spatial operator on bounds and use it on gridlayers 2015-06-02 12:35:31 +02:00
Yohan Boniface
298a27fbe4 Add Polyline/Polygon.isEmpty method 2015-05-09 23:03:22 +02:00