Date   
Re: Visual studio version

Tage Johansson
 

Ok, thanks for the information. As I understand it, I can use vs 2019.

How ever, I am not very sure which components to install. The README says that I should install:

◾ In the Installation details section, under Individual components, ensure the following are selected:
◾ Visual C++ compilers and libraries for ARM64
◾ Visual C++ ATL for ARM64


I cannot find those specific names, so I tried to install the following:

* MSVC v141 - VS 2017 C++ ARM64 build tools (v14.16)

* C++ ATL for v141 build tools (ARM64)


But when I run scons source I get the following error:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
link /nologo /incremental:no /WX /subsystem:windows,6.02 /release /OPT:REF /export:DllGetClassObject,private /export:DllCanUnloadNow,private /export:GetProxyDllInfo,private /manifest:embed /manifestinput:build\a
rm64\IAccessible2proxy.manifest /dll /out:build\arm64\IAccessible2proxy.dll /implib:build\arm64\IAccessible2proxy.lib rpcrt4.lib oleaut32.lib ole32.lib /PDB:build\arm64\IAccessible2proxy.dll.pdb /DEBUG build\arm
64\ia2_i.obj build\arm64\ia2_p.obj build\arm64\ia2_data.obj
LINK : fatal error LNK1104: cannot open file 'LIBCMT.lib'
scons: *** [build\arm64\IAccessible2proxy.dll] Error 1104
scons: building terminated because of errors.

Can anyone help me to solve the problem and build NVDA?

Best regards,
Tage

On 8/31/2019 6:44 PM, Brian's Mail list account via Groups.Io wrote:
I suppose you could prove it by using jaws demo and see if it works differently?
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users
----- Original Message ----- From: "Karl-Otto Rosenqvist" <Karl-otto@...>
To: <nvda-devel@groups.io>
Sent: Saturday, August 31, 2019 9:35 AM
Subject: Re: [nvda-devel] Visual studio version


Hi!
I’m using NVDA with both Visual Studio 2017 and 2019 and it works quite well.
The most annoying thing is that Visual Studio compiles your code in the background and that takes quite a lot of processing power so NVDA stops talking sometimes.
This occurs when moving in the solution tree with the keyboard and when a file is selected Visual Studio automatically opens it in the editor which seems to be a heavy task. It’s probably NVDA that processes the text in the file that’s beeing shown in the editor and that’s why it stops talking.

When I build a solution and there are errors that’s shown in the error list there’s a looong silence before NVDA starts talking again. That’s probably the compilation that kills it.

I’ve tried to lower the execution priority for the compiler and ide and increased the priority of NVDA but it tidn’t make any difference.


Kind regards


Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

31 aug. 2019 kl. 05:51 skrev Luke Davis <luke@...>:

You may want to search the archives, this question has come up before. I believe the answer was that it's fine to use 2019, but there was a small issue or two. I can't remember exactly.

Luke
On Fri, 30 Aug 2019, Tage Johansson wrote:

Do I need visual studio 2017 specificly or is it fine to use visual studio 2019?
Best regards,
Tage
--
Luke Davis
Moderator: the new NVDA Help mailing list! (https://groups.io/g/NVDAHelp)
Author: Debug Helper NVDA add-on (https://github.com/XLTechie/debugHelper)






Subscribing to UIAutomation events

Karl-Otto Rosenqvist
 

Hi!
It's me with the UIA DataGrid again...
Now they've added events to the UIA DataGrid and I'm able to subscribe to it from C# as follows:

Automation.AddAutomationEventHandler(
SelectionPattern.InvalidatedEvent,
grid,
TreeScope.Element,
UIAeventHandler = new AutomationEventHandler(OnUIAutomationEvent)
);

And then unsubscribe like this:
if (UIAeventHandler != null)
{
Automation.RemoveAutomationEventHandler(
SelectionPattern.InvalidatedEvent,
grid,
UIAeventHandler
);
} // if

The method that's getting called when the event is raised looks like this:
private static void OnUIAutomationEvent(object src, AutomationEventArgs e)
{
// Make sure the element still exists. Elements such as tooltips
// can disappear before the event is processed.
AutomationElement sourceElement;
try
{
sourceElement = src as AutomationElement;
}
catch (ElementNotAvailableException)
{
return;
}

if (e.EventId == SelectionPattern.InvalidatedEvent)
{
try
{
Console.WriteLine("--- Markering ---");
var s = grid.GetCurrentPattern(SelectionPattern.Pattern) as SelectionPattern;
foreach (var c in s.Current.GetSelection())
{
var v = c.GetCurrentPattern(ValuePattern.Pattern) as ValuePattern;
System.Console.WriteLine(v.Current.Value);
} // foreach

}
catch (Exception ex)
{
Console.WriteLine("Fel när markerad rad hämtades");
Console.WriteLine(ex.Message);
}

} // if

}


I have the following questions:

1. How do I subscribe to an UIA event in an app m module? I will create a class for the specific UIA element type.

2. How do I get hold of the Selection pattern and the Value patterns for an UIA element? When trying to get hold of the UIASelectionPattern NVDA says that it isn't implemented. The UIASelectionItemPattern is shown when I do a dir(nav) in the Python console but that pattern isn't implemented by the DataGrid.

It seems so close because I can hook up the grid event and print the selection to the console in C# but not in Python. Can anyone point me in the right direction?


Best regards

Karl-Otto

--
Karl-Otto Rosenqvist
Mawingu
Orgnr: 750804-3937
0701- 75 98 56
karl-otto@...
https://mawingu.se

Re: Visual studio version

Karl-Otto Rosenqvist
 

Hi!
I just realized that you're trying to use Visual Studio to compile NVDA... my answer was about using NVDA when developing in Visual Studio. I'm very sorry for this confusion and I'm sorry that I cannot help you.


Kind regards

Karl-Otto


Karl-Otto Rosenqvist
Mawingu
Orgnr: 750804-3937
0701- 75 98 56
karl-otto@...
https://mawingu.se

Den 2019-09-02 kl. 21:00, skrev Tage Johansson:

Ok, thanks for the information. As I understand it, I can use vs 2019.
How ever, I am not very sure which components to install. The README says that I should install:
◾ In the Installation details section, under Individual components, ensure the following are selected:
◾ Visual C++ compilers and libraries for ARM64
◾ Visual C++ ATL for ARM64
I cannot find those specific names, so I tried to install the following:
* MSVC v141 - VS 2017 C++ ARM64 build tools (v14.16)
* C++ ATL for v141 build tools (ARM64)
But when I run scons source I get the following error:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
link /nologo /incremental:no /WX /subsystem:windows,6.02 /release /OPT:REF /export:DllGetClassObject,private /export:DllCanUnloadNow,private /export:GetProxyDllInfo,private /manifest:embed /manifestinput:build\a
rm64\IAccessible2proxy.manifest /dll /out:build\arm64\IAccessible2proxy.dll /implib:build\arm64\IAccessible2proxy.lib rpcrt4.lib oleaut32.lib ole32.lib /PDB:build\arm64\IAccessible2proxy.dll.pdb /DEBUG build\arm
64\ia2_i.obj build\arm64\ia2_p.obj build\arm64\ia2_data.obj
LINK : fatal error LNK1104: cannot open file 'LIBCMT.lib'
scons: *** [build\arm64\IAccessible2proxy.dll] Error 1104
scons: building terminated because of errors.
Can anyone help me to solve the problem and build NVDA?
Best regards,
Tage
On 8/31/2019 6:44 PM, Brian's Mail list account via Groups.Io wrote:
I suppose you could prove it by using jaws demo and see if it works differently?
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users
----- Original Message ----- From: "Karl-Otto Rosenqvist" <Karl-otto@...>
To: <nvda-devel@groups.io>
Sent: Saturday, August 31, 2019 9:35 AM
Subject: Re: [nvda-devel] Visual studio version


Hi!
I’m using NVDA with both Visual Studio 2017 and 2019 and it works quite well.
The most annoying thing is that Visual Studio compiles your code in the background and that takes quite a lot of processing power so NVDA stops talking sometimes.
This occurs when moving in the solution tree with the keyboard and when a file is selected Visual Studio automatically opens it in the editor which seems to be a heavy task. It’s probably NVDA that processes the text in the file that’s beeing shown in the editor and that’s why it stops talking.

When I build a solution and there are errors that’s shown in the error list there’s a looong silence before NVDA starts talking again. That’s probably the compilation that kills it.

I’ve tried to lower the execution priority for the compiler and ide and increased the priority of NVDA but it tidn’t make any difference.


Kind regards


Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

31 aug. 2019 kl. 05:51 skrev Luke Davis <luke@...>:

You may want to search the archives, this question has come up before. I believe the answer was that it's fine to use 2019, but there was a small issue or two. I can't remember exactly.

Luke
On Fri, 30 Aug 2019, Tage Johansson wrote:

Do I need visual studio 2017 specificly or is it fine to use visual studio 2019?
Best regards,
Tage
--
Luke Davis
Moderator: the new NVDA Help mailing list! (https://groups.io/g/NVDAHelp)
Author: Debug Helper NVDA add-on (https://github.com/XLTechie/debugHelper)







Re: WX.Menu item help text: where is it used?

Noelia Ruiz
 

Hi, answering in devel in case lead developers would like to clarify
something or use this discussion for NVDA's improvements.
I think that, in practical terms, the optional help string is never
used by NVDA, never spoken or braillified.
I don't know if this would make sense with the new vision framework,
for instance if this can be highlighted or show in some way.

Cheers

2019-08-30 4:22 GMT+02:00, Luke Davis <luke@...>:

Hello

Perhaps a stupid question, but if I call something like:

gui.mainFrame.sysTrayIcon.preferencesMenu.Append(wx.ID_ANY,
_("&menuItemName..."), _("Some descriptive text"))

where will "Some descriptive text" be used?

WX calls this "help", so I thought I would find it in a mouse hover or
tooltip
of some kind, but in attempting this with both the keyboard and the actual
mouse, in NVDA 2017.3, I can not get anything spoken.

The docs for WX.Menu 4.1.0 say:

An optional help string associated with the item. By default, the handler
for
the wxEVT_MENU_HIGHLIGHT event
displays this string in the status line.

Which helps me not at all.

Thanks

--
Luke Davis
Moderator: the new NVDA Help mailing list! (NVDAHelp+subscribe@groups.io)
Author: Debug Helper NVDA add-on (https://github.com/XLTechie/debugHelper)



Recommended way of excluding certain elements from navigation

Toni Barth
 

Hello,
 
because noone replied to my last post from a few days ago and I accidentally used the wrong tag for my question, i'm sending my previous message again down below.
 
i'm developing an add-on right now to enhance the usability of an application. This application contains at least one table with several cells, but some of those cells, even though they are navigatable by NVDA, contain unimportant information, like the value 'None' or just an icon. I thus wanted to "hide" those cells for the user, meaning that they shouldn't be able to navigate to them using the tab key or arrow keys and tried several ways to do so.
 
I overlayed the table row and override _get_children(), removing the certain children from the list, but I noticed that _get_children() never seems to get executed.
 
I also tried adding states to the specific cells like controlTypes.STATE_INVISIBLE or controlTypes.STATE_UNAVAILABLE, but nothing helped.
 
I also tried moving the focus manually whenever the cell is focused by using event_gainFocus(), but even this seems to mess up things even further. Same goes for using redirectFocus and/or _get_redirectFocus(). It properly redirects my focus to the next cell, but the cursor still seems to be located in the cell whatsoever, means whenever I press the right arrow key, i'll get the same, second cell announced a second time.
 
Do you have an idea how to remove those cells from keyboard navigation (not navigator, but at least from tab/arrow keys navigation)?
 
There must be an easy way to exclude certain elements from keyboard navigation.
 
Thanks for your help :).
 
Best Regards.
 
Toni Barth

Re: Recommended way of excluding certain elements from navigation

James Scholes
 

It would help to know more about the application. You've given tons of detail about what you've tried on the NVDA side, but none about what else you're working with.

• Is this an application you're developing or helping to develop?
• Is it a traditional desktop application, or a web app inside a desktop container?
• If the former, what sort of UI framework and programming environment is in use (e.g. Qt, .Net Framework with WPF, etc.)?

Regards,

James Scholes

On 03/09/2019 at 7:15 pm, Toni Barth via Groups.Io wrote:
Hello,
because noone replied to my last post from a few days ago and I accidentally used the wrong tag for my question, i'm sending my previous message again down below.
i'm developing an add-on right now to enhance the usability of an application. This application contains at least one table with several cells, but some of those cells, even though they are navigatable by NVDA, contain unimportant information, like the value 'None' or just an icon. I thus wanted to "hide" those cells for the user, meaning that they shouldn't be able to navigate to them using the tab key or arrow keys and tried several ways to do so.
I overlayed the table row and override _get_children(), removing the certain children from the list, but I noticed that _get_children() never seems to get executed.
I also tried adding states to the specific cells like controlTypes.STATE_INVISIBLE or controlTypes.STATE_UNAVAILABLE, but nothing helped.
I also tried moving the focus manually whenever the cell is focused by using event_gainFocus(), but even this seems to mess up things even further. Same goes for using redirectFocus and/or _get_redirectFocus(). It properly redirects my focus to the next cell, but the cursor still seems to be located in the cell whatsoever, means whenever I press the right arrow key, i'll get the same, second cell announced a second time.
Do you have an idea how to remove those cells from keyboard navigation (not navigator, but at least from tab/arrow keys navigation)?
There must be an easy way to exclude certain elements from keyboard navigation.
Thanks for your help :).
Best Regards.
Toni Barth

Re: Recommended way of excluding certain elements from navigation

Toni Barth
 

Hi,

thanks, those questions help alot.

Am 03.09.2019 um 20:37 schrieb James Scholes:
It would help to know more about the application.  You've given tons
of detail about what you've tried on the NVDA side, but none about
what else you're working with.

• Is this an application you're developing or helping to develop?

Nope, i'm just trying to enhance its accessibility by developing an
add-on for NVDA.

The application itself is called Banking 4
(https://subsembly.com/banking4.html).


• Is it a traditional desktop application, or a web app inside a
desktop container?

Its a traditional desktop application (at least it looks like it).


• If the former, what sort of UI framework and programming environment
is in use (e.g. Qt, .Net Framework with WPF, etc.)?
I actually don't know. It doesn't look like Qt or Java though. NVDA
itself recognizes the UI elements as IAccessible elements.


Thanks for your help.


Best Regards.


Toni Barth


Regards,

James Scholes

On 03/09/2019 at 7:15 pm, Toni Barth via Groups.Io wrote:
Hello,
because noone replied to my last post from a few days ago and I
accidentally used the wrong tag for my question, i'm sending my
previous message again down below.
i'm developing an add-on right now to enhance the usability of an
application. This application contains at least one table with
several cells, but some of those cells, even though they are
navigatable by NVDA, contain unimportant information, like the value
'None' or just an icon. I thus wanted to "hide" those cells for the
user, meaning that they shouldn't be able to navigate to them using
the tab key or arrow keys and tried several ways to do so.
I overlayed the table row and override _get_children(), removing the
certain children from the list, but I noticed that _get_children()
never seems to get executed.
I also tried adding states to the specific cells like
controlTypes.STATE_INVISIBLE or controlTypes.STATE_UNAVAILABLE, but
nothing helped.
I also tried moving the focus manually whenever the cell is focused
by using event_gainFocus(), but even this seems to mess up things
even further. Same goes for using redirectFocus and/or
_get_redirectFocus(). It properly redirects my focus to the next
cell, but the cursor still seems to be located in the cell
whatsoever, means whenever I press the right arrow key, i'll get the
same, second cell announced a second time.
Do you have an idea how to remove those cells from keyboard
navigation (not navigator, but at least from tab/arrow keys navigation)?
There must be an easy way to exclude certain elements from keyboard
navigation.
Thanks for your help :).
Best Regards.
Toni Barth

Screen Curtain: September 6th build, preparing for future NVDA releases #addonrelease

 

Hi all,

 

In about an hour from now Screen Curtain September 6th build will be released. This build is important because it includes a good news and a bad news (depending on how you view it):

 

  • Good news: Screen Curtain add-on is ready for NVDA 2019.3 (alpha form).
  • Bad news: this will be one of the last builds of this add-on.

 

As for this being a bad news for Screen Curtain add-on, not entirely a bad news: Screen Curtain add-on has found a new home, and that is latest NVDA alpha snapshot. As part of this transplantation, Leonard de Ruijter (the author behind routines in this add-on and allowing me to package his work as an add-on for field testing) rewrote major portions of screen curtain facility. Thus, if you are using latest NVDA 2019.3 alpha snapshot, today’s Screen Curtain add-on release will recognize this and not load itself.

 

As for today’s release being one of the last releases of Screen Curtain add-on: yes, although it won’t be until NVDA 2019.3 stable version is released that this add-on will be declared end of life. This is because there might be changes that will require me to adjust end of life strategy for this add-on. The repo will not be removed from my GitHub so people can study it once the add-on ceases active development.

 

Thanks.

Cheers,

Joseph

Question about screen curtain, review comments

Noelia Ruiz
 

@leonardder and @feerrenrut :

def script_toggleScreenCurtain(self, gesture):
message = None
try:
screenCurtainName = "screenCurtain"
if not vision.getProviderClass(screenCurtainName).canStart():
# Translators: Reported when the screen curtain is not available.
message = _("Screen curtain not available")
return

If return, I think that the message won't be reported if screen curtain is not available.

Also:

# Translators: Reported when the screen curtain could not be enabled.
message = _("Could not enable screen curtain")
return

Sorry if I'm missing something.
My tests are successful toggling screen curtain, so I can't check what happens when this can't be done.
Kind regards

Re: Screen Curtain: September 6th build, preparing for future NVDA releases #addonrelease

Brian's Mail list account
 

So it will still work where it worked before, so no issues to anybody then?
Not that I use it myself as my puters do not have a screen in the first place!
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users

----- Original Message -----
From: "Joseph Lee" <@joslee>
To: <nvda-devel@groups.io>
Sent: Friday, September 06, 2019 8:35 PM
Subject: [nvda-devel] Screen Curtain: September 6th build, preparing for future NVDA releases #AddonRelease


Hi all,



In about an hour from now Screen Curtain September 6th build will be
released. This build is important because it includes a good news and a bad
news (depending on how you view it):



* Good news: Screen Curtain add-on is ready for NVDA 2019.3 (alpha
form).
* Bad news: this will be one of the last builds of this add-on.



As for this being a bad news for Screen Curtain add-on, not entirely a bad
news: Screen Curtain add-on has found a new home, and that is latest NVDA
alpha snapshot. As part of this transplantation, Leonard de Ruijter (the
author behind routines in this add-on and allowing me to package his work as
an add-on for field testing) rewrote major portions of screen curtain
facility. Thus, if you are using latest NVDA 2019.3 alpha snapshot, today's
Screen Curtain add-on release will recognize this and not load itself.



As for today's release being one of the last releases of Screen Curtain
add-on: yes, although it won't be until NVDA 2019.3 stable version is
released that this add-on will be declared end of life. This is because
there might be changes that will require me to adjust end of life strategy
for this add-on. The repo will not be removed from my GitHub so people can
study it once the add-on ceases active development.



Thanks.

Cheers,

Joseph



Re: Question about screen curtain, review comments

 

Hey Noelia,


Thanks for pointing this out. It actually works as expected, but I will explain why.


The script uses a try/finally block. I think the following code is pretty explanatory when executed:


def test():
    try:
        return(42)
    finally:
        print("hello!")

You will notice that when executing test(), both 42 and Hello are printed. In short, return brings you straight to the finally block, and I think the function will first execute the finally block and then returns.


Regards,

Leonard


On 7-9-2019 11:17, Noelia Ruiz wrote:
@leonardder and @feerrenrut :

def script_toggleScreenCurtain(self, gesture):
        message = None
        try:
            screenCurtainName = "screenCurtain"
            if not vision.getProviderClass(screenCurtainName).canStart():
                # Translators: Reported when the screen curtain is not available.
                message = _("Screen curtain not available")
                return

If return, I think that the message won't be reported if screen curtain is not available.

Also:

# Translators: Reported when the screen curtain could not be enabled.
                    message = _("Could not enable screen curtain")
                    return

Sorry if I'm missing something.
My tests are successful toggling screen curtain, so I can't check what happens when this can't be done.
Kind regards




Re: Question about screen curtain, review comments

Noelia Ruiz
 

Great work and excellent explanation!
Previously, I tried to test something similar in the Python console and for any reason this failed, but it works perfectly in a global plugin using ui.message().
In the console I got this: SyntaxError: 'return' outside function
But this works and expected. Thanks for all your work and my best wishes.

Regards

El 07/09/2019 a las 12:40, Leonard de Ruijter escribió:
Hey Noelia,
Thanks for pointing this out. It actually works as expected, but I will explain why.
The script uses a try/finally block. I think the following code is pretty explanatory when executed:
def test():
    try:
        return(42)
    finally:
        print("hello!")
You will notice that when executing test(), both 42 and Hello are printed. In short, return brings you straight to the finally block, and I think the function will first execute the finally block and then returns.
Regards,
Leonard
On 7-9-2019 11:17, Noelia Ruiz wrote:
@leonardder and @feerrenrut :

def script_toggleScreenCurtain(self, gesture):
        message = None
        try:
            screenCurtainName = "screenCurtain"
            if not vision.getProviderClass(screenCurtainName).canStart():
                # Translators: Reported when the screen curtain is not available.
                message = _("Screen curtain not available")
                return

If return, I think that the message won't be reported if screen curtain is not available.

Also:

# Translators: Reported when the screen curtain could not be enabled.
                    message = _("Could not enable screen curtain")
                    return

Sorry if I'm missing something.
My tests are successful toggling screen curtain, so I can't check what happens when this can't be done.
Kind regards



Re: Question about screen curtain, review comments

Noelia Ruiz
 

Obviously, the function works well in the console too. It was my mistake since I didn't use a function to encapsulate code.
Thanks.

El 07/09/2019 a las 13:14, Noelia Ruiz via Groups.Io escribió:
Great work and excellent explanation!
Previously, I tried to test something similar in the Python console and for any reason this failed, but it works perfectly in a global plugin using ui.message().
In the console I got this: SyntaxError: 'return' outside function
But this works and expected. Thanks for all your work and my best wishes.
Regards
El 07/09/2019 a las 12:40, Leonard de Ruijter escribió:
Hey Noelia,


Thanks for pointing this out. It actually works as expected, but I will explain why.


The script uses a try/finally block. I think the following code is pretty explanatory when executed:


def test():
     try:
         return(42)
     finally:
         print("hello!")

You will notice that when executing test(), both 42 and Hello are printed. In short, return brings you straight to the finally block, and I think the function will first execute the finally block and then returns.


Regards,

Leonard


On 7-9-2019 11:17, Noelia Ruiz wrote:
@leonardder and @feerrenrut :

def script_toggleScreenCurtain(self, gesture):
        message = None
        try:
            screenCurtainName = "screenCurtain"
            if not vision.getProviderClass(screenCurtainName).canStart():
                # Translators: Reported when the screen curtain is not available.
                message = _("Screen curtain not available")
                return

If return, I think that the message won't be reported if screen curtain is not available.

Also:

# Translators: Reported when the screen curtain could not be enabled.
                    message = _("Could not enable screen curtain")
                    return

Sorry if I'm missing something.
My tests are successful toggling screen curtain, so I can't check what happens when this can't be done.
Kind regards



Re: Question about screen curtain, review comments

 

Thanks!


On 7-9-2019 13:14, Noelia Ruiz wrote:
Great work and excellent explanation!
Previously, I tried to test something similar in the Python console and for any reason this failed, but it works perfectly in a global plugin using ui.message().
In the console I got this: SyntaxError: 'return' outside function
But this works and expected. Thanks for all your work and my best wishes.

Regards

El 07/09/2019 a las 12:40, Leonard de Ruijter escribió:
Hey Noelia,


Thanks for pointing this out. It actually works as expected, but I will explain why.


The script uses a try/finally block. I think the following code is pretty explanatory when executed:


def test():
     try:
         return(42)
     finally:
         print("hello!")

You will notice that when executing test(), both 42 and Hello are printed. In short, return brings you straight to the finally block, and I think the function will first execute the finally block and then returns.


Regards,

Leonard


On 7-9-2019 11:17, Noelia Ruiz wrote:
@leonardder and @feerrenrut :

def script_toggleScreenCurtain(self, gesture):
        message = None
        try:
            screenCurtainName = "screenCurtain"
            if not vision.getProviderClass(screenCurtainName).canStart():
                # Translators: Reported when the screen curtain is not available.
                message = _("Screen curtain not available")
                return

If return, I think that the message won't be reported if screen curtain is not available.

Also:

# Translators: Reported when the screen curtain could not be enabled.
                    message = _("Could not enable screen curtain")
                    return

Sorry if I'm missing something.
My tests are successful toggling screen curtain, so I can't check what happens when this can't be done.
Kind regards








WWAHost: bring back browse mode for Store apps in Windows 8.x?

 

Hi all,

 

I’m wrestling with the following GitHub issue:

https://github.com/nvaccess/nvda/issues/9117

 

Background: Windows 8.x introduced hosted web apps inside a dedicated app called WWA Host. In 2012, Mick created an app module that tells NVDA that this is an app, not a browse mode document. Although it brought peace to web apps support in Windows 8.x, it does not represent reality in 2019 where we have more web apps popping up on Microsoft Store on Windows 10. In fact, progressive web apps (PWA’s) on Windows 10 are really interfaces to web services that behave like native apps, and they use EdgeHTML as rendering engine, thereby making app role coercion fall apart.

 

I bring this to your attention for a number of reasons. First, I think we need to think about current reality when it comes to supporting web apps hosted inside wwahost.exe, as they are web apps more than native apps from the old days. Second, we can now use a flag in app modules to specify that an app should not be using browse mode at startup, thereby allowing older apps to appear to be native apps to users. Third, I’m working on a pull request that will allow people to write dedicated app modules for web apps hosted inside WWA Host, and based on current pull request work, app role coercion fails because NVDA will load the app module associated with the app in use without loading the app module class.

 

Therefore I’m in favor of bringing back browse mode for apps hosted on WWA Host, and let individual app modules choose whether they wish to disable browse mode. This is more applicable on Windows 8.x as most apps (at least older ones) are really a hybrid of native app and a web service, given they are hosted inside wwahost.exe (written with web in mind); on Windows 10, no change is necessary as PWA’s hosted inside wwahost.exe are meant to be web apps, although the flag to disable browse mode may come in handy for some.

 

Comments are appreciated.

Cheers,

Joseph

Superantispyware button names no longer read

Brian's Mail list account
 

Hi I may have mentioned this before, but in the Python 3 Alpha branch the buttons mostly say button on thee main page of this software when focus is moved to it, but on the latest stable the buttons say what they do.
I know this piece of software can be a pain at times, but generally it works if you launch it from the tray via the update menu item, and then click OK when it is done and then the page reads as focus is properly passed to it.
As I say. I wondered how come this should be so different in the Alpha snap. I guess I could cobble together a ticket with logs etc, but the look of the logs apart from the spoken words seems to be the same.
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users

Re: Superantispyware button names no longer read

James Scholes
 

The log content may be the same, but the primary reason to file a ticket is to allow NVDA contributors to track and prioritize. If there's a bug (which there clearly is), please file an issue.

Regards,

James Scholes

On 09/09/2019 at 8:26 am, Brian's Mail list account via Groups.Io wrote:
Hi I may have mentioned this before, but in the Python 3 Alpha branch the buttons mostly say button on thee main page of this software when focus is moved to it, but on the latest stable the buttons say what they do.
I know this piece of software can be a pain at times, but generally it works if you launch it from the tray via the update   menu item, and then click OK when it  is done and then the page reads as focus is properly passed to it.
As I say. I wondered how come this should be so different in the Alpha snap. I guess I could cobble together a ticket with logs etc, but the look of the logs apart from the  spoken words seems to be the same.
Brian
bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users

Re: Superantispyware button names no longer read

Ralf Kefferpuetz
 

I can't confirm that. Using latest Win10, latest SuperAntiSpyware and latest NVDA Alpha SuperAntiSpyware reads all
buttons as it did all the time.

Cheers,
Ralf

-----Original Message-----
From: nvda-devel@groups.io <nvda-devel@groups.io> On Behalf Of Brian's Mail list account via Groups.Io
Sent: Montag, 9. September 2019 09:26
To: NVDA Dev list on groups.io <nvda-devel@groups.io>
Subject: [nvda-devel] Superantispyware button names no longer read

Hi I may have mentioned this before, but in the Python 3 Alpha branch the buttons mostly say button on thee main page of
this software when focus is moved to it, but on the latest stable the buttons say what they do.
I know this piece of software can be a pain at times, but generally it works
if you launch it from the tray via the update menu item, and then click OK
when it is done and then the page reads as focus is properly passed to it.
As I say. I wondered how come this should be so different in the Alpha snap. I guess I could cobble together a ticket
with logs etc, but the look of the logs apart from the spoken words seems to be the same.
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users

Re: Superantispyware button names no longer read

Brian's Mail list account
 

This is windows 7, and 2019.2 reads them but not in the alpha snaps, it just says button.
Weird.

Maybe its uia is more capable in 10 than 7, and the fall back does not work so well in apalphas?
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users

----- Original Message -----
From: "Ralf Kefferpuetz" <ralf.kefferpuetz@...>
To: <nvda-devel@groups.io>
Sent: Monday, September 09, 2019 11:48 AM
Subject: Re: [nvda-devel] Superantispyware button names no longer read


I can't confirm that. Using latest Win10, latest SuperAntiSpyware and latest NVDA Alpha SuperAntiSpyware reads all
buttons as it did all the time.

Cheers,
Ralf
-----Original Message-----
From: nvda-devel@groups.io <nvda-devel@groups.io> On Behalf Of Brian's Mail list account via Groups.Io
Sent: Montag, 9. September 2019 09:26
To: NVDA Dev list on groups.io <nvda-devel@groups.io>
Subject: [nvda-devel] Superantispyware button names no longer read

Hi I may have mentioned this before, but in the Python 3 Alpha branch the buttons mostly say button on thee main page of
this software when focus is moved to it, but on the latest stable the buttons say what they do.
I know this piece of software can be a pain at times, but generally it works
if you launch it from the tray via the update menu item, and then click OK
when it is done and then the page reads as focus is properly passed to it.
As I say. I wondered how come this should be so different in the Alpha snap. I guess I could cobble together a ticket
with logs etc, but the look of the logs apart from the spoken words seems to be the same.
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users






Re: Superantispyware button names no longer read

Lukasz Golonka
 

I cannot confirm on Windows 7 x64. NVDA reads all buttons. Have your
tried with a clean config without any add-ons etc?

--
Regards
Lukasz

On Mon, 9 Sep 2019 15:36:03 +0100
"Brian's Mail list account via Groups.Io" <bglists=blueyonder.co.uk@groups.io> wrote:

This is windows 7, and 2019.2 reads them but not in the alpha snaps, it just says button.
Weird.

Maybe its uia is more capable in 10 than 7, and the fall back does not work so well in apalphas?
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users
----- Original Message ----- From: "Ralf Kefferpuetz" <ralf.kefferpuetz@...>
To: <nvda-devel@groups.io>
Sent: Monday, September 09, 2019 11:48 AM
Subject: Re: [nvda-devel] Superantispyware button names no longer read


I can't confirm that. Using latest Win10, latest SuperAntiSpyware and
latest NVDA Alpha SuperAntiSpyware reads all
buttons as it did all the time.

Cheers,
Ralf
-----Original Message-----
From: nvda-devel@groups.io <nvda-devel@groups.io> On Behalf Of Brian's
Mail list account via Groups.Io
Sent: Montag, 9. September 2019 09:26
To: NVDA Dev list on groups.io <nvda-devel@groups.io>
Subject: [nvda-devel] Superantispyware button names no longer read

Hi I may have mentioned this before, but in the Python 3 Alpha branch the
buttons mostly say button on thee main page of
this software when focus is moved to it, but on the latest stable the
buttons say what they do.
I know this piece of software can be a pain at times, but generally it
works
if you launch it from the tray via the update menu item, and then click
OK
when it is done and then the page reads as focus is properly passed to
it.
As I say. I wondered how come this should be so different in the Alpha
snap. I guess I could cobble together a ticket
with logs etc, but the look of the logs apart from the spoken words seems
to be the same.
Brian

bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users