Repository: nvaccess/nvda

Issue:
NVDA plays its sound for search suggestions, when going to fullscreen mode and vice versa in the YouTube player in Microsoft Edge
### Steps to reproduce:
1. In NVDA's settings -> Object Presentation, enable the option to play a sound when search suggestions appear.
2. Open Microsoft Edge.
3. Go to www.youtube.com.
4. Open a video from the main page (doesn't matter which).
5. Wait for the video to start playing.
6. Bypass the "F" key, so it can be send to the YouTube player. This makes the player to go in fullscreen mode.
7. Bypass the "Escape" key, so you can exit out of fullscreen mode.

### Actual behavior:
NVDA plays its sound for available search suggestions each time the YouTube player goes into or exits out of fullscreen mode.

### Expected behavior:
NVDA should not play its sound for available suggestions each time the YouTube player goes into or exits out of fullscreen mode, because there are no search suggestions available and in fact we're not working with a search field at all in this case.

### System configuration
- Operating system: Windows 10 Pro version 1809 (build 17763.195), 64-bit, in Bulgarian with all locale settings set to "Bulgarian".
- NVDA version: alpha-16477,f6cd02d2.
- Microsoft Edge version: Microsoft Edge 44.17763.1.0, Microsoft EdgeHTML 18.17763.
- Processor: Intel Core i5-4670 at 3.40GHz.
- RAM Memory: 8.00GB.
- Graphics: MSI GeForce GTX-1050TI Gaming X 4G, 4096MB dedicated memory + 4065MB shared system memory, desktop resolution set to 1920x1080.
- Sound Card: Realtek ALC887 at Intel Lynx Point PCH - High Definition Audio Controller.

### Other questions
#### Does the issue still occur after restarting your PC?
Yes, it does.

#### Have you tried any other versions of NVDA?
Yes, this issue has been present probably since the feature to play a sound when search suggestions are available was introduced to NVDA.


Discussion:
Hi, caused by odd controller for event fired by address bar. The simplest way to reproduce this problem is pressing F11 from anywhere. I’ll take a look at it from my add-on before writing a pull request so folks can test it thoroughly first. Thanks.

 

From: Kostadin Kolev <notifications@github.com> 
Sent: Saturday, December 29, 2018 12:57 AM
To: nvaccess/nvda <nvda@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Subject: [nvaccess/nvda] NVDA plays its sound for search suggestions, when going to fullscreen mode and vice versa in the YouTube player in Microsoft Edge (#9110)

 


Steps to reproduce:


1.	In NVDA's settings -> Object Presentation, enable the option to play a sound when search suggestions appear.
2.	Open Microsoft Edge.
3.	Go to www.youtube.com <http://www.youtube.com> .
4.	Open a video from the main page (doesn't matter which).
5.	Wait for the video to start playing.
6.	Bypass the "F" key, so it can be send to the YouTube player. This makes the player to go in fullscreen mode.
7.	Bypass the "Escape" key, so you can exit out of fullscreen mode.


Actual behavior:


NVDA plays its sound for available search suggestions each time the YouTube player goes into or exits out of fullscreen mode.


Expected behavior:


NVDA should not play its sound for available suggestions each time the YouTube player goes into or exits out of fullscreen mode, because there are no search suggestions available and in fact we're not working with a search field at all in this case.


System configuration


*	Operating system: Windows 10 Pro version 1809 (build 17763.195), 64-bit, in Bulgarian with all locale settings set to "Bulgarian".
*	NVDA version: alpha-16477,f6cd02d2.
*	Microsoft Edge version: Microsoft Edge 44.17763.1.0, Microsoft EdgeHTML 18.17763.
*	Processor: Intel Core i5-4670 at 3.40GHz.
*	RAM Memory: 8.00GB.
*	Graphics: MSI GeForce GTX-1050TI Gaming X 4G, 4096MB dedicated memory + 4065MB shared system memory, desktop resolution set to 1920x1080.
*	Sound Card: Realtek ALC887 at Intel Lynx Point PCH - High Definition Audio Controller.


Other questions


Does the issue still occur after restarting your PC?


Yes, it does.


Have you tried any other versions of NVDA?


Yes, this issue has been present probably since the feature to play a sound when search suggestions are available was introduced to NVDA.

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub <https://github.com/nvaccess/nvda/issues/9110> , or mute the thread <https://github.com/notifications/unsubscribe-auth/AHgLkLL01JXDfZtbNeoJtI0Z1CKmn3NTks5u9y5cgaJpZM4Zke5i> .


Hi,

Try today's Windows 10 App Essentials release (19.01.1/December 29th hotfix snapshot) and see if the problem is gone; if it is gone, I'll open a pull request regarding this problem.

Technical: the current Core implementation won't perform focus object comparison when controller for event with controller for count of 0 is detected. The add-on does fix this at the moment.

Thanks.
I've played a few YouTube videos in fullscreen mode in Edge and the issue did not occur.
Hi, this is with today’s add-on snapshot, correct? Thanks.

 

From: Kostadin Kolev <notifications@github.com> 
Sent: Saturday, December 29, 2018 10:22 AM
To: nvaccess/nvda <nvda@noreply.github.com>
Cc: Joseph Lee <joseph.lee22590@gmail.com>; Comment <comment@noreply.github.com>
Subject: Re: [nvaccess/nvda] NVDA plays its sound for search suggestions, when going to fullscreen mode and vice versa in the YouTube player in Microsoft Edge (#9110)

 

I've played a few YouTube videos in fullscreen mode in Edge and the issue did not occur.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub <https://github.com/nvaccess/nvda/issues/9110#issuecomment-450510920> , or mute the thread <https://github.com/notifications/unsubscribe-auth/AHgLkHa6yhBv-F7_EjpjM78J4z1cWh4qks5u97LIgaJpZM4Zke5i> .


Oops, sorry, I forgot to clarify. Yes, it is with today's snapshot of "Windows 10 App Essentials" - 20181229-dev.

P.S.: Sorry, closed it by mistake and that is why I've reopened it.
Hi,

Coming back to this...

I have figured out a more reliable way to resolve this problem (and many others involving controller for event issue with address bar not in focus). However, in order to resolve this, @LeonardDer's UIA auto select work must be included, as Edge's address omnibar is one of those that can benefit from his work.

Technical: the reliable way to resolve this is assigning an overlay class to Edge's address omnibar so that search suggestion sound won't play if the control is not focused.

Thanks.
Hi,

Actually, a more long-term solution is telling NVDA to exclude Edge address omnibar from participating in controller for event i.e. remove it from search field lookup. Not only this resolves this issue, it also allows consistency between Edge and other web browsers/edit fields where auto-select is used.

I'll create a new issue that generalizes this to other situations.

Thanks.

Resolving patch:
diff --git a/source/NVDAObjects/UIA/__init__.py b/source/NVDAObjects/UIA/__init__.py
--- a/source/NVDAObjects/UIA/__init__.py
+++ b/source/NVDAObjects/UIA/__init__.py
@@ -863,8 +863,7 @@ def findOverlayClasses(self,clsList):
 		if isDialog:
 			clsList.append(Dialog)
 		# #6241: Try detecting all possible suggestions containers and search fields scattered throughout Windows 10.
-		# In Windows 10, allow Start menu search box and Edge's address omnibar to participate in announcing appearance of auto-suggestions.
-		if self.UIAElement.cachedAutomationID in ("SearchTextBox", "TextBox", "addressEditBox"):
+		if self.UIAElement.cachedAutomationID in ("SearchTextBox", "TextBox"):
 			clsList.append(SearchField)
 		try:
 			# Nested block here in order to catch value error and variable binding error when attempting to access automation ID for invalid elements.


Test patch: