Why not disable the refresher function for this page? From a UX perspective, having both a scrollable/draggable map and a pull to refresh functionality in close vicinity is confusing and prone to errors.
I believe there is a directive to disable data tap. I’ll look that up. When you add it the component doesn’t pass input to ionic which is what you many need. I forgot what it is called in v2. In v1 it was called data-tap-disabled=true.
As it turns out ionic v2 doesn’t have an equivalent of v1 data-tap. However ion-refresh has an enabled attribute you can set to false. So one strategy may be to set it to false if you are operating on the map?
I set up a demo portal for you to see. To be honest its not working well - it sometimes doesn’t work at all and sometimes does, even though the refresh status is updated correctly. Maybe you can fiddle/play and come up with a reliable way (worked it out - see later)
It latches onto an event on the map to enable/disable refresh
Sounds good.
Some notes (I just fixed the demo a few mins ago)
a) You must call refresher complete if you rely on a map event - once I did that, it works reliably. The demo is updated. If you don’t it will lock up (https://github.com/ionic-team/ionic/issues/13366) - this is because the map callback is called a bit late and refresh already starts showing - setting enabled = false at this stage without calling the complete/cancel event will mess it up
b) When I tested on iOS I noticed that “boundsChange” (or equivalent in your lib) is called late - so make sure you try another event to disable refresh