Fixing issue where you couldn't drag an item multiple pages (issue 10754544)

-> This was caused by a strange race condition. The page snap time was equal to
   the delay to recheck whether to snap (in DragController). This meant that
   scrollRight()/Left() would get called, and the scroller would be finished
   however, the final computeScrollHelper() hadn't been called, so the mCurrentPage
   hadn't yet been incremented.
-> Fixed the underlying race condition.
-> Added suitable gap (150 ms) between the two delays.

Change-Id: If700eb9e14d77a174e4395ca6933119bdb0da768
This commit is contained in:
Adam Cohen committed 2013-09-29 18:13:25 -07:00
1 parent 4ef75f523c
commit 2bf63d5205
3 files changed
+5 -21

No files matched your search

@@ -50,7 +50,7 @@ public class DragController {
public static int DRAG_ACTION_COPY = 1;
private static final int SCROLL_DELAY = 500;
private static final int RESCROLL_DELAY = 750;
private static final int RESCROLL_DELAY = PagedView.PAGE_SNAP_ANIMATION_DURATION + 150;
private static final boolean PROFILE_DRAWING_DURING_DRAG = false;