Commit Graph

1787 Commits

Author SHA1 Message Date
Hans Kristian Flaatten
46885de00d Adds support for altitude and 3D GeoJSON
This commit adds a third parameter to the L.LatLon class for specifying
altitude. This is in turn stored in the `.latitude` property for the LatLng
instance. Latitude property will only be set if the latitude parameter is not
undefined, this is done in order to ensure backwards compability.

```javascript
var latlng = new L.LatLng(10, 20, 30);
console.log(latlng.altitude); // prints '30' to the console
```

Similar functionality has been added to L.GeoJSON coordsToLatLng() and
latLngToCoords() methods in order to handle import and export of 3D GeoJSON.

```javascript
var geoJSON = {
  type: 'Feature'
  ,properties: {}
  ,geometry: {
    type: 'Point'
    ,coordinates: [20, 10, 30]
  }
}
var layer = new L.GeoJSON();
layer.addData(geoJSON);
console.log(layer.getLayers()[0].getLatLng().altitude);
```

`NB` It is important to notice that no logic has been added in order to prevent
latitude and longitude to change without appropirate change in altitude – this
must be handled by the application.
2013-07-03 10:13:00 +02:00
Vladimir Agafonkin
8f2dc24c88 Merge pull request #1802 from Leaflet/scaledtiles
TileLayer maxNativeZoom option for scaling tiles on unsupported zoom levels
2013-07-02 02:32:08 -07:00
Christoffer Rosen
724f9aa3d8 Issue where the tile layer is not reset and updated when redraw is called.
I was able to replicate this issue: https://github.com/Leaflet/Leaflet/issues/1797. The problem is that redraw does not call update and reset on the TileLayer, therefore causing the above issue. I am proposing simply doing it before calling drawTile. I built and tested it, and it does fix the issue.
2013-07-01 23:53:13 -05:00
danzel
71e851fa40 Remove trailing comma, fixes IE7. Refs #1755 2013-07-01 15:56:04 +12:00
John Firebaugh
475e736346 Revert "Consistent mouse event propagation in Marker and Path"
This reverts commit 4015f49615.
2013-06-28 16:22:20 -04:00
Vladimir Agafonkin
b3d5684826 update build, bump minor version 2013-06-28 15:42:49 -04:00
John Firebaugh
4015f49615 Consistent mouse event propagation in Marker and Path
Marker was missing mouseup and mousemove.
Path was missing mouseup.
2013-06-28 14:44:10 -04:00
John Firebaugh
1954d3d64e Replace explicit z-index with DOM reordering
Setting an explicit z-index interacts badly with tile
layers which have an opacity less than 1, and therefore
create a stacking context.

Fixes #1790.
2013-06-28 09:55:17 -04:00
Vladimir Agafonkin
9559f40829 minor cleanup 2013-06-27 19:47:34 -04:00
Vladimir Agafonkin
2521e121db fix global map leak 2013-06-27 19:45:00 -04:00
Vladimir Agafonkin
b03f322193 add TileLayer maxNativeZoom option for scaling tiles on unsupported zooms, close #1798 2013-06-27 19:40:27 -04:00
Vladimir Agafonkin
859c62f0e7 fix chrome zoom anim flickering near map borders 2013-06-27 19:36:20 -04:00
John Firebaugh
4a8b5486c9 Disable text selection on mousedown rather than move
This seems to fix #1800 and a related unfiled issue reported in
IRC regarding tiles becoming selected on double-click when a
vector layer is present.
2013-06-27 18:06:43 -04:00
Vladimir Agafonkin
ae5bc1cc82 bump version and build 2013-06-27 10:41:12 -04:00
John Firebaugh
725124931f preventDefault on MozMousePixelScroll
This prevents scrolling without changing the zoom delta
calculations.

Fixes #1794
2013-06-27 10:28:13 -04:00
John Firebaugh
bc40266bc9 Revert "Use "wheel" event where supported (#1788)"
This reverts commit a784c560e5.
2013-06-27 10:27:42 -04:00
Vladimir Agafonkin
e468704738 fix EPSG3395 zooming, close #1796 2013-06-27 09:27:25 -04:00
Vladimir Agafonkin
c56e3762ac bring back the horrible timeout hack for Android, close #1785 2013-06-25 19:42:03 -04:00
Vladimir Agafonkin
d2f99f9b35 bump version, update changelog and build 2013-06-25 13:46:14 -04:00
John Firebaugh
7355070958 Merge pull request #1789 from Leaflet/wheel
Use "wheel" event where supported (#1788)
2013-06-25 10:40:14 -07:00
John Firebaugh
a784c560e5 Use "wheel" event where supported (#1788) 2013-06-25 13:31:51 -04:00
Vladimir Agafonkin
cdc65c6c6b add Circle & CircleMarker toGeoJSON 2013-06-25 12:43:22 -04:00
Vladimir Agafonkin
55a36e2fe8 fix regression of not being able to addLayer in initHooks 2013-06-25 11:25:10 -04:00
Vladimir Agafonkin
e74fc2594e minor formatting stuff 2013-06-25 10:25:16 -04:00
John Firebaugh
cb4b4ff343 Remove preventDefault from BoxZoom too 2013-06-25 10:12:02 -04:00
John Firebaugh
1b5a77f77d Also disable user-drag/prevent dragstart events
Unlike preventTextSelection, it appears important that
this happens on mousedown rather than the first mousemove
event. Otherwise, tile images are still sometimes draggable
on Firefox.
2013-06-25 10:12:02 -04:00
Vladimir Agafonkin
89d0730254 fix Android firing click twice on buttons, close #1785, related #1694 2013-06-25 09:45:35 -04:00
Vladimir Agafonkin
3076210fd1 revert remove preventDefault #1782, breaks FF 2013-06-24 23:55:11 -04:00
danzel
8b742a024e Don't add mouseover/out listeners to the layers control on android, otherwise your first touch will do mouseover, showing the list and click, clicking an item. Fixes #1694 2013-06-25 15:44:33 +12:00
Vladimir Agafonkin
f1e87ef665 remove unnecessary preventDefault 2013-06-24 23:24:52 -04:00
Vladimir Agafonkin
95d6d27cb0 Merge branch 'iframe-drag'
* iframe-drag:
  fix jshint errors
  Refine existing methods for disabling text selection
  Add iframe debug html
  Suppress text selection behavior during drag
  Continue to preventDefault on touch
  Remove preventDefault and mousedown workaround
2013-06-24 23:23:54 -04:00
Vladimir Agafonkin
9fb565aa93 fix jshint errors 2013-06-24 23:23:43 -04:00
Vladimir Agafonkin
28ba41eced disable tap hacks on IE, ref #1694 2013-06-24 23:11:51 -04:00
Vladimir Agafonkin
e72e2476f8 remove leftover code 2013-06-24 22:38:38 -04:00
Vladimir Agafonkin
8df10e8d94 collapse layers control on click instead of movestart 2013-06-24 20:12:14 -04:00
Vladimir Agafonkin
f9ea4758f8 move all tap hacks code into a separate handler, close #1781 2013-06-24 18:17:25 -04:00
Vladimir Agafonkin
a12bd9474f call init hooks before adding layers (fixes zoom anim regression) 2013-06-24 17:37:31 -04:00
John Firebaugh
60476da33c Refine existing methods for disabling text selection 2013-06-24 17:37:19 -04:00
John Firebaugh
ea8af5c2a1 Suppress text selection behavior during drag
Reference: https://github.com/mbostock/d3/pull/1289
2013-06-24 16:34:59 -04:00
John Firebaugh
05461bdd11 Continue to preventDefault on touch 2013-06-24 16:34:59 -04:00
John Firebaugh
37c4842a73 Remove preventDefault and mousedown workaround
As long as the mousedown event does not have preventDefault,
dragging out of an iframe works as expected.
2013-06-24 16:34:59 -04:00
Vladimir Agafonkin
7223a7e49b prevent default on marker mousedown so it doesn't get outline on click 2013-06-24 16:07:18 -04:00
Vladimir Agafonkin
34ce6e6eba Merge pull request #1780 from Leaflet/iframe-mouseout
Iframe mouseout
2013-06-24 12:25:26 -07:00
Vladimir Agafonkin
5a7420dd1a Propagate popup clicks outside of map container, close #301 2013-06-24 15:19:17 -04:00
John Firebaugh
18e3277f8b Avoid error if transform happens to be 'none'
Fixes #1707
2013-06-24 14:56:22 -04:00
Tom MacWright
95abf5a385 Remove mouseout binding on up 2013-06-24 14:45:29 -04:00
Tom MacWright
e614b60d2b Remove debugging 2013-06-24 14:33:41 -04:00
Tom MacWright
baef8e1ffe End drag events on mouseout of document, fixes #1277 2013-06-24 14:33:01 -04:00
John Firebaugh
e7d0fb1b37 Normalize all toGeoJSON output to Features 2013-06-24 14:30:24 -04:00
John Firebaugh
d57525ec52 Don't overwrite layer.feature.geometry 2013-06-24 14:14:36 -04:00
Vladimir Agafonkin
5841fd87a4 convert geojson-converted layers back to features 2013-06-24 14:14:35 -04:00
Tom MacWright
130d6d0fac Ignore pan keyboard event if the map is animating. Fixes #1710 2013-06-24 13:50:24 -04:00
S. Andrew Sheppard
239faad5d7 make AMD declaration anonymous 2013-06-24 12:35:25 -05:00
Vladimir Agafonkin
a03d62cfda add TileLayer.WMS crs option for reprojecting, close #945 2013-06-24 13:26:19 -04:00
Vladimir Agafonkin
40179ed11f add keyboard accessibility to markers, close #1355 2013-06-24 13:14:30 -04:00
Tom MacWright
9f50ab8dbb Propagate popupopen as well, refs #1681 2013-06-24 12:00:08 -04:00
Tom MacWright
ed4b626550 Propagate popupclose event. Fixes #1681 2013-06-24 11:49:10 -04:00
Vladimir Agafonkin
6c061b2995 fix zoom not working with L_DISABLE_3D regression, close #1756 2013-06-24 11:32:51 -04:00
John Firebaugh
33d3c015c3 Remove webkit workaround that is no longer necessary
This was causing a bug where multiple `translate(0,0)` were
appended to the style when the opacity was changed multiple
times.
2013-06-24 10:47:24 -04:00
Vladimir Agafonkin
54befc9203 fix True Mercator projection calculations, close #1578 2013-06-24 10:42:15 -04:00
Vladimir Agafonkin
35a5fdb0e5 simplify control layers events code #1634 2013-06-24 10:18:01 -04:00
Vladimir Agafonkin
4b0ef3917e Merge branch 'overlay-event' of https://github.com/Xelio/Leaflet into Xelio-overlay-event
* 'overlay-event' of https://github.com/Xelio/Leaflet:
  External baselayer changes should fire 'baselayerchange' instead of 'overlayadd' 'baselayerchange' event should fire with layer name(use object in _layers of L.Control.Layers) instead of only layer.
  L.Control.Layers: 'overlayadd' and 'overlayremove' event should also fire on external overlay changes.
2013-06-24 10:08:11 -04:00
Vladimir Agafonkin
57a3112b85 fix geolocation data regression in FF/IE, close #1755 2013-06-24 09:50:47 -04:00
Vladimir Agafonkin
9bd725d669 fix zoom anim regression with a hack for now, close #1705 2013-06-24 09:39:49 -04:00
Vladimir Agafonkin
ca4918977b change map.invalidateSize signature to accept options, close #1767, #1766 2013-06-24 09:26:23 -04:00
Vladimir Agafonkin
1ab1bda0be more explicit copyright in the top comment 2013-06-24 09:11:57 -04:00
Vladimir Agafonkin
43c2c6a4a0 fix regression in marker setIcon #1768 2013-06-23 19:44:05 -04:00
Vladimir Agafonkin
19637c08a6 fix icon reuse code to properly handle shadow, close #1768 2013-06-23 09:49:34 -04:00
Steve
0ec7e03521 Fix icon.js documentation
ShadowUrl was being referred to as a point.
2013-06-21 13:04:18 -03:00
jacobtoye
f9920c87f0 Moving brace to correct position. 2013-06-21 09:38:44 +12:00
jacobtoye
b262fdd26b Add parameter to invalidateSize for changing the center. 2013-06-20 16:59:14 +12:00
Vladimir Agafonkin
287f08565b Merge pull request #1761 from popox/marker-togglePopup
Nice to have feature - Toggle the display of a marker's popup on click
2013-06-19 07:40:10 -07:00
S. Andrew Sheppard
bea3e4c13e pass through coordsToLatLng when processing GeometryCollection 2013-06-17 20:31:24 -05:00
Paul Bonaud
1af9769ed0 Toggle the display of a marker s popup on click 2013-06-16 22:13:31 +02:00
Yohan Boniface
fef0606372 removeEventListener with same context used for adding it 2013-06-14 23:21:33 +02:00
Vladimir Agafonkin
b32a91584b fix 1px popup anchor shift 2013-06-12 14:18:29 +03:00
Vladimir Agafonkin
495d2dc3b3 add layers icon svg source 2013-06-12 14:18:29 +03:00
Vladimir Agafonkin
bcb9a4db68 prettify marker svg source 2013-06-12 14:18:29 +03:00
danzel
e36181dd66 jshint fixes. 2013-06-12 16:21:28 +12:00
danzel
b5f3b2a44f Tidy up ugly icon-swap code. 2013-06-12 16:18:42 +12:00
danzel
11e227bf6f Don't say this so much, options is in local scope. 2013-06-12 16:06:27 +12:00
danzel
fa45913505 Make Icon/DivIcon reuse not try reuse the wrong dom element type. 2013-06-12 16:05:42 +12:00
danzel
7f2eff363b Add support to DivIcon for reusing a div. Fixes #1753. Still issues remain (Can't change a marker with a DivIcon to have an image Icon or vice versa) 2013-06-12 15:55:03 +12:00
Vladimir Agafonkin
043fa18f1a Merge pull request #1745 from jec006/calculate-y-mouse
Properly calculate the y position of the element when parent is positioned relatively
2013-06-11 07:10:16 -07:00
Vladimir Agafonkin
e5965aaa22 make all WMS request keys uppercase, close #1751 2013-06-11 16:42:35 +03:00
Vladimir Agafonkin
c807d10a02 better regexp for image folder detection, close #1657 2013-06-11 16:05:33 +03:00
Vladimir Agafonkin
66d6403ddd update layers icon, add retina version, cleaner popup styles, close #1739 2013-06-11 15:44:21 +03:00
Josh Caldwell
df5e43a062 Unbind moveend event when maxBounds removed 2013-06-10 18:32:20 -04:00
Josh Caldwell
84c5114345 Properly calculate the y position of the element when positioned relative 2013-06-07 12:21:15 -04:00
Steve Kashishian
62f708a4dc Prevent contextmenu events on popups from falling thru to map 2013-06-04 11:27:42 -04:00
Vladimir Agafonkin
aaad3cbe2f fix hinting error, update build 2013-06-03 12:39:28 +03:00
Vladimir Agafonkin
c54b6c13b3 Merge pull request #1726 from Norkart/reuseIconDOM
Reuse icon DOM
2013-06-03 02:14:06 -07:00
Vladimir Agafonkin
9295fde52f Merge pull request #1729 from jfirebaugh/add-remove
Don't call Layer#onRemove if Layer#onAdd was never called
2013-06-03 02:12:23 -07:00
Robert Nordan
e58e1ec4e7 Ensure styles are set even when reusing DOM.
This fixes the error found in review.
2013-06-03 07:23:13 +02:00
John Firebaugh
2ddcc3d4d4 Fix trailing whitespace 2013-06-01 22:21:07 -07:00
John Firebaugh
4802561e0e Don't fire layerremove if layeradd was never fired 2013-06-01 22:16:53 -07:00
John Firebaugh
51fccc80fe Don't call Layer#onAdd on a layer that has been removed 2013-06-01 22:11:42 -07:00
John Firebaugh
055b3393da Don't call Layer#onRemove if Layer#onAdd was never called 2013-06-01 21:50:18 -07:00
John Firebaugh
01bede20d1 Fix indentation 2013-06-01 21:49:45 -07:00
Robert Nordan
d737c2e94a Reuse DOM object in Marker.SetIcon, fixes #561
If there already exists a DOM object for this marker, reuse it by setting
a new src and style rather than creating a new one.
2013-05-31 12:53:02 +02:00
Steve Kashishian
4c5b700e60 Prevent memory leak in removal of canvas layers 2013-05-30 14:39:03 -04:00
Vladimir Agafonkin
34dbfea015 Merge pull request #1713 from snkashis/circlemarker_loop
Prevent infinite loop in adding of canvas CircleMarkers
2013-05-29 05:47:43 -07:00
Vladimir Agafonkin
6387f20206 update packages versions, minor jshinting 2013-05-29 12:10:19 +03:00
Steve Kashishian
c684fb4652 Prevent infinite loop in adding of canvas CircleMarkers 2013-05-28 19:39:14 -04:00
Andrii Korzh
ef17f99708 Check object when LatLngBounds extend
When LatLngBounds extend, must check the extending object, because empty marker `L.marker().getLatLng()` got `undefined` and `obj[0]` got `TypeError`
2013-05-18 13:20:37 +03:00
Scooter Wadsworth
76e317d80c smart tabs per contribution guidelines 2013-05-16 11:00:51 -06:00
Scooter Wadsworth
e0a44add0e calculate x position with postion:relative and width/maxWidth 2013-05-16 01:14:04 -06:00
John Firebaugh
61745f4a30 Set correct initial zIndex on tile layer divs
Fixes #1683.
2013-05-15 13:50:42 -07:00
mourner
d62ee9e5b3 make latest jshint happy, update deps 2013-05-13 22:57:01 +03:00
John Firebaugh
ade9c943ff Popup-specific closeOnClick option 2013-05-10 15:22:03 -07:00
Vladimir Agafonkin
6f752d171b simplify zoom anim a bit 2013-05-10 17:28:27 +03:00
Vladimir Agafonkin
47b299346f fix TileLayer 404 errors off-world 2013-05-10 17:15:17 +03:00
Vladimir Agafonkin
c33a60485b context-based off/fire fix 2013-05-10 17:12:46 +03:00
Vladimir Agafonkin
d58a237668 Merge pull request #1661 from spamdaemon/FIX_1654
Make sure events don't fire after listener is removed.
2013-05-08 02:54:38 -07:00
R. Merkert
bbb7acb3f4 Make sure events don't fire after listener is removed.
This patch fixes a problem with a dangling  event listener, which is
called even after it has been removed. This situation can occur when a
listener is removed during an even dispatch.

To fix this problem, the old action is replaced with a NOOP, so that
when the listener is being fired, it is not the old listener but the
NOOP.
2013-05-07 20:16:25 -04:00
Karl Nack
06842ef659 Fix transformRe (fixes #1658)
Allow optional units in the transformation matrix, the presence of which
causes maxBounds settings not to work in (at least) older versions of Firefox.

Also update the regex to match on numbers per W3 spec: "A number is either an
<integer> or zero or more decimal digits followed by a dot (.) followed by one
or more decimal digits." (from CSS Values and Units Module Level 3)
2013-05-07 11:57:38 -05:00
Vladimir Agafonkin
38c1164152 fix pan animation regression, close #1629 2013-05-07 11:44:28 +03:00
Vladimir Agafonkin
f9cd3b532d Merge pull request #1650 from gumballhead/layers-by-id
Extend #1642 to include FeatureGroups and lookup by id.
2013-05-04 14:40:43 -07:00
Andrew Kirkegaard
44c1a594e1 removeLayer by id for FeatureGroups. 2013-05-04 16:24:02 -05:00
Andrew Kirkegaard
df2ef42fe4 getLayer by id. 2013-05-04 16:16:36 -05:00
Vladimir Agafonkin
f3584ff527 add optional popup argument to Map closePopup 2013-05-03 16:16:25 +03:00
Vladimir Agafonkin
f2d237b01c Merge pull request #1617 from Leaflet/setview-anim
Control animation in setView/panTo/setZoom/fitBounds/etc.
2013-05-03 02:12:21 -07:00
Andrew Kirkegaard
6ea5984dc6 hasLayer and removeLayer by id. 2013-05-02 22:26:54 -05:00
John Firebaugh
c9e2453eed Bounds-check array access in Polygon#initialize 2013-05-02 16:17:04 -07:00
Xelio
02b93b44e4 External baselayer changes should fire 'baselayerchange' instead of 'overlayadd'
'baselayerchange' event should fire with layer name(use object in _layers of L.Control.Layers) instead of only layer.
2013-05-01 14:30:57 +08:00
Dave Leaver
e032046119 Mention why aria-haspopup is required in the layers control 2013-05-01 08:24:19 +12:00
Vladimir Agafonkin
df72027401 accept true as a third setView argument for compatibility 2013-04-30 17:09:55 +03:00
Vladimir Agafonkin
5ab4d4a4be minor cleanup 2013-04-30 17:08:10 +03:00
Vladimir Agafonkin
260a869da6 accept global animate option in setView 2013-04-30 17:06:16 +03:00
Vladimir Agafonkin
8d759e6c5e clean up handlers and panes on map remove, close #1621 2013-04-30 16:51:51 +03:00
danzel
87db54b65c Make jshint happy 2013-04-30 15:32:36 +12:00
danzel
d18f6249b2 Add aria-haspopup to layers dialog, fixes it not working on WinPhone8/IE10 Touch devices. Fixes #1539 2013-04-30 15:31:08 +12:00
Xelio
f7e18a109c L.Control.Layers: 'overlayadd' and 'overlayremove' event should also fire on external overlay changes. 2013-04-30 01:14:17 +08:00
Vladimir Agafonkin
4224b9a5ce Merge pull request #1633 from stuporglue/divicon_0
Allow value of 0 in L.DivIcon's html parameter
2013-04-29 05:25:33 -07:00
Michael Moore
c1919087fa Allow value of 0 in L.DivIcon's html parameter 2013-04-29 07:19:10 -05:00
Daan Mortier
c6620859e4 Updated patch for issue #1631 based on feedback 2013-04-29 13:03:05 +02:00
Daan Mortier
52498f1ef9 Issue #1631: Fixed a bug on removeEventListener
Bugfix for issue #1631 where removeEventListener would throw when no event listeners are registered on the object.
2013-04-29 11:53:16 +02:00
Vladimir Agafonkin
b31c9d50b8 add latlng to marker mouse events data, close #1613 2013-04-24 22:34:22 +03:00
Vladimir Agafonkin
f139eea41a fix path canvas race condition, close #1615 2013-04-24 22:29:25 +03:00
Vladimir Agafonkin
ddabd1b445 wrap tile bounds when checking against layer bounds, close #1618 2013-04-24 22:26:52 +03:00
Vladimir Agafonkin
05bbb68cd8 rename zoom/panOptions to zoom/pan in setView options 2013-04-24 18:13:36 +03:00
Vladimir Agafonkin
55d95d1362 options in view change methods, ability to turn on/off animation, closes #1616 2013-04-24 16:24:56 +03:00
Vladimir Agafonkin
c6e9702a08 fix bug that prevented tile loading during pan animation 2013-04-24 13:00:42 +03:00
Vladimir Agafonkin
323245ffc3 define Leaflet as an AMD module as well, close #1364 2013-04-23 13:20:19 +03:00
Vladimir Agafonkin
b61b7b4757 don't scroll to top of the map on focus, close #1228, close #1540 2013-04-23 11:57:42 +03:00
Vladimir Agafonkin
4f15e19d17 fix Popup autoPan regression 2013-04-22 19:23:14 +03:00
Vladimir Agafonkin
94098134a6 fix regression in Map hasLayer 2013-04-22 19:20:19 +03:00
Vladimir Agafonkin
113e55c62a better property name 2013-04-22 18:24:55 +03:00
Vladimir Agafonkin
6fa08d31c6 prevent setView after geolocation if called stopLocate, close #747 2013-04-22 18:24:11 +03:00
Vladimir Agafonkin
557ebaad3c cleanup, utilize factories more 2013-04-22 17:49:03 +03:00
Vladimir Agafonkin
29239891d8 minor cleanup 2013-04-22 17:20:34 +03:00
Vladimir Agafonkin
83539136a7 normalize point in Point equals and contains methods 2013-04-22 17:16:14 +03:00
Vladimir Agafonkin
eafa54635b simplify fitBounds-related code, fix typo 2013-04-22 17:06:42 +03:00
Vladimir Agafonkin
de0cd66f88 Add padding options for map.fitBounds/getBoundsZoom, close #859
Also make fitBounds accept ILayer, and fix bounds for fitWorld, close
#960
2013-04-22 15:21:30 +03:00
Vladimir Agafonkin
d91f56009b add popup open and close events, close #612 2013-04-20 17:18:17 +03:00
Vladimir Agafonkin
3caa19d613 add map.openPopup(content, latlng) convenience 2013-04-20 17:08:52 +03:00
Vladimir Agafonkin
9ac57e04f4 move Map control methods to Control.js 2013-04-20 17:04:17 +03:00
Vladimir Agafonkin
7cb7993571 simplify popup methods, merge #738 2013-04-20 16:58:42 +03:00
Vladimir Agafonkin
5c539bdebb fixed typo in GeoJSON coordsToLatLngs 2013-04-20 15:49:04 +03:00
Vladimir Agafonkin
96748cd5b0 add GeoJSON coordsToLatLng option, close #888, close #866 2013-04-20 15:45:04 +03:00
Vladimir Agafonkin
77efbb8765 add Popup keepInView option, close #1308 2013-04-20 14:50:33 +03:00
Vladimir Agafonkin
bd0bc4f2e5 fire load before viewreset/moveend 2013-04-20 12:07:00 +03:00
Vladimir Agafonkin
340dacde81 remove hasOwnProperty checks, close #1606 2013-04-20 11:32:23 +03:00
Krister Kari
dc07a68ed0 Modify or replace regexes that break javascript lazy evaluation with multi line comments 2013-04-20 02:01:56 +03:00
Krister Kari
904bf581dd Add L.Util.trim 2013-04-20 01:57:57 +03:00
Vladimir Agafonkin
412f047533 Merge pull request #1462 from jfirebaugh/toGeoJSON
Add #toGeoJSON to various layer types (#712)
2013-04-19 09:55:40 -07:00
Vladimir Agafonkin
cb0d15bd7e optimize marker icon source with svgo 2013-04-19 19:47:28 +03:00
Vladimir Agafonkin
ad4f0e6184 rename retina marker image, close #1552, close #1553 2013-04-19 19:44:18 +03:00
Vladimir Agafonkin
ba4d356266 fix tilelayer load event #1565 2013-04-19 19:38:51 +03:00
Vladimir Agafonkin
b0d3e8bc25 fix typo 2013-04-19 18:13:37 +03:00
Vladimir Agafonkin
5647f37ae6 cleanup and merge #1596, adds Events#once 2013-04-19 17:23:45 +03:00
Vladimir Agafonkin
a5e8bc0f49 add Util.invokeEach for hash arguments in event methods 2013-04-19 17:23:14 +03:00
Vladimir Agafonkin
e01fe91a33 fix fitBounds for large bounds, close #1069, thanks to @MaZderMind 2013-04-19 15:43:39 +03:00
Vladimir Agafonkin
5ded0ba150 more draggable cleanup 2013-04-19 15:36:18 +03:00
Vladimir Agafonkin
81e2a33f7d cleanup draggable 2013-04-19 14:45:01 +03:00
Vladimir Agafonkin
d856e8814e don't animate if zoom difference is too large, close #1377
also adds zoomAnimationThreshold map option (defaults to 4)
2013-04-19 12:47:55 +03:00
Vladimir Agafonkin
2a0e284e72 bring autopanstart event back, close #1375 2013-04-19 11:51:59 +03:00
Vladimir Agafonkin
30fe673ca2 don't remove layer grom a group if it doesn't belong to it, close #1383 2013-04-19 11:44:33 +03:00
Vladimir Agafonkin
db6d689ad8 fix lots of maxBounds issues, close #1491, close #1475, close #1194, close #900, #1333 2013-04-18 17:05:47 +03:00
Vladimir Agafonkin
0b1bc7a94c add resize event, close #1564 2013-04-18 15:26:45 +03:00
Vladimir Agafonkin
b1a31fa5e4 fix tilelayer anim glitch, close #1548 2013-04-18 15:19:38 +03:00
Vladimir Agafonkin
9b761b0ca1 more events code cleanup 2013-04-18 11:15:33 +03:00
Vladimir Agafonkin
4401e63b87 refactor and simplify events code 2013-04-17 20:12:26 +03:00
iirvine
f342e7efa4 simplify 2013-04-17 08:27:30 -07:00
iirvine
59b5e0c003 fix jshint 2013-04-15 14:09:32 -07:00
iirvine
84ad7db070 clearEventListeners -> clearAllListeners 2013-04-15 14:09:32 -07:00
iirvine
2d5bf783fe initial commit of #clearEventListeners 2013-04-15 14:09:32 -07:00
Vladimir Agafonkin
f25c983cbb Merge pull request #1594 from danzel/zoom-fixes
Fix touch zooming while zoom animation is playing. Fixes #1591 #1571
2013-04-15 13:27:01 -07:00
danzel
989d9b9763 Fix up brace position 2013-04-16 08:25:22 +12:00
bpavot
fd080abffc Android webview fix : Use originalEvent when needed to find timestamp 2013-04-15 11:53:29 +02:00
iirvine
031086681f fix our context to the object that's registering this listener 2013-04-14 20:49:57 -07:00
iirvine
76140994e4 fixing jshint errors 2013-04-14 20:48:48 -07:00
danzel
b36d973d14 Better fixes for touchzoom while zooming. If we got a touchmove and touchend in series before the animation frame for the touchmove fired then we'd get into a broken state. 2013-04-15 11:53:31 +12:00
iirvine
ffe1d79671 damn my coffeescript brainfarts 2013-04-14 16:30:03 -07:00
danzel
633ae89b8e Fix touch zooming while zoom animation is playing. Fixes #1591 #1571 2013-04-15 09:57:47 +12:00
iirvine
a469a387a1 back to first implementation to fix event leak 2013-04-13 22:11:01 -07:00
iirvine
e25f730b04 better implementation, more tests 2013-04-12 17:03:14 -07:00
iirvine
e41e8a886a initial implementation of events#once 2013-04-12 15:21:48 -07:00
Vladimir Agafonkin
c4dc595490 more strict jshinting, enforce single quotes and camelCase for consistency 2013-04-11 12:45:52 +03:00
Vladimir Agafonkin
c6cdd66e2d add map setZoomAround, merge #1582, close #1157 2013-04-11 12:07:07 +03:00
Ansis Brammanis
6c53aa6867 dblclicking now zooms around mouse, not centre 2013-04-10 17:09:31 -04:00
John Firebaugh
786faddc84 Permit layer stamping to be overridden 2013-04-10 12:28:27 -04:00
Vladimir Agafonkin
386bf68386 Merge pull request #1574 from tmcw/map-initialization-exception
Throw an exception if a map div is not found and test for initialization exceptions
2013-04-08 13:46:53 -07:00
Christian Schwarz
48bec16f49 Fixed zoom out on Windows 8 with Firefox
Firefox receives wheel delta of 0.33 on zoom in and -0.33 on zoom out, which turns into Math.ceil(0.33) == 1 and Math.round(-0.33) == 0. After this fix it returns correctly -1 for zooming out.
Worked fine before and after this fix in Chrome and Internet Explorer.
2013-04-08 23:33:53 +03:00
Tom MacWright
22810aacf7 Throw an exception if a map div is not found
and test for initialization exceptions
2013-04-08 12:28:27 -04:00
Vladimir Agafonkin
6009d4ae87 move phantomjs check for touch into Leaflet
to allow standalone mocha-phantomjs usage on the browser reporter
2013-04-05 12:32:19 +03:00
John Firebaugh
55edd44678 Add #toGeoJSON to various layer types (#712) 2013-04-04 09:46:18 -07:00
Vladimir Agafonkin
c247dfdb2c Merge pull request #1537 from dotCypress/master
Popup close button fix
2013-03-28 13:35:11 -07:00
Vladimir Agafonkin
0aed98f7d2 Merge pull request #1554 from olegsmith/master
Support functions in L.Util.template
2013-03-28 04:24:40 -07:00
Oleg Smith
ea926000f8 Strage behavior of inplace github editor 2013-03-28 15:23:03 +04:00
olegsmith
683642d7e4 Remove trailing whitespace in fix 2013-03-28 15:01:15 +04:00
Vladimir Agafonkin
547e9936f2 Merge branch 'master' of https://github.com/Leaflet/Leaflet
* 'master' of https://github.com/Leaflet/Leaflet:
  fix enable/disable of marker dragging
2013-03-28 11:11:18 +02:00
Vladimir Agafonkin
08a8c39088 fix moveend not always firing on drag 2013-03-28 11:10:44 +02:00
olegsmith
d125152c4b Extend L.Util.template
Look at hash function in Wikimapia      
     L.tileLayer('http://{s}{hash}.wikimapia.org/?x={x}&y={y}&zoom={z}&r=7071412&type=hybrid&lng=1', {
        hash: function (data) {
          return data.x % 4 + (data.y % 4) *4;
        }
        , subdomains : 'i'
        , maxZoom: 18
        , attribution: '<a href="http://wikimapia.org" target="_blank">Wikimapia.org</a>'
      }).addTo(map);

http://olegsmith.github.com/leaflet.wikimapia/
2013-03-28 11:03:57 +04:00
Alexander frenzel
d904859ba3 fix enable/disable of marker dragging 2013-03-27 21:03:05 +01:00
Vitaly Domnikov
b1742194f4 Popup close button bugfix 2013-03-20 16:24:47 +02:00
malexeev
e110c7bbfe safer _getSubdomain
Note that (tilePoint.x + tilePoint.y) might be negative in some cases (custom CRS with tiled WMS).
2013-03-18 22:54:52 +02:00
danzel
a6a4fe5219 Use L.stamp to always have a stamped context on removal too. 2013-03-19 08:33:26 +13:00
danzel
9d4d894450 Add another events test and fix from @iirvine 2013-03-15 13:53:03 +13:00
danzel
5bbfbd9573 Fix whitespace for jshint 2013-03-13 13:08:59 +13:00
danzel
8e65fe7a89 Always stamp the context in addEventListener, makes the optimisation always apply if there is a context. 2013-03-13 10:09:09 +13:00
danzel
5269f10885 Fix for #1495 2013-03-12 17:36:17 +13:00
Vladimir Agafonkin
81221ae4cd fix jshint 1.1.0 errors, update deps and build 2013-03-07 17:39:55 +02:00
Nikolai Prokoschenko
1c8e0c6901 Disable 3D CSS transforms on PhantomJS
PhantomJS does not support 3D CSS transform even though it's a Webkit product. This patch detects PhantomJS in the user agent and disables 3D transforms.

Details on PhantomJS support are here: https://groups.google.com/forum/#!msg/phantomjs/h7-4-CWsy1g/KX1tlf5gT5IJ
2013-03-06 13:09:35 +01:00
Vladimir Agafonkin
bf54caa1e9 Merge pull request #1490 from danzel/oldie-fixes
Fix opacity in oldie for the millionth time. Refs #1486
2013-03-05 01:36:27 -08:00
danzel
0b0cce929e Fix opacity in oldie for the millionth time. Refs #1486 2013-03-05 09:47:46 +13:00
danzel
9ae07469c5 Fix zooming on browsers without zoom animation support. Refs #1486 2013-03-05 09:29:41 +13:00
Vladimir Agafonkin
b993f1fc4b Merge pull request #1471 from snkashis/drag_handling
handle drag listeners properly to avoid errors on marker removal
2013-02-28 03:25:04 -08:00
snkashis
1df4c4a98f work with handlers in right place 2013-02-28 11:01:26 +00:00
snkashis
ed08a5b1dc call disable, not removeHooks 2013-02-28 10:46:54 +00:00
snkashis
95c73a3d77 handle drag handlers properly to avoid errors if moving while removed. 2013-02-28 10:38:27 +00:00
Tom MacWright
71d17180c8 Add layerGroup#getLayers and tests. Fixes #1460 2013-02-27 17:10:19 -05:00
Paul Spencer
2ba0422e9d Update src/dom/DomEvent.js
return this from removeListener when there is no handler so that chained calls still work in other places in the code such as removeHooks() inside the keyboard handler. If you call removeHooks() twice on the keyboard handler, you will get a javascript error in the second chained .off() call.
2013-02-27 13:55:04 -05:00
John Firebaugh
5e7857cdff Normalize polygon holes (fixes #1459) 2013-02-27 08:12:18 -08:00
Vladimir Agafonkin
42973e7e4c Merge branch 'master' of https://github.com/Leaflet/Leaflet
# By John Firebaugh
# Via Vladimir Agafonkin (2) and John Firebaugh (1)
* 'master' of https://github.com/Leaflet/Leaflet:
  Add Map#eachLayer (fixes #1457)
  Fix whitespace
  Use devDependencies
2013-02-27 17:18:48 +02:00
Vladimir Agafonkin
f4e8735547 clean up the canvas hovering code 2013-02-27 17:17:37 +02:00
Vladimir Agafonkin
1d4e91f9fa fix events not overwriting target/type 2013-02-27 16:34:40 +02:00
Vladimir Agafonkin
6fff98435c Merge branch 'canvas_path_cursor' of github.com:snkashis/Leaflet into canvas-hover
* 'canvas_path_cursor' of github.com:snkashis/Leaflet:
  mouseout firing
  mistaken, unneeded test file.
  don't perform if animatingZoom
  dupe of 50K vector test, for canvas.
  Hand cursor for canvas paths
2013-02-27 16:13:50 +02:00
John Firebaugh
511fbb9f44 Add Map#eachLayer (fixes #1457) 2013-02-26 11:39:00 -08:00
Vladimir Agafonkin
bba4f2ae1b return this in LayerGroup eachLayer, close #1452 2013-02-25 19:26:35 +02:00
Vladimir Agafonkin
0a83b83237 fix whitespace 2013-02-25 12:45:33 +02:00
Vladimir Agafonkin
a169b6cb86 Merge pull request #991 from adimitrov/overlay_bounds
Add tileBounds option to limit tile loading to a given region
2013-02-25 02:23:11 -08:00
Vladimir Agafonkin
a2890d6c4b cleanup and prettify animation code, more comments 2013-02-22 17:29:52 +02:00
Vladimir Agafonkin
9c2e7cfbd4 add Point contains method 2013-02-22 17:28:55 +02:00
John Firebaugh
46dddc895c Fire an unload event on removal
Plugins that need to bind events to `window` or `document`
can attach a listener for this event and unbind their event
handlers.

However, for symmetry, unload is fired only if load has been
fired.
2013-02-21 17:31:09 -08:00
Vladimir Agafonkin
5558987272 fix geolocation accuracy bounds, add more event data, close #984, related #584, #987, #1028 2013-02-21 14:41:26 +02:00
Vladimir Agafonkin
3cc75db221 Merge pull request #1440 from danzel/zoom
Fix building without zoom animations enabled
2013-02-21 00:10:13 -08:00
Vladimir Agafonkin
9c9d4286a1 Merge pull request #1439 from danzel/convert_option
Make Polyline/Polygon not overwrite the source array
2013-02-21 00:08:48 -08:00
danzel
1681365040 Fix building without zoom animations enabled 2013-02-21 15:15:24 +13:00
Yohan Boniface
7fd4ca20fe Allow for canceling a boxzoom being drawn pressing Escape key 2013-02-20 20:47:23 +01:00
Vladimir Agafonkin
5c18361aa2 fix typo, fix animated setView not converting latlng input 2013-02-20 20:54:12 +02:00
Vladimir Agafonkin
cf00a0113d fix rounding error when changing zoom, close #426 2013-02-20 20:11:47 +02:00
Vladimir Agafonkin
97454596c6 fix whitespace, update build 2013-02-20 19:49:40 +02:00
Vladimir Agafonkin
36e59c2afb minor WMS cleanup after merge 2013-02-20 19:48:33 +02:00
Vladimir Agafonkin
3063fd9192 Merge pull request #1433 from tmcw/layer-container
Add a public API for getContainer for TileLayer
2013-02-20 09:48:19 -08:00
Vladimir Agafonkin
874ec60aae Merge pull request #1080 from brianhatchl/wms-tilesize-option-bug
fixed bug where wms tilesize option was ignored
2013-02-20 09:44:54 -08:00
Vladimir Agafonkin
06190b1ec8 Merge pull request #1434 from jfirebaugh/remove
Add Map#remove
2013-02-20 09:41:44 -08:00
Vladimir Agafonkin
40a824fc97 refactor TileLayer animation, fix #1140, #1437, #52, #1442
Refactored TileLayer animation so that it happens for each tile layer
independently instead of animating the parent of all tile layers. Moved
TileLayer animation code into a separate file (TileLayer.Anim.js).
Fixes loads of bugs and makes the code easier to understand.
2013-02-20 18:40:00 +02:00
John Firebaugh
6ef25866eb Add Map#remove
This is a minimal implementation; it only unbinds events
and deletes the _leaflet flag from the container.

Refs #1101.
2013-02-19 17:36:03 -08:00
Tom MacWright
8735b87980 Add public getContainer API to TileLayer, and test for it. 2013-02-19 20:05:44 -05:00
danzel
3afee7eb49 Allow overwriting the given array, for usage by spliceLatLngs. 2013-02-20 11:03:13 +13:00
snkashis
0fb7a13277 force new array 2013-02-20 10:38:44 +13:00
snkashis
57d42d1636 allow for no overwrite option in covertLatLngs 2013-02-20 10:38:43 +13:00
Vladimir Agafonkin
a0dd4a60e9 accept coordinates in form of simple objects, close #1412 2013-02-19 18:01:53 +02:00
Vladimir Agafonkin
5d41efe616 fix removeAttrubution, cover the control with tests, close #1410 2013-02-19 17:47:38 +02:00
Vladimir Agafonkin
c50410eadc add Control getContainer, close #1409 2013-02-19 17:45:50 +02:00
Vladimir Agafonkin
d98b4ea035 throw meaningful exception on getCenter before setView, close #1395 2013-02-19 16:54:29 +02:00
Vladimir Agafonkin
879b9f987b make Leaflet mention in attribution much less obtrusive 2013-02-18 16:11:59 +02:00
Vladimir Agafonkin
684fd7c12f Merge pull request #1405 from gismartware/master
Fix for issue #1404
2013-02-18 05:50:02 -08:00
fabriceds
2591f53a28 Fixes box-zooming in Firefox 18+ 2013-02-18 14:38:11 +01:00
snkashis
382a9965ef mouseout firing 2013-02-17 21:25:11 -05:00
snkashis
d010d586d0 don't perform if animatingZoom 2013-02-17 14:57:32 -05:00
Vladimir Agafonkin
0b671a9b08 make zoom buttons listen to zoomlevelschange 2013-02-17 21:38:15 +02:00
snkashis
baeeddb078 Hand cursor for canvas paths 2013-02-17 14:21:27 -05:00
snkashis
11195f4849 allow Path.bindPopup to take existing popups as well. 2013-02-17 13:31:27 -05:00
Vladimir Agafonkin
f12e7e65f3 Merge pull request #1400 from jfirebaugh/getTileUrl
Enable cleaner overriding of TileLayer#getTileUrl
2013-02-15 16:39:22 -08:00
Vladimir Agafonkin
26b026b1c3 Merge pull request #1399 from jfirebaugh/tabs_vs_spaces
2 space indents -> tabs
2013-02-15 16:31:22 -08:00
John Firebaugh
4f906246bf Enable cleaner overriding of TileLayer#getTileUrl
Moved the called to _adjustTilePoint outside of getTileUrl,
and moved the call to _getZoomForUrl into _adjustTilePoint.
This allows getTileUrl to use x, y, z directly without any
calls to private methods.
2013-02-15 16:29:20 -08:00
John Firebaugh
e52bbd0b3a 2 space indents -> tabs 2013-02-15 16:22:45 -08:00
Dave Leaver
acf3413d7c Merge pull request #1396 from danzel/oldie-fixes
Fix TileLayer opacity in IE7/8
2013-02-15 14:00:16 -08:00
danzel
aed9506ab0 TileLayer opacity fixes as per @javisantana in #1371. Fixes #1084 2013-02-16 10:57:25 +13:00
Vladimir Agafonkin
703f8a3a43 Merge pull request #1384 from snkashis/svg_clicks
Allow clicks to pass thru non clickable paths
2013-02-15 07:38:27 -08:00
Vladimir Agafonkin
3cef077128 Merge pull request #1385 from snkashis/bind_popup_option
Allow previously created popups to be used with bindPopup
2013-02-15 07:35:03 -08:00
Vladimir Agafonkin
b42559d816 Merge pull request #1386 from snkashis/click_while_open
Don't fade in a currently shown popup when clicking marker again
2013-02-15 07:31:35 -08:00
snkashis
1c38b896ba Don't fade in a currently shown marker popup 2013-02-14 23:27:21 -05:00
snkashis
ae07e792af Allow previously created popups to be used with bindPopup 2013-02-14 23:04:53 -05:00
snkashis
7472550087 Allow clicks to pass thru non clickable paths 2013-02-14 22:17:34 -05:00
Vladimir Agafonkin
a948379db8 Merge pull request #1376 from moonlite/zoomlevelschange-event
Zoomlevelschange event
2013-02-14 03:35:57 -08:00
Mattias Bengtsson
cbee6851c8 Don't expose getZoomLevels. 2013-02-14 12:00:08 +01:00
Vladimir Agafonkin
d8ef52b1b1 Merge pull request #1374 from oslek/move-events
Move events
2013-02-14 02:31:25 -08:00
Mattias Bengtsson
efe0c6f6ea Fire zoomlevelschange event when zoomlevels are updated.
This is triggered when you remove a layer from a map with greater
zoom level coverage than the remainding layers or when you add a tilelayer
with greater zoomlevel coverage than the previous set of layers had.
2013-02-14 03:04:10 +01:00
oslek
c3ccf01a29 prevent extra movestart on inertia drag 2013-02-13 13:35:40 -08:00
oslek
f7301fa267 fire dragend before moveend for consistency 2013-02-13 13:25:02 -08:00
oslek
2c11fdfa6d prevent false move events in invalidateSize 2013-02-13 12:38:33 -08:00
snkashis
633e21d043 include conditional before trying to set content of popup 2013-02-13 14:08:45 -05:00
snkashis
dbd57c0b7b Allow popups that are bound to markers to have new content set 2013-02-13 14:06:48 -05:00
snkashis
a25cc9fb37 remove handler too 2013-02-13 10:21:29 -05:00
snkashis
3c5161feba determine button disabled state on baselayer change 2013-02-13 10:19:37 -05:00
jacobtoye
e13d5faa80 Remove Polyline.Edit file. 2013-02-11 13:17:11 +13:00
Joschka
06bb571095 Fix viewport offset calculation in Firefox (issue #1322) 2013-02-09 18:51:00 +01:00