react-spectrum icon indicating copy to clipboard operation
react-spectrum copied to clipboard

fix: enhance FocusScope to support tab completion for IMEs

Open ryo-manba opened this issue 1 year ago โ€ข 7 comments

Closes https://github.com/adobe/react-spectrum/issues/5904

I've tested with several languages, but found that not many languages present completion with the Tab key. Therefore, I have confirmed the behavior only with "Chinese Pinyin - Simplified", "Japanese - Kana", and Google IME - Japanese.

โœ… Pull Request Checklist:

  • [x] Included link to corresponding React Spectrum GitHub Issue.
  • [x] Added/updated unit tests and storybook for this change (for new code or code which already has tests).
  • [x] Filled out test instructions.
  • [ ] Updated documentation (if it already exists for this component).
  • [ ] Looked at the Accessibility Practices for this feature - Aria Practices

๐Ÿ“ Test Instructions:

Setup for MacOS:

  1. Open OS keyboard settings.
  2. Add "Chinese Pinyin - Simplified", "Japanese - Kana", and Google IME - Japanese.

Testing Steps:

  1. Navigate to the MDN input search example.
  2. In the second input field, type "a" to trigger a set of suggestions.
  3. Press the Tab key three times to cycle through different suggestions.
  4. Now, visit the FocusScope Storybook example.
  5. Repeat steps 2 and 3 in the Storybook example's input field.
  6. Confirm that the behavior in the MDN example and the Storybook example is consistent, particularly in how suggestions are cycled through with the Tab key.

๐Ÿงข Your Project:

ryo-manba avatar Feb 20 '24 12:02 ryo-manba

GET_BUILD

LFDanLu avatar Feb 20 '24 19:02 LFDanLu

GET_BUILD

LFDanLu avatar Feb 21 '24 17:02 LFDanLu

## API Changes

unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any', access: 'private' } unknown top level export { type: 'any', access: 'private' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'identifier', name: 'Column' } unknown top level export { type: 'identifier', name: 'Column' } unknown type { type: 'link' } unknown type { type: 'link' } unknown type { type: 'link' } unknown type { type: 'link' } unknown type { type: 'link' } unknown type { type: 'link' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any' } unknown top level export { type: 'any' }

rspbot avatar Feb 21 '24 17:02 rspbot

Sorry, can you include the correction to #5921?

rktyt avatar Feb 22 '24 05:02 rktyt

@rktyt This PR doesn't directly relate to that issue, so I'm planning to submit another PR for it. Thanks for the comment! EDIT: I've opened a PR here: https://github.com/adobe/react-spectrum/pull/5923

ryo-manba avatar Feb 22 '24 14:02 ryo-manba