Leaflet v1.8.0-beta.0 Release Notes
-
โ ๏ธ Breaking Changes
- ๐ Improve reliability of
contextmenu
event simulation on mobile Safari by introducing a newTapHold
handler, replacing legacyTap
(#7026 by @johnd0e) - Reorganize
DivOverlay
/Popup
/Tooltip
APIs (#7540 by @johnd0e)- Move
Popup
related options fromDivOverlay
toPopup
(#7778 by @Falke-Design) - Change
Tooltip
class fromleaflet-clickable
toleaflet-interactive
(#7719 by @Falke-Design) Map.closeTooltip
now requires a layer as argument (#7533 by @johnd0e)
- Move
- ๐ Improve error / argument handling for event listeners (#7518 by @johnd0e)
- ๐ Improve reliability of touch events simulation on non-touch devices (
DomEvent.Pointer
) (#7059, #7084, #7415 by @johnd0e) - ๐ Improve reliability of
dblclick
event simulation on touch devices (DomEvent.DoubleTap
) (#7027 by @johnd0e) - ๐ Improve reliability of
disableClickPropagation
(#7439 by @johnd0e) - ๐ Improve
Map
hasLayer()
andLayerGroup
hasLayer()
to require a layer as argument (#6999 by @johnd0e) - ๐ Fix
Class.include
to not overwriteoptions
(#7756 by @johnd0e) - ๐ Fix
Class.extend
to not modify source props object (#6766 by @johnd0e) - ๐ Improve
Browser.touch
touch devices detection (#7029 by @johnd0e) - Get rid of legacy Android hacks (#7022 by @johnd0e)
โ๏ธ API changes
- ๐ Make
DivOverlay
/Tooltip
interactive
(#7531, #7532 by @johnd0e) - โ Add
openOn
,close
,toggle
functions toDivOverlay
(#6639 by @johnd0e) - ๐ Introduce
DomEvent.off(el)
to remove all listeners (#7125 by @johnd0e) - ๐ Allow preventing round-off errors by passing
false
toUtil.formatNum
/toGeoJSON
(#7100 by @johnd0e) - โ Add
autoPanOnFocus
toMarker
(#8042 by @IvanSanchez) - โ Add
referrerPolicy
toTileLayer
(#7945 by @natevw) - โ Add
playsInline
toVideoOverlay
(#7928 by @Falke-Design) - โ Add
getCenter
toImageOverlay
(#7848 by @Falke-Design) - Fire a
tileabort
event when aTileLayer
load is cancelled (#6786 by @dstndstn) - โ Add
crossOrigin
toIcon
(#7298 by @syedmuhammadabid)
โจ Improvements
- ๐ Improve memory footprint by removing
will-change
CSS property on tile images (#7872 by @janjaap) - ๐ Improve reliability of icons path detection heuristics (#7092 by @johnd0e)
- ๐ Improve performance of adding tiled sources by avoiding excessive updates in
GridLayer.onAdd
(#7570 by @johnd0e) - ๐ Improve handling of edge cases in
panInside
(#7469 by @daverayment) - Minify marker icon SVG (#7600 by @rala72)
- ๐ Allow template keys with spaces in
TileLayer
URL (#7216 by @lubojr) - ๐ Improve behavior of
Tooltip
bound toImageOverlay
(#7306 by @IvanSanchez) - โ Remove the gap between Popup tip and content dialog (#7920 by @Malvoz)
- ๐ Fire
mousemove
through Canvas to map if it has no layers (#7809 by @johnd0e) - โ Add print styles to prevent printers from removing background-images in controls (#7851 by @Malvoz)
- ๐ Move attribution code from
Layer
toControl.Attribution
(#7764 by @johnd0e) - ๐จ Refactor
vmlCreate()
so that it does not expose closure toTypeError
(#7279 by @darcyparker) - ๐ Improve reliability of
Control.Layers
by not relying on Browserandroid
andtouch
properties (#7057 by @johnd0e) - ๐ Improve reliability of
Tooltip
by not relying on Browsertouch
checks (#7535 by @johnd0e) - โ
Make
Browser
mutable for easier automated testing (#7335 by @bozdoz) - Replace
div
withspan
inControl.Layers
container to fix an HTML validation error (#7914 by @tmiaa)
๐ Accessibility
- 0๏ธโฃ Auto pan to markers on focus by default for improved keyboard operability (#8042 by @IvanSanchez)
- โ Add accessibility section to plugins guide (#7277 by @Malvoz)
- โก๏ธ Update
Marker
to default torole="button"
&alt="marker"
for an improved screen reader experience (#7895 by @tmiaa) - Set
role="button"
for appropriate semantics on the<a>
layers control (#7850 by @Malvoz) - Generally enable outlines for keyboard users by not stripping
outline
on focus for keyboard events (#7259 by @jafin) - Enable outlines on
leaflet-container
for keyboard users (#7996 by @Malvoz) - Multiple enhancements to popup's close button (#7794 by @Falke-Design)
- ๐ Use relative
font-size
units for resizable text (#7800 by @Chandu-4444) - ๐
Apply
:hover
styles to:focus
as well (#7274 by @Malvoz) - Hide the decorative attribution separator from screen readers (#7969 by @Malvoz)
- ๐ Make the disabled state of zoom controls available to screen readers (#7280 by @akshataj96)
- Hide the +/- characters in zoom controls from screen readers to prevent erroneous announcements (#7795 by @Falke-Design)
๐ ๐ Bug fixes
- ๐ Fix
Marker
jumping position while zooming in certain cases (#7967 by @Falke-Design) - ๐ Fix opening / closing
Tooltip
while dragging the map (#7862 by @Falke-Design) - Break the reference to the options of the
Class
prototype (#7459 by @Falke-Design) - ๐ Improve
Tooltip
optionspermanent
&sticky
to work together (#7563 by @Falke-Design) - Check if map container is still connected with Leaflet in
locate
event listener (#7813 by @Falke-Design) - ๐ Fix
Tooltip
bindTooltip
to unbind existent tooltip (#7633 by @Falke-Design) - Correct
if
condition, to add zoom limits for Layer (#7609 by @vcoppe) GridLayer
redraw tiles after changingmaxNativeZoom
(#6443 by @cherniavskii)- ๐ Fix
Popup
keepInView
if the map needs to panned over a long distance (#7792 by @Falke-Design) - ๐ Tolerate wrong event names in
add/removePointerListener
(#7808 by @johnd0e) - Reset width & padding to prevent cascading CSS from breaking tile rendering (#6843 by @Spudley)
- Fix
mousedown
event calling after draggingCanvas
map (#7781 by @johnd0e) - โฌ Decrease
console.warn
pollution (#7748 by @johnd0e) - ๐ Fix
contextmenu
event default-preventing when there are >1 target candidates (#7544 by @johnd0e) - Prevent click on
Popup
-tip from firing on map. (#7541 by @johnd0e) - ๐ Fix error by calling
Path.setStyle
before adding the layer to the map (#6941 by @NielsHolt) - Reset
BoxZoom
after cancel with ESC (#7597 by @Falke-Design) - ๐ Fix
noConflict
(#7855 by @Falke-Design)
๐ ๐ Docs
- โฌ๏ธ Upgrade Code of Conduct to Contributor Covenant v2 and improve its visibility (#7984 by @mourner)
- ๐ Lint examples (#7827 by @mourner)
- โก๏ธ Update usability in Docs (#7982, #7703, #7950, #7906, #7907, #7696, #7816, #7345, #7815, #7948, #7901 by @Falke-Design, @avioli, @Malvoz, @fulldecent, @saerdnaer, @MxDui)
- โ๏ธ Typos / Fixes in Docs, Samples, ... (#7263, #7284, #7339, #7349, #7381, #7371, #7485, #7380, #7578, #7758, #7602, #7857, #7860, #7336, #7819 by @timgates42, @IvanSanchez, @ipovos, @elfalem, @BakuCity, @simon04, @user073, @Dev-Steven, @vanillajonathan, @aquelle-cp, @matkoniecz, @Falke-Design)
- Clarify
zoomend
event (#7460 by @xeruf) - โ Add
false
toprefix
ofControl.Attribution
(#7814 by @Falke-Design) LayerGroup
inherit fromInteractive Layer
(#7763 by @johnd0e)- ๐ Improve
Map.panInside
documentation (#7397 by @daverayment) - ๐ Update
Renderer
documentation to clarifytolerance
option is forCanvas
only (#7515 by @Hippl-Eric) - โ Add documentation for Event-Listener
propagate
argument (#7103 by @riffaud)
๐ง Workflow
- ๐ง Split
plugins.md
into many files for easier maintenance (#7805 by @Falke-Design) - โ Add Bundlemon to watch bundle size (#7934, #7983, #7905 by @jonkoops)
- โ Add
npm run serve
to serve docs on localhost (#7973 by @Falke-Design) - ๐ Rename
master
branch tomain
(#7921 by @jonkoops) - Upload files to AWS even if the file-size is the same (#7853 by @jonkoops)
- โ Remove
leaflet-include.js
fromdebug
samples (#7776 by @Falke-Design) - ๐ Lint adjustments (#7676, #7743, #7757 by @jonkoops, @mourner)
- ๐ Simplify release process (#7711, #7854, #7727, #8039 by @mourner)
- ๐ Simplify docs update process on release (#7730 by @mourner)
- โก๏ธ Update dependencies and add Dependabot config (#7455, #7653, #7677, #7725 by @jonkoops)
- ๐ท Split main workflow into multiple parallel jobs (#7710 by @jonkoops)
- ๐ท Run CI on Github actions (#7691, #7654, #7702 by @jonkoops)
- โ Continue running tests even if one fails (#7723 by @jonkoops)
- โ Add https://github.com/Leaflet/Leaflet/labels/blocker check to release process (#8019 by @Malvoz)
- โ Remove all references of Bower (#7831 by @jonkoops)
โ ๐งช Tests
- simplify
.near
and.nearLatLng
usage (#7820 by @johnd0e) - โ
Run tests on
Internet Explorer 11
(#7741 by @jonkoops) - โ
Run tests on
FirefoxNoTouch
(#7736, #7742 by @johnd0e) - โฌ๏ธ Drop
PhantomJS
from test suite (#7660, #7724 by @jonkoops) - Enforce forbid-only rule in the continuous integration (#7448 by @johnd0e)
- ๐ป Increase
captureTimeout
andbrowserSocketTimeout
(#7856 by @Falke-Design) - โ Added / update tests (#7790, #7147, #7721, #7461, #7126, #7451, #7450, #7447, #7438 by @Falke-Design, @johnd0e, @phloose)
- โ Added missing Test-Spec-Files to index.html (#7845 by @Falke-Design)
- ๐ Improve reliability of