                     Changes in version 1.3.4.9000                      

                 Changes in version 1.3.4 (2026-09-16)                  

  - Stop importing grDevices in NAMESPACE and drop it from Suggests.
  - Uptade GitHub Actions to actions/checkout@v6

                 Changes in version 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.

                 Changes in version 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.

                 Changes in version 1.3.1 (2025-03-05)                  

  - Fix tests
  - Add select-inputs to sidebar-example

                 Changes in version 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

                 Changes in version 1.2.2 (2023-08-21)                  

  - Added enableContextmenu and disableContextmenu
  - Fixed tests for leaflet v2.2.0. Thanks to @gadenbuie (#60)

                 Changes in version 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

                 Changes in version 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.

                 Changes in version 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

                 Changes in version 1.0.0 (2020-05-18)                  

  - Initial release
