Leaflet: disableClickPropagation fails after double tapping map on iOS

IMG_2DE51D162B81-1

Steps to reproduce

  • Open https://6v1ht.csb.app on iOS device
  • Double tap on upper 50% of map to zoom
  • Single tap on overlay element in lower 50% of map

Expected behavior

  • Single tap on overlay element should not do anything because it is a <div> with disableClickPropagation

Current behavior

  • Map zooms in

Environment

  • Leaflet version: 1.7.1
  • Browser (with version): iOS Safari
  • OS/Platform (with version): iOS 14.3

Additional context

  • Also broken on https://shademap.app when you attempt to use slider at bottom of map.
  • Thank you for maintaining this amazing library. I am investigating the bug and hoping to narrow down the cause. Any guidance is greatly appreciated.

Minimal example reproducing the issue https://codesandbox.io/s/epic-stonebraker-6v1ht?file=/src/index.js

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 16

Most upvoted comments

Make sure that map tap handler is disabled.

P.S. But it should not be active in Chrome anyway…

@johnd0e I can confirm #7027 solves this issue, but it creates a new problem: disableClickPropagation no longer stops propagation of double taps.

To reproduce, overlay an element over a map and disableClickPropagation then double tap the element and notice that the map zooms in.