Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

シート内データの編集をなるべくキーボードだけで完結させたい #15

Closed
ikngtty opened this issue Apr 23, 2020 · 3 comments
Assignees
Labels
enhancement New feature or request

Comments

@ikngtty
Copy link
Member

ikngtty commented Apr 23, 2020

以下のような仕様だと便利。

  • 新規行作成時に最左の入力欄に最初からカーソルがあっている。
  • Tab キーで遷移しながら入力できる。
    • 最右の入力欄に行った際に Tab キーを押すと、カーソルがどこか関係ないところに飛んでしまう。最左の入力欄に戻ってほしい。
    • カレンダーをキーで入力することができない。
  • Enter キーで行保存、Esc キーでキャンセル。
@ikngtty ikngtty added the enhancement New feature or request label Apr 23, 2020
@FujiHaruka
Copy link
Contributor

こういうアクセシビリティはあとでやるとだるいので早めにやったほうがいいやつですね

@FujiHaruka
Copy link
Contributor

実装済み

  • 新規行作成時に最左の入力欄にフォーカスされる
  • カレンダーをキーで入力できる

未実装

  • 最右の入力欄に行った際に Tab キーを押すと、カーソルがどこか関係ないところに飛んでしまう。最左の入力欄に戻ってほしい。
    • キーボードで入力を完結させるという観点からは最右の入力欄で Tab キーを押したら最左の「保存」ボタンにフォーカス当たるのがよさそう。
  • Enter キーで行保存、Esc キーでキャンセル。
    • -> 複数行入力可能な入力欄もあるので保存のショートカットは Ctrl + Enter とか Cmd + Enter とかにします

@FujiHaruka
Copy link
Contributor

  • Tab キーでフォーカスをループ
    • tabindex だけで完結せず JavaScript を使ったそこそこ複雑なコードになりそうなのでサポートしないことにしました
  • Enter キーで行保存、Esc キーでキャンセル
    • material-table が Ecs キャンセルをサポートしていますが、キーをトリガーにした保存はそれ用の API が提供されてなくてライブラリ内部のメソッドを呼び出す形になるのでライブラリがサポートしてくれるのを待つことにしました How to support enter and escape key mbrn/material-table#1162

なのでこの issue はここまででクローズとします。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants