Go to file
John Firebaugh 7b5168acec Ensure that added tiles are retained
Previously, quickly zooming out and then back in sometimes left
only overzoomed tiles for the lower zoom level visible. The
problem was a race condition with deferred pruning:

1. Start at z15. Zoom in. This triggers loading of z14 tiles. As each
tile loads, _pruneTiles (throttled) is called. This results in deferred
removal of z15 tiles (250ms setTimeout). The deferral is done to avoid
flicker while the z14 tiles are faded in.
2. During the 250ms, zoom in. This triggers `_addTiles`, but since the
deferred pruning of the z15 tiles hasn't happened yet, the tiles are
still present in `this._tiles`. Therefore no tiles are queued for
loading, triggering an early return in `_addTiles`, before `_pruneTiles`
is called.
3. Deferred pruning of the z15 tiles happens. Since `_pruneTiles` was
short-circuited at z15, these tiles were never retained, nor were the
z14 tiles scheduled for pruning. End result is that the z15 tiles are
removed from the DOM while the z14 tiles remain, scaled 2x.
2014-11-06 16:27:47 -08:00
build rename zoomPanTo to flyTo 2014-10-21 12:21:32 +03:00
debug extract bounds conversion from Map.Geolocation.Also fix geolocation test page. 2014-11-06 13:23:14 -06:00
dist Merged css declarations 2014-09-03 21:07:30 +02:00
spec Preserve marker draggability on setIcon (fixes #2578) 2014-11-05 18:12:21 -08:00
src Ensure that added tiles are retained 2014-11-06 16:27:47 -08:00
.gitignore add publish script for component and bower 2014-03-19 20:29:41 -04:00
.npmignore Add .npmignore 2013-04-14 13:22:58 -07:00
.travis.yml fix travis build uploads, ref travis-ci/travis-artifacts#23 2014-03-19 17:47:12 -07:00
CHANGELOG.md add 0.7.3 changelog 2014-05-23 12:23:46 +03:00
CONTRIBUTING.md Fix typos in CONTRIBUTING 2014-06-30 18:46:20 -05:00
FAQ.md Changed language referring to layers 2014-07-05 20:17:57 -07:00
Jakefile.js Fixed jake build if leaflet copy is not a git repository 2014-06-24 22:58:54 +02:00
LICENSE update year to 2014 2014-01-08 20:40:04 +02:00
package.json update package.json & deps 2014-10-29 17:20:55 +02:00
PLUGIN-GUIDE.md simplify AMD definition 2014-10-21 12:32:06 -05:00
README.md fix readme link 2013-11-08 01:49:41 +02:00

Leaflet

Leaflet is an open source JavaScript library for mobile-friendly interactive maps. It is developed by Vladimir Agafonkin of MapBox with a team of dedicated contributors. Weighing just about 30 KB of gzipped JS code, it has all the features most developers ever need for online maps.

Leaflet is designed with simplicity, performance and usability in mind. It works efficiently across all major desktop and mobile platforms out of the box, taking advantage of HTML5 and CSS3 on modern browsers while being accessible on older ones too. It can be extended with a huge amount of plugins, has a beautiful, easy to use and well-documented API and a simple, readable source code that is a joy to contribute to.

For more info, docs and tutorials, check out the official website.
For Leaflet downloads (including the built master version), check out the download page.

We're happy to meet new contributors. If you want to get involved with Leaflet development, check out the contribution guide. Let's make the best mapping library that will ever exist, and push the limits of what's possible with online maps!

Build Status