Repository navigation
Commit 2843e70
authored
Include Text Object Model 2 in comInterfaces.tom (#20987)
Discovered while working on #20982.
Part of #20788.
Summary of the issue:
NVDA generates comInterfaces.tom from the Text Object Model type library that is registered in Windows. That registration points at riched20.dll, whose copy only has the original Text Object Model. The Text Object Model 2 interfaces and constants are missing.
Description of user facing changes:
None.
Description of developer facing changes:
comInterfaces.tom now includes the Text Object Model 2 interfaces and constants.
Some symbols in comInterfaces.tom change:
ITextDocument2 is now the Text Object Model 2 interface. The older interface of that name is gone.
ITextMsgFilter, tomAlignGlyphs, tomAlignSnapGrid and tomMatchFontCharset are gone.
Developers with an existing build need to run git clean -fdX source/comInterfaces. comtypes reuses a generated module that already exists, so the old module stays otherwise.
Description of development approach:
msftedit.dll embeds its own copy of the Text Object Model type library. It has the same GUID and version as the copy in riched20.dll, and it adds the Text Object Model 2 interfaces and constants. The build now passes the path of msftedit.dll to comtypes instead of the GUID. The generated module names stay the same, so comInterfaces.tom keeps working for existing code.
Windows has shipped Text Object Model 2 in msftedit.dll since Windows 8, so every supported Windows version and build machine has it.
The list of breaking changes comes from comparing every symbol in both type libraries. NVDA itself uses none of the removed or changed symbols.1 parent 763c914 commit 2843e70
2 files changed
Lines changed: 14 additions & 15 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
3 | | - | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
16 | 8 | | |
| 9 | + | |
| 10 | + | |
17 | 11 | | |
18 | 12 | | |
19 | 13 | | |
| |||
140 | 134 | | |
141 | 135 | | |
142 | 136 | | |
143 | | - | |
| 137 | + | |
144 | 138 | | |
145 | 139 | | |
146 | 140 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
| 71 | + | |
71 | 72 | | |
72 | 73 | | |
73 | 74 | | |
| |||
80 | 81 | | |
81 | 82 | | |
82 | 83 | | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
83 | 88 | | |
84 | 89 | | |
85 | 90 | | |
| |||
0 commit comments