Seen on pilot-5
Start the DataListSample.html page on a Windows machine
Scroll to the end of the list
Tap in the scroll bar
Hit PageUp to verify that keyboard control works
Hit Home to jump to the top of the list
Expected: you see the first set of items
Actual: you get a blank area
The up/down methods of DataList only handle moving a single page above/below the other page. When you move a long distance, you need to reposition both pages.
If I load DataListSample on Windows Chrome, set a breakpoint in DataList.didScroll, then hit Ctrl-End to jump to the end of the list, I see this:
didScroll is hit. The code starts by calling this.getDirection() which returns "down". This calls throtlleJob for the "down" method.
After a delay, "down" is called. At this time, .top is 0, .height is 2950, and getScrollTop returns 28507. Since top _ height is less than scrollTop, the this.positionPageAfter($p) call is made.
After that call, using the DOM inspector I see page 1 positioned at top: 5900px and page2 positioned at 2950px. However, since the display is down at 28507, neither is visible.
I can reproduce this on my MacBook by loading the sample, then hitting Fn+Control+Right Arrow
Thanks for finding this Ben! With that info I should be able to resolve it. Awesome.
still able to reproduce with current DataList sample on both Mac and PC. Go to sample in desktop, hit End key or Fn+Down, you get blank screen.