Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Touchscreen panning became janky #7708

Closed
jleedev opened this issue Jun 16, 2020 · 6 comments
Closed

Touchscreen panning became janky #7708

jleedev opened this issue Jun 16, 2020 · 6 comments
Assignees
Labels
bug A bug - let's fix this!
Milestone

Comments

@jleedev
Copy link
Contributor

jleedev commented Jun 16, 2020

Steps to reproduce:

  1. Begin line drawing mode (e.g. press 2)
  2. Put finger on touchscreen, and quickly pan a large distance

The map pans one frame then halts, and I have to try again.

Panning a small distance at first will successfully start panning the map, which can then be dragged freely.

Bisect result:
0473243 is the first bad commit

The code changes are exclusive to Safari, so the offending change boils down to this:

.ideditor, .ideditor * {
    /* disable pinch-to-zoom of the UI on touch devices */
    touch-action: pan-x pan-y;
}

I can reproduce this in Chrome OS and Chrome for Android, but not in Firefox Preview for Android — making this look like a bug in Chrome.

screen recording

@quincylvania quincylvania added the bug A bug - let's fix this! label Jun 16, 2020
@quincylvania quincylvania added this to the 2.18.0 milestone Jun 16, 2020
@quincylvania quincylvania self-assigned this Jun 16, 2020
@quincylvania
Copy link
Collaborator

@jleedev Weird bug! Thanks for reporting. I don't have an Android device for testing at the moment—I should really get one.

I added touch-action: none to the map element, so hopefully Chrome will correctly let iD handle the gestures. Please do let me know if that fixes it or not.

@jleedev
Copy link
Contributor Author

jleedev commented Jun 17, 2020

b96401e doesn't seem to fix it.

Adding touch-action: none to .ideditor, .ideditor * does, though.

@quincylvania
Copy link
Collaborator

@jleedev Odd. We can't add none to everything since that disables scrolling of elements like the sidebar.

@quincylvania
Copy link
Collaborator

@jleedev Would you mind testing this again when you get a chance? I made the map and all its container elements touch-action: none, so Chrome shouldn't try to handle any of the gestures itself…

@jleedev
Copy link
Contributor Author

jleedev commented Jun 25, 2020

It seems to be working!

@quincylvania
Copy link
Collaborator

It seems to be working!

@jleedev Huzzah! Thanks for helping debug this. It's always hard to fix browser/device-specific bugs without access to the setup in question.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A bug - let's fix this!
Projects
None yet
Development

No branches or pull requests

2 participants