catapult-project / catapult

Deprecated Catapult GitHub. Please instead use http://crbug.com "Speed>Benchmarks" component for bugs and https://chromium.googlesource.com/catapult for downloading and editing source code..
https://chromium.googlesource.com/catapult
BSD 3-Clause "New" or "Revised" License
1.93k stars 562 forks source link

Pan and Scan problem outside of viewport scrollTop limits #302

Open catapult-bot opened 9 years ago

catapult-bot commented 9 years ago

Issue by natduca Monday Sep 22, 2014 at 20:11 GMT Originally opened as https://github.com/google/trace-viewer/issues/302


From aerotw...@chromium.org on July 11, 2013 09:12:23

Using absolute differences for the pan and scan is causing problems when we hit the viewport limits. We can essentially scroll off the top and bottom in terms of the panY value (although Chrome itself doesn't balk at scrollTop values outside of the limits). The problem is that you have to scroll back the same amount you overshot before it the viewport starts moving again.

We can limit the panY value with max and min but the calculated difference in X and Y from the mouse down value will still be too great, yielding the same result.

I suggest we switch to mouse deltas. Even if we introduce a small amount of error, only tracking the amount moved since the last mouse interaction would circumvent this problem.

Original issue: http://code.google.com/p/trace-viewer/issues/detail?id=296

catapult-bot commented 9 years ago

Comment by natduca Monday Sep 22, 2014 at 20:11 GMT


From nd...@chromium.org on July 24, 2013 17:49:13

Labels: -Tool-All

catapult-bot commented 9 years ago

Comment by natduca Monday Sep 22, 2014 at 20:11 GMT


From egraet...@chromium.org on August 07, 2013 08:46:26

Any objections if I take this over? It's getting seriously annoying.

Status: Started
Owner: egraet...@chromium.org
Cc: aerotw...@chromium.org

catapult-bot commented 9 years ago

Comment by natduca Monday Sep 22, 2014 at 20:11 GMT


From dsinclair@chromium.org on August 07, 2013 09:13:59

I'd recommend holding off for the moment. nduca is in the process of a big refactoring around viewport and display transforms. I seem to remember him mentioning killing off panY but can't seem to find it anymore. https://codereview.appspot.com/12451045/

catapult-bot commented 9 years ago

Comment by natduca Monday Sep 22, 2014 at 20:11 GMT


From nd...@chromium.org on August 07, 2013 10:28:54

Agreed, I'd suggest not addresing this yet.

Also, mousedeltas no. It should be possible to make this work by clamping Y.

catapult-bot commented 9 years ago

Comment by natduca Monday Sep 22, 2014 at 20:11 GMT


From egraet...@google.com on August 08, 2013 02:23:17

Clamping Y solves at least half of the problem.

catapult-bot commented 9 years ago

Comment by natduca Monday Sep 22, 2014 at 20:11 GMT


From egraet...@chromium.org on August 12, 2013 03:34:29

Clamping Y was landed as part of: https://code.google.com/p/trace-viewer/source/detail?r=851 At the moment you still have to pan back the amount you panned out while in the same panning interaction. But if you panned outside the bounds, the wrong value is not stored anymore and doesn't affect the next pan.

Owner: ---
Cc: egraet...@chromium.org

catapult-bot commented 9 years ago

Comment by natduca Monday Sep 22, 2014 at 20:11 GMT


From nd...@chromium.org on August 12, 2013 12:45:36

I'm a bit confused. How to reproduce this?

catapult-bot commented 9 years ago

Comment by natduca Monday Sep 22, 2014 at 20:11 GMT


From egraet...@chromium.org on August 13, 2013 01:43:25

You press down the mouse button and pan upwards for a while, without ever releasing the mouse button. If you now start panning downwards with the mouse button still pressed, you will notice that you need to pan back all the way you virtually panned up before.

This bug is not a big deal anymore, I can live with it.