Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Composable Shell touch keyboard: support emoji panel and other featur…
…es in Windows 10 Fall Creators Update and later. re nvaccess#7273 (nvaccess#7378) * Composable Shell touch keyboard: support emoji panel in Windows 10 Fall Creators Update. re nvaccess#7273. In Windows 10 Fall Creators Update, people using United States English keyboard can use the keyboard to search for and enter emojis (Windows+period or Windows+semicolon). At the moment the app module has been added, with emoji candidates raising UIA element selected event. Things to be aware of: * When the emoji panel first opens, the first emoji isn't announced in some cases. * When searching for emojis, intermediate search results are not announced. * Emoji panel: take care of recent changes in Fall Creators Update. re nvaccess#7273. In Fall Creators Update (build 16299), when emoji categories change, the new category fires name change event. * Readability and copyright year updates. * Emoji panel: handle window open event in post-1709 builds. Re nvaccess#7273. In Windows 10 17000 and later (particularly after 17063 and later), when emoji panel first opens, window opened event is fired. This than allows NVDA to catch this and treat it as an item selected event, thereby allowing the first category to be announced. * Emoji panel: support redesigned emoji panel in build 17666 and later. Re nvaccess#7273. In build 17666 and later, emoji panel was redesigned. Instead of refreshing emoji categories when Tab is pressed, one must now select a category before emoji refreshes. This is especially the case for People category where skin tone must be selected afterwards. For backwards compatibility, continue to support original panel design in Version 1709 and 1803. * Modern keyboard: introduce support for hardware input suggestions and cloud clipboard suggestions. Re nvaccess#8189. Modern keyboard is not just used for emoji panel entry: in version 1803, hardware keyboard input suggestions are lited there. In Redstone 5, cloud clipboard entries are shown through this panel. Thus add support for both. * Modern keyboard: suppress 'Microsoft Candidate uI' message and handle touch keyboard's name change event. Re nvaccess#7273. In Version 1803 (April 2018 Update), 'Microsoft Candidate UI' is announced whenever candidates appear. As this is anoying, suppress this. Also, reported by a user: under some circumstances, touch keyboard keys fire name change event, which results in NVDA announcing characters. Thus suppress this as well. * Modern keyboard: support various changes introduced in build 17700 series. Re nvaccess#7273. Several changes as a result of deploying build 17700 series: * Clipboard: NVDA will no longer announce label for clipboard candidates list. * Emoji panel: NVDA will not respond to verbose name change events fired whenever items are selected. * What's new/new features: added various modern input entries. Re nvaccess#7273 * Modern keyboard/emoji panel: catch a weird case where IAccessible content generic client is the parent of the 'selected' item. Re nvaccess#7273. Reviewed by Mick Curran (NV Access): sometimes, a traceback that ends with 'AttributeError' on line 37 is shown, caused by the fact that sometimes IAccessible content generic client window becomes the parent of the 'selected' item (tree traversal issue). Thus catch this early by making sure the 'parent' is indeed a UIA control.
- Loading branch information