From 3c893d093c3eb41b9f392ad7c1652fa26ce90397 Mon Sep 17 00:00:00 2001 From: Joseph Lee Date: Sun, 5 Jul 2020 00:46:05 -0700 Subject: [PATCH 1/3] appModules/Open With: copyright header update (note that this file was first added in 2011 as a temporary workaround for Open With issue in Windows 8 preview. Re #11335 --- source/appModules/openwith.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/source/appModules/openwith.py b/source/appModules/openwith.py index 9d681b141c2..35dc96e8d36 100644 --- a/source/appModules/openwith.py +++ b/source/appModules/openwith.py @@ -1,8 +1,7 @@ -#appModules/openWith.py -#A part of NonVisual Desktop Access (NVDA) -#Copyright (C) 2006-2011 NVDA Contributors -#This file is covered by the GNU General Public License. -#See the file COPYING for more details. +# A part of NonVisual Desktop Access (NVDA) +# Copyright (C) 2011-2020 NV Access Limited, Joseph Lee +# This file is covered by the GNU General Public License. +# See the file COPYING for more details. from comtypes import COMError import appModuleHandler From 0e119c3ff2b56a5af79cc1cb5e4a77c36c9936ba Mon Sep 17 00:00:00 2001 From: Joseph Lee Date: Sun, 5 Jul 2020 00:54:07 -0700 Subject: [PATCH 2/3] appModules/open with: treat Shell_Flyout as a good UIA window. Re #11335. ON some systems running Windows 10 May 2020 UPdate (Version 2004), Open With dialog was not read, although NVDA will say 'pane'. Turns out this is a UIA element that is seen as an IAccessible by NVDA. Thus classify Sheell_Flyout window as a good UIA window. NOt only does this let NVDA announce Open With dialog in May 2020 Update, it also lets nVDA not announce 'pane' when Open With opens. --- source/appModules/openwith.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/source/appModules/openwith.py b/source/appModules/openwith.py index 35dc96e8d36..cc6621c574a 100644 --- a/source/appModules/openwith.py +++ b/source/appModules/openwith.py @@ -8,6 +8,7 @@ import controlTypes from NVDAObjects.UIA import UIA from NVDAObjects.behaviors import Dialog +import winUser #win8hack: the nondefault items in the list of applications are not labeled class NonDefaultAppTile(UIA): @@ -43,3 +44,9 @@ def chooseNVDAObjectOverlayClasses(self,obj,clsList): elif automationID=="ImmersiveOpenWithFlyout": clsList.insert(0,ImmersiveOpenWithFlyout) + def isGoodUIAWindow(self, hwnd): + # #11335: Open With dialog isn't read in Windows 10 Version 2004 (May 2020 Update). + # Note that treating the below window as a UIA window will make NVDA no longer announce "pane". + if winUser.getClassName(hwnd) == "Shell_Flyout": + return True + return False From 7027749be2e7e5e614a06a321317f19aa528bb02 Mon Sep 17 00:00:00 2001 From: Michael Curran Date: Mon, 6 Jul 2020 09:52:34 +1000 Subject: [PATCH 3/3] Update what's new for pr #11336 --- user_docs/en/changes.t2t | 1 + 1 file changed, 1 insertion(+) diff --git a/user_docs/en/changes.t2t b/user_docs/en/changes.t2t index ecdcd9a4191..887e8d7d661 100644 --- a/user_docs/en/changes.t2t +++ b/user_docs/en/changes.t2t @@ -25,6 +25,7 @@ What's New in NVDA - In general settings panel, the language list is now sorted correctly. (#10348) - In the Input Gestures dialog, significantly improved performance while filtering. (#10307)( - You can now send Unicode characters beyond U+FFFF from a braille display. (#10796) +- NVDA will announce Open With dialog content in Windows 10 May 2020 Update. (#11335) == Changes For Developers ==