2150
|
|
|
pvagner |
15 years ago
|
|
|
2149
|
|
|
pvagner |
15 years ago
|
|
|
2148
|
|
|
pvagner |
15 years ago
|
|
|
2144
|
|
|
mdcurran |
15 years ago
|
|
|
2140
|
|
|
pvagner |
15 years ago
|
|
|
2139
|
|
|
pvagner |
15 years ago
|
|
|
2138
|
|
|
pvagner |
15 years ago
|
|
|
2137
|
|
|
mdcurran |
15 years ago
|
|
|
2136
|
|
|
mdcurran |
15 years ago
|
|
|
2135
|
|
|
mdcurran |
15 years ago
|
|
|
2134
|
|
|
mdcurran |
15 years ago
|
|
|
2132
|
|
|
pvagner |
15 years ago
|
|
|
2131
|
|
|
pvagner |
15 years ago
|
|
|
2130
|
|
Some very basic support for IME input. Now if you are using a keyboard layout that uses IMe for input, and the IME window class is mscandui21.candidate[D (I'm not sure if both XP and Vista use this), then when starting to type a compersition string, NVDA will announce the nine possibilities for that character. Each time you narrow down the posibilities by typing another character, NVDA again reads the possibilities. NVDA also places the navigator object on the last candidate announced, so that you can manually navigate through the candidates. Note though that for some reason accDoDefaultAction does not work on the candidates, so if you do want to activate one, rather than just pressing its number, you'll have to route the mouse to the navigator object and click. I have tested this so far in Notepad, Wordpad and Windows Explorer, using the Chinese PRC Pinyin IME keyboard layout. This should be tested a lot. I'm very interested to know if people are able to make use of this feature, or if it can be improved. Note that this is only support for IME, not Text Services Framework.
|
mdcurran |
15 years ago
|
|
|
2127
|
|
Added a new module called CoCallCancellationHandler. This is code that can start and stop COM call cancellations. For instance if there is a COM call you know is possibly going to block for ever, make sure that CoCallCancellationHandler has been started, and then if the call takes too long it will automatically be killed off. Once you are finished with the call, call CoCallCancellationHandler.stop. This is managed by turning on call cancellation in OLE, then registering a generator in NVDA's core that updates an event as it executes on about every second cycle, and then creating a monitor thread which watches this cycle event and if it ever stops for more than a particular amount of time, it cancels any current COM calls. So far NVDA only uses CoCallCancellationHandler for threee specific situations: to fix a freeze in Lotus Symphony when moving from the document to the menu bar, in Windows XP Add/Remove programs, when launching an uninstaller, and in Spybot Search and Destroy, where NVDA would freeze when it opens. All three of these freezes are fixed by this new code, though more testing must be done before we could consider using CoCallCancellationHandler in a much more general way.
|
mdcurran |
15 years ago
|
|
|
2126
|
|
|
pvagner |
15 years ago
|
|
|
2125
|
|
|
pvagner |
15 years ago
|
|
|
2124
|
|
|
pvagner |
15 years ago
|
|
|
2123
|
|
|
pvagner |
15 years ago
|
|
|
2122
|
|
|
mdcurran |
15 years ago
|
|
|