nakarte

Source code of https://map.sikmir.ru (fork)
git clone git://git.sikmir.ru/nakarte
Log | Files | Refs | LICENSE

commit 10238486e206d8d6221a0d47b1aff5fc91f2567f
parent e4c1e58abf2678eafe92aea4169445c71740978d
Author: Sergey Orlov <wladimirych@gmail.com>
Date:   Wed, 24 Jun 2020 19:09:38 +0200

delay map and panorama resizing to avoid errors "ResizeObserver loop limit exceeded"

Diffstat:
Msrc/lib/leaflet.control.panoramas/index.js | 5++++-
Msrc/lib/leaflet.map.sidebars/index.js | 2+-
2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/lib/leaflet.control.panoramas/index.js b/src/lib/leaflet.control.panoramas/index.js @@ -101,7 +101,10 @@ L.Control.Panoramas = L.Control.extend({ L.Control.prototype.initialize.call(this, options); this.loadSettings(); this._panoramasContainer = L.DomUtil.create('div', 'panoramas-container'); - onElementResize(this._panoramasContainer, this.onContainerResize.bind(this)); + onElementResize( + this._panoramasContainer, + L.Util.requestAnimFrame.bind(null, this.onContainerResize.bind(this)) + ); this.providers = this.getProviders(); for (let provider of this.providers) { provider.selected.subscribe(this.updateCoverageVisibility, this); diff --git a/src/lib/leaflet.map.sidebars/index.js b/src/lib/leaflet.map.sidebars/index.js @@ -7,7 +7,7 @@ const MapWithSidebars = L.Map.extend({ this._sidebarsContainer = L.DomUtil.get(id); this.setupSidebarsLayout(this._sidebarsContainer); L.Map.prototype.initialize.call(this, this._mapContainer, options); - onElementResize(this._mapContainer, this.invalidateSize.bind(this)); + onElementResize(this._mapContainer, L.Util.requestAnimFrame.bind(null, this.invalidateSize.bind(this))); }, setupSidebarsLayout: function(container) {