Edge: announce notifications fired by main Edge process such as reading view availability#8424
Conversation
…ng view availability. Re nvaccess#8423. Certain notifications, including reading view availability are fired by main Edge process, not the content process. This means NvDA will ignore such notifications. Resolved by adding a dedicated app module for Edge main process that'll catch notifications and announce them, and propogate them no more.
|
Hi, Ideally someone using Edge should also help out with reviewing this PR to catch bugs and such. Thanks. |
| def event_UIA_notification(self, obj, nextHandler, displayString=None, **kwargs): | ||
| # #8423: even though content process is focused, notifications are fired by main Edge process. | ||
| # The base object will simply ignore this, so notifications must be announced here and no more. | ||
| ui.message(displayString) |
There was a problem hiding this comment.
Could you please end the file with an empty line?
|
|
||
| def event_UIA_notification(self, obj, nextHandler, displayString=None, **kwargs): | ||
| # #8423: even though content process is focused, notifications are fired by main Edge process. | ||
| # The base object will simply ignore this, so notifications must be announced here and no more. |
There was a problem hiding this comment.
If I understand this correctly, these notifications will be announced regardless of what application has the foreground. It is imaginable that notifications are fired even though either this or a child process doesn't have focus. Could you somehow make sure that notifications are only announced within the context of Edge?
Furthermore, how to make sure that this appModule loads? Does it ever receive focus and if so, when?
|
Hi, it should end with an empty line, but apparently it didn’t come through (I guess). I’ll add an extra empty line just in case. Thanks.
From: Leonard de Ruijter <notifications@github.com>
Sent: Thursday, June 21, 2018 8:03 AM
To: nvaccess/nvda <nvda@noreply.github.com>
Cc: Joseph Lee <joseph.lee22590@gmail.com>; Author <author@noreply.github.com>
Subject: Re: [nvaccess/nvda] Edge: announce notifications fired by main Edge process such as reading view availability (#8424)
@LeonarddeR commented on this pull request.
_____
In source/appModules/microsoftedge.py <#8424 (comment)> :
+#A part of NonVisual Desktop Access (NVDA)
+#This file is covered by the GNU General Public License.
+#See the file COPYING for more details.
+#Copyright (C) 2018 NV Access Limited, Joseph Lee
+
+"""appModule for Microsoft Edge main process"""
+
+import appModuleHandler
+import ui
+
+class AppModule(appModuleHandler.AppModule):
+
+ def event_UIA_notification(self, obj, nextHandler, displayString=None, **kwargs):
+ # #8423: even though content process is focused, notifications are fired by main Edge process.
+ # The base object will simply ignore this, so notifications must be announced here and no more.
+ ui.message(displayString)
Could you please end the file with an empty line?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub <#8424 (review)> , or mute the thread <https://github.com/notifications/unsubscribe-auth/AHgLkLaeod8ByPB3GmMlES3bvTzPi-7eks5t-7W3gaJpZM4UunM5> .
|
|
Hi, The Edge process loads when you run Edge and move to the app UI elements such as address omnibar, Settings window and what not. As for limiting this to Edge context, that's next (thanks for reminding me about this). Thanks, |
|
What will happen when a document window has focus, and you restart NVDA?
Then, I assume the new appModule won't be loaded until you bring the
process to the foreground in one of the ways you just mentioned.
|
…s#8423. Reviewed by @LeonarddeR: limit Edge notificaiton context to Edge only. This is done by checking to make sure focused element is indeed part of Edge, and if not, notifications will be silenced. This resolves an issue where Edge notifications are heard while using other apps.
|
Hi, in this case, Shell Experience Host gets focused, and the Edge app module will load once the document regains focus. Thanks.
From: Leonard de Ruijter <notifications@github.com>
Sent: Thursday, June 21, 2018 8:20 AM
To: nvaccess/nvda <nvda@noreply.github.com>
Cc: Joseph Lee <joseph.lee22590@gmail.com>; Author <author@noreply.github.com>
Subject: Re: [nvaccess/nvda] Edge: announce notifications fired by main Edge process such as reading view availability (#8424)
What will happen when a document window has focus, and you restart NVDA?
Then, I assume the new appModule won't be loaded until you bring the
process to the foreground in one of the ways you just mentioned.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub <#8424 (comment)> , or mute the thread <https://github.com/notifications/unsubscribe-auth/AHgLkAXiLTt7rXalk6vF-qlV7J_Pr3y2ks5t-7mRgaJpZM4UunM5> .
|
|
Hi, I’d like to request a second look from @michaelDCurran in hopes of making this one of the early test cases of a supposed new release process. Thanks.
From: Leonard de Ruijter <notifications@github.com>
Sent: Tuesday, July 3, 2018 11:49 AM
To: nvaccess/nvda <nvda@noreply.github.com>
Cc: Joseph Lee <joseph.lee22590@gmail.com>; Author <author@noreply.github.com>
Subject: Re: [nvaccess/nvda] Edge: announce notifications fired by main Edge process such as reading view availability (#8424)
@LeonarddeR approved this pull request.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub <#8424 (review)> , or mute the thread <https://github.com/notifications/unsubscribe-auth/AHgLkJd4hWD3L_NyhtKZ2G37ywQAXTCyks5uC7yxgaJpZM4UunM5> .
|
Link to issue number:
Fixes #8423
Summary of the issue:
Edge: notifications such as reading view availability is not announced.
Description of how this pull request fixes the issue:
Certain notifications, including reading view availability are fired by main Edge process, not the content process. This means NvDA will ignore such notifications. Resolved by adding a dedicated app module for Edge main process that'll catch notifications and announce them, and propogate them no more.
Testing performed:
Tested on Windows 10 April 2018 Update (UIA notification event is part of Fall Creators Update and later).
Known issues with pull request:
None
Change log entry:
Bug fixes: In Microsoft Edge, NVDA will announce notifications such as reading view availability and page load progress.