diff --git a/google-map-marker.html b/google-map-marker.html index fb789a3..32b981d 100644 --- a/google-map-marker.html +++ b/google-map-marker.html @@ -394,7 +394,8 @@ this._contentObserver = new MutationObserver( this._contentChanged.bind(this)); this._contentObserver.observe( this, { childList: true, - subtree: true + subtree: true, + characterData: true }); var content = this.innerHTML.trim(); @@ -458,9 +459,11 @@ }, _clearListener: function(name) { - if (this._listeners[name]) { - google.maps.event.removeListener(this._listeners[name]); - this._listeners[name] = null; + if (typeof this._listeners != 'undefined'){ + if (this._listeners[name]) { + google.maps.event.removeListener(this._listeners[name]); + this._listeners[name] = null; + } } }, diff --git a/google-map.html b/google-map.html index 833897a..ad0d175 100644 --- a/google-map.html +++ b/google-map.html @@ -323,6 +323,15 @@ value: false, observer: '_disableZoomChanged' }, + + /** + * If true, prevent the user from zooming the map by mouse scroll wheel. + */ + disableScrollWheelZoom:{ + type: Boolean, + value: false, + observer: '_disableZoomChanged' + }, /** * If set, custom styles can be applied to the map. @@ -457,7 +466,7 @@ detached: function() { if (this._markersChildrenListener) { - this.unlisten(this.$.selector, 'items-changed', '_updateMarkers'); + this.unlisten(this.$.selector, 'iron-items-changed', '_updateMarkers'); this._markersChildrenListener = null; } if (this._objectsMutationObserver) { @@ -500,7 +509,7 @@ mapTypeControl: !this.disableDefaultUi && !this.disableMapTypeControl, streetViewControl: !this.disableDefaultUi && !this.disableStreetViewControl, disableDoubleClickZoom: this.disableZoom, - scrollwheel: !this.disableZoom, + scrollwheel: !this.disableScrollWheelZoom, styles: this.styles, maxZoom: Number(this.maxZoom), minZoom: Number(this.minZoom) @@ -531,7 +540,7 @@ if (this._markersChildrenListener) { return; } - this._markersChildrenListener = this.listen(this.$.selector, 'items-changed', '_updateMarkers'); + this._markersChildrenListener = this.listen(this.$.selector, 'iron-items-changed', '_updateMarkers'); }, _updateMarkers: function() {