diff --git a/source/NVDAObjects/__init__.py b/source/NVDAObjects/__init__.py index 997b9f9c931..0d4ae60aaaa 100644 --- a/source/NVDAObjects/__init__.py +++ b/source/NVDAObjects/__init__.py @@ -913,12 +913,19 @@ def _get_presentationType(self): return self.presType_layout name = self.name description = self.description + # #15324: Some builds of Microsoft Office expose a space character as the name of unlabeled groupings. + # trying to force NVDA to announce them. + if name and name.isspace(): + name = None + if description and description.isspace(): + description = None if not name and not description: if role in ( controlTypes.Role.WINDOW, controlTypes.Role.PANEL, controlTypes.Role.PROPERTYPAGE, controlTypes.Role.TEXTFRAME, + controlTypes.Role.GROUPING, controlTypes.Role.OPTIONPANE, controlTypes.Role.INTERNALFRAME, controlTypes.Role.FORM, @@ -926,10 +933,6 @@ def _get_presentationType(self): controlTypes.Role.REGION, ): return self.presType_layout - # Groupings should only be considered layout (I.e. filtered out) - # if they also don't have any position information as well as no name or description. - if role == controlTypes.Role.GROUPING and not self.name and not self.description and not self.positionInfo: - return self.presType_layout if role == controlTypes.Role.TABLE and not config.conf["documentFormatting"]["reportTables"]: return self.presType_layout if role in (controlTypes.Role.TABLEROW,controlTypes.Role.TABLECOLUMN,controlTypes.Role.TABLECELL) and (not config.conf["documentFormatting"]["reportTables"] or not config.conf["documentFormatting"]["reportTableCellCoords"]): diff --git a/user_docs/en/changes.t2t b/user_docs/en/changes.t2t index d1bce38675e..408952d4776 100644 --- a/user_docs/en/changes.t2t +++ b/user_docs/en/changes.t2t @@ -23,6 +23,7 @@ Windows 8.1 is the minimum Windows version supported. (#15544) This option now announces additional relevant information about an object when the mouse enters it, such as states (checked/pressed) or cell coordinates in a table. (#15420, @LeonarddeR) - When requesting formatting information on Excel cells, borders and background will only be reported if there is such formatting. (#15560, @CyrilleB79) - The command to toggle the screen curtain now has a default gesture: ``NVDA+control+escape``. (#10560, @CyrilleB79) +- NVDA will again no longer report unlabelled groupings such as in recent versions of Microsoft Office 365 menus. (#15638) - == Bug Fixes == @@ -287,7 +288,6 @@ eSpeak-NG, LibLouis braille translator, and Unicode CLDR have been updated. - Script for reporting the destination of a link now reports from the caret / focus position rather than the navigator object. (#14659) - Portable copy creation no longer requires that a drive letter be entered as part of the absolute path. (#14680) - If Windows is configured to display seconds in the system tray clock, using ``NVDA+f12`` to report the time now honors that setting. (#14742) -- NVDA will now report unlabeled groupings that have useful position information, such as in recent versions of Microsoft Office 365 menus. (#14878) -