Enters list items when try to scroll through list


#1

I noticed on iPhone I’m used to flicking my finger to scroll, but this causes you to click on list items sometimes. Have other people noticed this? I noticed it and thought is wasn’t a big issue but then my teammate said he was noticing it too without me bringing it to his attention.

And ideas? Anyone else notice this?


#2

What version of Ionic are you using? I remember there being some issues with item and scrolling a few versions back. Can you provide a codepen sample?


#3

I noticed this too after upgrading to 1.0.0-beta.1. This wasn’t happening with the previous version, 0.9.27. Hope that helps narrow it down!


#4

I noticed it with 1.0.0-beta.1 also, The codepen would be anything with an ion-list in it. Load it onto ios, and then scroll up and down. every 3-4 scrolls with cause a click on the list item. I think it is mainly when you do a quick flick.


#5

I noticed the same after upgrading to 1.0.0-beta.1.


#6

Best bet is to open an issue for it on github. Make sure to mention that it happens on a device.


#7

I noticed the same after upgrading to 1.0.0-beta.1!


How to scroll without accidently clicking list items?
#8

I’m looking into this, but its somewhat related here: https://github.com/driftyco/ionic/issues/970


#9

I just committed a change where it’s no longer testing against the mousedown event, which is where the primary issue was coming from. (Why older Android touch devices broadcast both touch and mouse events is beyond me).

I’ve tested my fixes on iOS7, desktop chrome (both mouse and with touch events enabled), Android 4.2, and Android 2.3, but I haven’t closed this issue yet. Would I be able to get some additional help testing? Thanks.

http://code.ionicframework.com/#nightly (build 1512 or later)

Related post


#10

Adam, I tested it on an Android 4.4 device. The clicks still happen. What is happening is after a certain number of items (50 in my case for complex list items) scrolling basically grinds to a halt. So a click is registered because your finger is being registered as not moving for a certain period of time. I’m guessing why all of a sudden all the issues on beta is because of the same commit from my other issue - https://github.com/driftyco/ionic/commit/60e453331379c296534dc0fa43bf229016759a7c

In that commit taps held for longer than 250ms are counted as clicks where before they weren’t. With poor performing scrolling and the processor getting hung up that will happen inevitably. If I slow scroll it does not happen as often, but the longer the list the more careful you need to scroll.

I don’t know what you want to do right now though. The main solution is to have better scrolling lists which is a big project that I know you guys are working on. It isn’t just using something like bindonce, I tried that and it is still too slow on a list of 100 or greater. In the near term maybe revert that change? But then things held down longer won’t be counted as clicks, but then again it was that way for a long time.


#11

Most of the code that’s in the commit you mentioned isn’t in the nightly build anymore:
https://github.com/driftyco/ionic/blob/master/js/utils/tap.js#L233

Would you be able to create a codepen that I can use to replicate the issue? One thing we are doing right now is focusing on list performance, so we are actively addressing this.

/cc @andy


#12

I put an issue on github with the cause and a fix.


#13

IGNORE THIS : Frickiin’ Discourse. Not showing all posts until AFTER I pipe in. Then, I see that there has been plenty of discussion already.

That was a bug in 0.9.27 that was fixed prior to the Beta. So, you probably need to upgrade to the Beta - but there are some big changes; so, be prepared.