lib/leaflet.js
function (e, handler) {
		var timeStamp = (e.timeStamp || (e.originalEvent && e.originalEvent.timeStamp)),
		    elapsed = L.DomEvent._lastClick && (timeStamp - L.DomEvent._lastClick);

		// are they closer together than 500ms yet more than 100ms?
		// Android typically triggers them ~300ms apart while multiple listeners
		// on the same event should be triggered far faster;
		// or check if click is simulated on the element, and if it is, reject any non-simulated events

		if ((elapsed && elapsed > 100 && elapsed < 500) || (e.target._simulatedClick && !e._simulated)) {
			L.DomEvent.stop(e);
			return;
		}
		L.DomEvent._lastClick = timeStamp;

		handler(e);
	}
function (e, handler) {
		var timeStamp = (e.timeStamp || (e.originalEvent && e.originalEvent.timeStamp)),
		    elapsed = L.DomEvent._lastClick && (timeStamp - L.DomEvent._lastClick);

		// are they closer together than 500ms yet more than 100ms?
		// Android typically triggers them ~300ms apart while multiple listeners
		// on the same event should be triggered far faster;
		// or check if click is simulated on the element, and if it is, reject any non-simulated events

		if ((elapsed && elapsed > 100 && elapsed < 500) || (e.target._simulatedClick && !e._simulated)) {
			L.DomEvent.stop(e);
			return;
		}
		L.DomEvent._lastClick = timeStamp;

		handler(e);
	}
function ( e , handler ) { var timeStamp = ( e . timeStamp || ( e . originalEvent && e . originalEvent . timeStamp ) ) , elapsed = L . DomEvent . _lastClick && ( timeStamp - L . DomEvent . _lastClick ) ; // are they closer together than 500ms yet more than 100ms?
 // Android typically triggers them ~300ms apart while multiple listeners
 // on the same event should be triggered far faster;
 // or check if click is simulated on the element, and if it is, reject any non-simulated events
 if ( ( elapsed && elapsed > 100 && elapsed < 500 ) || ( e . target . _simulatedClick && ! e . _simulated ) ) { L . DomEvent . stop ( e ) ; return ; } L . DomEvent . _lastClick = timeStamp ; handler ( e ) ; }
this is a horrible workaround for a bug in Android where a single touch triggers two click events
this is a horrible workaround for a bug in Android where a single touch triggers two click events