Opened 13 years ago
Closed 12 years ago
#7676 closed defect (fixed)
[patch] [ccla] scrolling new data into view does not work via the keyboard
Reported by: | Becky Gibson | Owned by: | Bryan Forbes |
---|---|---|---|
Priority: | blocker | Milestone: | 1.3 |
Component: | DojoX Grid | Version: | 1.2beta |
Keywords: | a11y keyboard | Cc: | Joseph Scheuhammer |
Blocked By: | Blocking: |
Description
load dojox/grid/tests/test_data_grid.html, focus on Africa in the first row. Press the down arrow to focus the next cell. Continually press the down arrow (but don't hold it down due to #7675)until focus reaches North America. Press down arrow again and the data for the next row is lot loaded, instead focus moves from the cell to the table itself. Pressing pagedown will load the data and allow scrolling of the data but focus remains on the grid rather than in a cell.
Ideally you should be able to continue to press down arrow with focus on North America and the data should be loaded and the focus should move to the cell down in the next (newly added) row.
Attachments (1)
Change History (7)
comment:1 Changed 13 years ago by
Milestone: | tbd → 1.3 |
---|
comment:2 Changed 12 years ago by
Priority: | normal → high |
---|
Changed 12 years ago by
Attachment: | 7676.patch added |
---|
comment:3 Changed 12 years ago by
I took a stab at a fix. The problem is that calling move(1,0) does not cause data to be loaded if it is needed in order to perform the scroll. So, I added a check to see if this is the last row in the current scroller page. If so, call scroll() to move down one row. The scroll() function handles paging in data if needed. Determining how much to scroll seems a bit awkward but I couldn't find another way to accomplish this. You probably also need to apply the patch in #7677 for focus to be properly set after the page load.
Note that I also fixed another issue with the change to the PAGEDOWN code. Previously the initial if statement referred to this.store.count which was undefined. I used the same check as in DOWN_ARROW - this.focus.rowIndex+1 != this.rowCount. Without this fix focus gets lost if you press page down again when focus is on the last row of data.
comment:4 Changed 12 years ago by
Summary: | scrolling new data into view does not work via the keyboard → [patch] [ccla] scrolling new data into view does not work via the keyboard |
---|
comment:5 Changed 12 years ago by
Priority: | high → highest |
---|
Please review these patches. These are all targeted for 1.3
marking these TBD tickets for 1.3 for now, although Bryan may recategorize