Conversation
| expect($container.first()[0].innerText).to.equal(`[249][0] = ${initialValue} -> abc`); | ||
| }); | ||
| }); | ||
| }); |
There was a problem hiding this comment.
Would like to see a test on edit first + arrowup
|
|
||
| handleKeyDown = (e: KeyboardEvent) => { | ||
| if (e.keyCode !== KEY_CODES.ENTER && e.keyCode !== KEY_CODES.TAB) { | ||
| if (!isNavKey(e.keyCode) |
There was a problem hiding this comment.
I think this is wrong. Prior to this change, once you started modifying the content of the cell, the up/down arrow would send you to the beginning/end of the cell content. The left/right arrow in this mode would move you one character over to the left/right. Now, when editing up/down will leave & save (which is the desired behavior), but it's now impossible to navigate the content with left/right.
I think the change should only apply to up/down and leave left/right as is (user can still navigate to beginning/end of content by typing cmd/ctrl + left/right)
There was a problem hiding this comment.
In all cases there is a potential usability issue here: either the user cannot navigate the cell content or they get a different behavior on up/down vs. left/right.
There was a problem hiding this comment.
Fair point. I'm checking out Google spreadsheets and I'm noticing that if you click on the cell, you can edit it, and the arrow keys navigate the table. If you double click, you can edit the cell, and the arrow keys will move inside the input. You can edit the content and navigate, or if you really want to do specific edits you double click. Is that something we should do here as well? Was that the idea all along?
I am not, to be honest, super up to date with web usability/accessibility these days, but I could see that this might be an issue, since we're overriding the default <input> behaviour here.
There was a problem hiding this comment.
@cldougl Would you take a look at this as well?
|
Pulling @chriddyp as reviewer since he opened the issue. |
Marc-Andre-Rivet
left a comment
There was a problem hiding this comment.
- left/right arrow change in behavior affects usability negatively in my opinion / I think this should be reverted
- want to make sure we engage in a usability discussion about the whole change
Yeah, this is subtle. I recommend looking at the behaviour of excel (if you have it), google spreadsheet, or the spreadsheet component we use in chart studio: https://plot.ly/create In spreadsheets, there are two modes for cell editing. I've marked which cases work on
I hope that clears things up. This stuff is really tricky, I have to manually go through the motions every time 🙈 |
|
@chriddyp Ah, so that sounds kind of what I'm describing in the comment above (#172 (comment)), yes? That makes sense to me. Thanks for the detailed list, really very interesting to think about these issues in depth and how users interact with this stuff! |
|
i'll make new issues for the rest of the unsupported items and move them into the priority #2 column. |
|
issue for the remaining items: #174 |
|
@valentijnnieman Updated issue with additional tests in #141 (comment) As is the PR breaks |
…1-move-in-cell
chriddyp
left a comment
There was a problem hiding this comment.
💯 💯 💯 the interactions are working very well now! Looks like you knocked off a few other items as well, like the differentiated styles between the focussed and active state.
💃 from me for the UI side of things
| it('on cell modification', () => { | ||
| DashTable.getCell(0, 0).click(); | ||
| DOM.focused.type(`10${Key.Enter}`); | ||
| DashTable.getCell(1, 1).click(); |
There was a problem hiding this comment.
Since navigation_test 'does focus on next cell input on text + "enter"' passes, this should work without the click. Test is moot right now :)
There was a problem hiding this comment.
🐮 Test is moo!


Closes #141, this allows users to use keyboard navigation (arrow keys) when editing a cell, i.e. when a cell's input is focused.