Ticket #451: patch451.txt

File patch451.txt, 1.3 KB (added by aleksey_s, 2 years ago)

A new patch

Line 
1=== modified file 'source/NVDAObjects/IAccessible/__init__.py'
2--- source/NVDAObjects/IAccessible/__init__.py  2009-10-27 04:14:58 +0000
3+++ source/NVDAObjects/IAccessible/__init__.py  2009-11-03 07:39:49 +0000
4@@ -1232,10 +1232,21 @@
5        def _get_description(self):
6                return None
7 
8+class SysLinkClient(IAccessible):
9+
10+       def reportFocus(self):
11+               pass
12+
13 class SysLink(IAccessible):
14 
15-       def reportFocus(self):
16-               pass
17+       def _get_name(self):
18+               #Workaround for #451 - explorer returns incorrect string length, thus it can contain garbage characters
19+               name=super(SysLink,self)._get_name()
20+               if name:
21+                       #Remove any data after the null character
22+                       i=name.find('\0')
23+                       if i>=0: name=name[:i]
24+               return name
25 
26 class TaskList(IAccessible):
27        isPresentableFocusAncestor = False
28@@ -1349,7 +1360,8 @@
29        ("SysTreeView32",oleacc.ROLE_SYSTEM_MENUITEM):"sysTreeView32.TreeViewItem",
30        ("ATL:SysListView32",oleacc.ROLE_SYSTEM_LISTITEM):"sysListView32.ListItem",
31        ("TWizardForm",oleacc.ROLE_SYSTEM_CLIENT):"Dialog",
32-       ("SysLink",oleacc.ROLE_SYSTEM_CLIENT):"SysLink",
33+       ("SysLink",oleacc.ROLE_SYSTEM_CLIENT):"SysLinkClient",
34+       ("SysLink",oleacc.ROLE_SYSTEM_LINK):"SysLink",
35        ("#32771",oleacc.ROLE_SYSTEM_LIST):"TaskList",
36        ("TaskSwitcherWnd",oleacc.ROLE_SYSTEM_LIST):"TaskList",
37        ("#32771",oleacc.ROLE_SYSTEM_LISTITEM):"TaskListIcon",
38