NEWS
leaflet.extras2 1.3.4.9000
leaflet.extras2 1.3.4 (2026-09-16)
- Stop importing
grDevices in NAMESPACE and drop it from Suggests.
- Uptade GitHub Actions to actions/checkout@v6
leaflet.extras2 1.3.3 (2026-09-09)
- Included Leaflet.VectorGrid
for tiled GeoJSON (
addVectorgrid()) and protobuf vector tiles
(addProtobuf()). addProtobuf() accepts popup and label as
property names (not formulas): click popup and hover tooltip.
Hovering point features (place/street labels) no longer crashes Leaflet
(getLatLng / lat undefined). Examples:
inst/examples/vectorgrid_app.R and inst/examples/vectorgrid_pbf_app.R.
Tests cover Spatial/GeoJSON/URL inputs and missing sf / yyjsonr.
spinWhile() shows a map spinner in Shiny around server work.
startSpinner()/stopSpinner() in one renderLeaflet()
chain cannot do that. The spinner stays visible until the
work finishes. Fixes #48.
- Sidebar no longer steals clicks or wheel events from Shiny inputs
(
selectInput / Selectize, including Firefox). While a dropdown is
open the map ignores pointer events. Fixes #78, #66.
addWMS() now hides its attribution when the layer group is hidden,
matching leaflet::addWMSTiles().
addWMS(headers = ...) sends Authorization (Basic/Bearer) and other
custom headers with tiles, the overlay image and GetFeatureInfo (#54).
The WMS must allow CORS for those headers. GetFeatureInfo no longer
opens a blocked iframe on 401/403; it shows an unauthorized message.
Example: inst/examples/wms_geoserver_app.R.
setWMSParams() updates WMS request parameters (e.g. time) on an
existing layer via leafletProxy(), so Shiny apps no longer need to
rebuild the map (#52).
addWMS() GetFeatureInfo popups work behind HTTPS reverse proxies:
HTTP→HTTPS redirects (301/302) are followed on the same host, and
http:// WMS URLs are upgraded on HTTPS pages (#14).
- Replaced deprecated
structure(..., .Label = ) with levels = in tests
(test-mapkeyicon.R, test-playback.R) to clear the R-devel NOTE.
- Documented Shiny mouse events for
addAntpath(): use
input$MAPID_antpath_click / _mouseover / _mouseout instead of shape_*.
addEasyprint() custom export sizes no longer need extra CSS. Pass them in
easyprintOptions(sizeModes = ...) as R lists, for example
list(scale = 3, name = "3x current view") (same zoom and labels,
more pixels) or list(width = 3000, height = 1800, name = "High res").
CurrentSize still exports at the widget size (often low-res in Quarto/HTML).
Custom width/height sizes keep the current map view by default (keepView = TRUE in the
size-mode list). Set keepView = FALSE to keep the zoom level and export a
larger area. See inst/examples/easyprint.R.
leaflet.extras2 1.3.2 (2025-08-27)
- Included Leaflet.Geosearch plugin
- Fixed missing OpenWeather loading GIF and layers/group matching.
- Fixed missing heightgraph icons. (Thanks @hungkitwchi)
- Fixed tests using
leaflet::atlStorms2005, as it will be an sf object. (Thanks @olivroy)
- Fixed reachability icon handling: check for dependencies in options and extend the example app.
leaflet.extras2 1.3.1 (2025-03-05)
- Fix tests
- Add select-inputs to sidebar-example
leaflet.extras2 1.3.0 (2025-01-12)
- Included LayerGroup.Collision plugin
- Included LayerGroup.Conditional plugin
- Included OSM Buildings plugin
- New Function
addDivicon adds DivIcon markers to Leaflet maps with support for custom HTML and CSS classes. See the example in ./inst/examples/divicons_html_app.R
- Added
addClusterCharts to enable pie and bar charts in Marker clusters using Leaflet.markercluster, d3 and L.DivIcon, with support for customizable category styling and various aggregation methods like sum, min, max, mean, and median.
- The opened sidebar tab is returned as Shiny input using the
sidebar_tabs ID. #67
- allow
... in antpathOptions to be able to set the pane (e.g.: renderer= JS('L.svg({pane: "my-pane"})'))
- Switched from
geojsonsf to yyjsonr (heightgraph, timeslider, clustercharts)
- Fix for roxygen2 > 7.0.0. #1491
leaflet.extras2 1.2.2 (2023-08-21)
- Added
enableContextmenu and disableContextmenu
- Fixed tests for leaflet v2.2.0. Thanks to @gadenbuie (#60)
leaflet.extras2 1.2.1 (2023-04-20)
- Bugfix when Sidebar is used inside Shiny modules. The sidebar functions
addSidebar and openSidebar now have an argument ns, where Shiny's namespacing function (e.g: session$ns) can be included.
- Arrowheads now passes all options in
arrowheadOptions to L.polyline
- Update
leaflet.heightgraph to 1.3.2. Has no dependency to d3 anymore.
- Skip tests which use an internet connection
- Adapted URLs and deleted old Mapkey URL
leaflet.extras2 1.2.0 (2022-05-10)
- Included Arrowheads plugin
- Included Leaflet.Sync plugin
- Included Leaflet MovingMarkers plugin
- Included Leaflet Spin plugin. Thanks to @radbasa
- Included Labelgun plugin.
addTimeslider gained styling options and the arguments label, labelOptions, sameDate and ordertime and works for Point / Linestring Simple Feature Collections
- Enable multiple sidebars. Thanks to @jeffreyhanson
- Option
fit removed for sidebars as plugin CSS/JS was adapted
- Deprecated
menuItem/mapmenuItems/markermenuItems and renamed with prefix context_. Fixes #10 and #17
- Some improvement for the
easyprint plugin: (Fixes #31)
- It is now possible to include multiple custom
sizeModes in easyprintOptions. The example easyprint_app.R has been extended to demonstrate the new functionalities.
- The
tileLayer option now accepts a group name for a tilelayer for which printing will wait until the layer is fully loaded.
- The
addPlayback is now capable of displaying labels and popups for every timestep. The transition of labels and popups can be controlled with transitionpopup and transitionlabel.
- The function
addHistory now requires the fontawesome package, since the dependency is not included in shiny's shared directory anymore.
- The function
addWMS gained the argument checkempty, which will check the returning HTML-body tag. If the body is empty, no popup is opened.
- The function
addMovingMarker now accepts icons created by makeAwesomeIcon.
leaflet.extras2 1.1.0 (2020-10-20)
- Included Leaflet Contextmenu plugin
- Included Leaflet TimeSlider plugin
addWMS gained the layerId argument and works like leaflet::addWMSTiles except for the popupOptions
Side-by-Side doesn't propagate click events when dragging. Thanks to f905a47 of #23
leaflet.extras2 1.0.0 (2020-05-18)