Sha256: ba169d7d68d27ccba4fd31653468462d7bf07020bc86d8f283d86fca0d34e922
Contents?: true
Size: 1.16 KB
Versions: 3
Compression:
Stored size: 1.16 KB
Contents
/* * L.Handler.MarkerDrag is used internally by L.Marker to make the markers draggable. */ L.Handler.MarkerDrag = L.Handler.extend({ initialize: function (marker) { this._marker = marker; }, addHooks: function () { var icon = this._marker._icon; if (!this._draggable) { this._draggable = new L.Draggable(icon, icon); this._draggable .on('dragstart', this._onDragStart, this) .on('drag', this._onDrag, this) .on('dragend', this._onDragEnd, this); } this._draggable.enable(); }, removeHooks: function () { this._draggable.disable(); }, moved: function () { return this._draggable && this._draggable._moved; }, _onDragStart: function (e) { this._marker .closePopup() .fire('movestart') .fire('dragstart'); }, _onDrag: function (e) { // update shadow position var iconPos = L.DomUtil.getPosition(this._marker._icon); if (this._marker._shadow) { L.DomUtil.setPosition(this._marker._shadow, iconPos); } this._marker._latlng = this._marker._map.layerPointToLatLng(iconPos); this._marker .fire('move') .fire('drag'); }, _onDragEnd: function () { this._marker .fire('moveend') .fire('dragend'); } });
Version data entries
3 entries across 3 versions & 1 rubygems