Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don
Hi Javi and users of Explorer Enhancements, In 2021, a discussion arose on this forum about a conflict between two add-ons – Windows App Essentials and Explorer Enhancements – regarding bundling of File Explorer app module (explorer.py) in our add-ons. One of the results was a solution where Explorer Enhancements can add additional events after detecting the presence of the app module from another add-on. Recently I found myself patching File Explorer module from NVDA Core to add various Windows 11 enhancements, the latest being touch and mouse support for upcoming Windows 11 22H2 features. Also, while not strictly a patching routine, I added an overlay class in the global plugin portion of Windows App Essentials to introduce enhancements for taskbar icons (position announcements being one of them). Although taskbar icons are defined in File Explorer, I’m using the global plugin route in order to avoid conflicts with Javi’s Explorer Enhancements. After looking at Javi’s code and comparing it with that of NVDA Core, I realized that both add-ons can use a single app module for File Explorer (NVDA Core does not define name change and focus entered event in File Explorer, and Windows App Essentials do not add these events either). Therefore, if Javi is willing and the community agrees, I would like to incorporate Javi’s app module into Windows App Essentials. This resolves the app module conflict, and if the code is ready, submit empty folder announcement to NV Access as a pull request, likely targeting 2023.2 at the earliest (Javi, if you want, you can also submit a pull request asking NV Access to incorporate your File Explorer app module changes to NVDA Core). If the proposal is accepted, I’ll add File Explorer enhancements to Windows App Essentials in February at the earliest. By the way, the last tested version recorded in Explorer Enhancements manifest is 2021.3 (hope the add-on is not abandoned at the moment…). Cheers, Joseph |
|
Hi, By the way, “this folder is empty” announcement is not heard when opening an empty folder in Windows 11 (testing with 11 22H2 build 22621/22623 beta) but will be heard when pressing Tab afterwards. Also, it is not heard in recent Windows 10 releases either (tested with 22H2/build 19045). The expectation is that NVDA will announce “this folder is empty” once the empty folder opens and the list view gains focus, but it is not announced because NVDA cannot retrieve a UIA representation of the empty list view element (exceptions are recorded in dev info); what’s interesting is that it is an IAccessible object that raises focus entered event. Name change event has no effect either (based on testing so far). Therefore, I’m afraid a different approach should be taken to announce “this folder is empty,” or if Javi says yes, declare this add-on as legacy and abandoned (I know this is an experimental add-on, but we cannot forget the hard work done by authors). Thanks. Cheers, Joseph
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Joseph Lee via groups.io
Sent: Saturday, January 21, 2023 5:26 AM To: nvda-addons@nvda-addons.groups.io Subject: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don
Hi Javi and users of Explorer Enhancements, In 2021, a discussion arose on this forum about a conflict between two add-ons – Windows App Essentials and Explorer Enhancements – regarding bundling of File Explorer app module (explorer.py) in our add-ons. One of the results was a solution where Explorer Enhancements can add additional events after detecting the presence of the app module from another add-on. Recently I found myself patching File Explorer module from NVDA Core to add various Windows 11 enhancements, the latest being touch and mouse support for upcoming Windows 11 22H2 features. Also, while not strictly a patching routine, I added an overlay class in the global plugin portion of Windows App Essentials to introduce enhancements for taskbar icons (position announcements being one of them). Although taskbar icons are defined in File Explorer, I’m using the global plugin route in order to avoid conflicts with Javi’s Explorer Enhancements. After looking at Javi’s code and comparing it with that of NVDA Core, I realized that both add-ons can use a single app module for File Explorer (NVDA Core does not define name change and focus entered event in File Explorer, and Windows App Essentials do not add these events either). Therefore, if Javi is willing and the community agrees, I would like to incorporate Javi’s app module into Windows App Essentials. This resolves the app module conflict, and if the code is ready, submit empty folder announcement to NV Access as a pull request, likely targeting 2023.2 at the earliest (Javi, if you want, you can also submit a pull request asking NV Access to incorporate your File Explorer app module changes to NVDA Core). If the proposal is accepted, I’ll add File Explorer enhancements to Windows App Essentials in February at the earliest. By the way, the last tested version recorded in Explorer Enhancements manifest is 2021.3 (hope the add-on is not abandoned at the moment…). Cheers, Joseph |
|
Alberto Buffolino
Joseph Lee, il 21/1/2023, ha scritto:
Therefore, if Javi is willing and the community agrees, I would like to incorporate Javi’s app module into Windows App Essentials. This resolves the app module conflict, and if the code is ready, submit empty folder announcement to NV Access as a pull requestAlberto: Hi Joseph, some time ago I expanded ColumnsReview feature to announce empty folders, to include Explorer too. Now I don't remember all details, but I based the empty-folder detection to a solution a bit more reliable than one adopted by explorerEnhancements, that in my experience did not worked so often (even with Ribbons enabled as usual, if I remember well). Sure, more reliable is not perfect... among others, test situations are cycling with tab and shift+tab in folder pane (where my add-on has still any glitch), open and close menu, switch with alt+tab from and again to folder pane. To make ColumnsReview feature working, though, I had to ask (not force) user to uninstall Javi's add-on, as I said here: https://nvda-addons.groups.io/g/nvda-addons/topic/91457018 but obviously I cannot ask a such thing for Windows App Essentials... Alberto |
|
Hi, Jumped to conclusions early: “this folder is empty” is not announced if selective UIA event registration is enabled (this is the case by default on Windows 11 22H2 and later). Resolving this will require asking NVDA to listen to events on the list view object as soon as the empty folder is opened. By the way, Narrator does not announce empty folder text either (both on Windows 10 and 11), and this fact makes me somewhat hesitant (now) to take the app module as is. Cheers, Joseph
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Joseph Lee via groups.io
Sent: Saturday, January 21, 2023 5:45 AM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don
Hi, By the way, “this folder is empty” announcement is not heard when opening an empty folder in Windows 11 (testing with 11 22H2 build 22621/22623 beta) but will be heard when pressing Tab afterwards. Also, it is not heard in recent Windows 10 releases either (tested with 22H2/build 19045). The expectation is that NVDA will announce “this folder is empty” once the empty folder opens and the list view gains focus, but it is not announced because NVDA cannot retrieve a UIA representation of the empty list view element (exceptions are recorded in dev info); what’s interesting is that it is an IAccessible object that raises focus entered event. Name change event has no effect either (based on testing so far). Therefore, I’m afraid a different approach should be taken to announce “this folder is empty,” or if Javi says yes, declare this add-on as legacy and abandoned (I know this is an experimental add-on, but we cannot forget the hard work done by authors). Thanks. Cheers, Joseph
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Joseph Lee via groups.io
Hi Javi and users of Explorer Enhancements, In 2021, a discussion arose on this forum about a conflict between two add-ons – Windows App Essentials and Explorer Enhancements – regarding bundling of File Explorer app module (explorer.py) in our add-ons. One of the results was a solution where Explorer Enhancements can add additional events after detecting the presence of the app module from another add-on. Recently I found myself patching File Explorer module from NVDA Core to add various Windows 11 enhancements, the latest being touch and mouse support for upcoming Windows 11 22H2 features. Also, while not strictly a patching routine, I added an overlay class in the global plugin portion of Windows App Essentials to introduce enhancements for taskbar icons (position announcements being one of them). Although taskbar icons are defined in File Explorer, I’m using the global plugin route in order to avoid conflicts with Javi’s Explorer Enhancements. After looking at Javi’s code and comparing it with that of NVDA Core, I realized that both add-ons can use a single app module for File Explorer (NVDA Core does not define name change and focus entered event in File Explorer, and Windows App Essentials do not add these events either). Therefore, if Javi is willing and the community agrees, I would like to incorporate Javi’s app module into Windows App Essentials. This resolves the app module conflict, and if the code is ready, submit empty folder announcement to NV Access as a pull request, likely targeting 2023.2 at the earliest (Javi, if you want, you can also submit a pull request asking NV Access to incorporate your File Explorer app module changes to NVDA Core). If the proposal is accepted, I’ll add File Explorer enhancements to Windows App Essentials in February at the earliest. By the way, the last tested version recorded in Explorer Enhancements manifest is 2021.3 (hope the add-on is not abandoned at the moment…). Cheers, Joseph |
|
Hi,
toggle quoted message
Show quoted text
I see. I wonder if this works with selective UIA event registration on - I doubt it but won't hurt to try. Cheers, Joseph -----Original Message-----
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Alberto Buffolino Sent: Saturday, January 21, 2023 6:04 AM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Joseph Lee, il 21/1/2023, ha scritto: Therefore, if Javi is willing and the community agrees, I would likeAlberto: Hi Joseph, some time ago I expanded ColumnsReview feature to announce empty folders, to include Explorer too. Now I don't remember all details, but I based the empty-folder detection to a solution a bit more reliable than one adopted by explorerEnhancements, that in my experience did not worked so often (even with Ribbons enabled as usual, if I remember well). Sure, more reliable is not perfect... among others, test situations are cycling with tab and shift+tab in folder pane (where my add-on has still any glitch), open and close menu, switch with alt+tab from and again to folder pane. To make ColumnsReview feature working, though, I had to ask (not force) user to uninstall Javi's add-on, as I said here: https://nvda-addons.groups.io/g/nvda-addons/topic/91457018 but obviously I cannot ask a such thing for Windows App Essentials... Alberto |
|
Hi,
toggle quoted message
Show quoted text
Result: it does work with event registration set to selective - it does result in double-speaking in Windows 11 somehow. There is a bug with Columns Review approach: File Explorer headers such as name and size cannot be navigated if focused on an empty folder due to focus movement - one must press NVDA+F2 and then press an arrow key. So based on these tests, it appears the proposal (bundling Javi's File Explorer app module with Windows App Essentials add-on) would not be quite effective. Thankfully, since there is a solution to allow a stack of app modules with the same name to be loaded and since my add-on will not override name change nor focus entered event, I'll go ahead and bundle File Explorer app module with my add-on. Cheers, Jsoeph -----Original Message-----
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Joseph Lee via groups.io Sent: Saturday, January 21, 2023 6:34 AM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Hi, I see. I wonder if this works with selective UIA event registration on - I doubt it but won't hurt to try. Cheers, Joseph -----Original Message----- From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Alberto Buffolino Sent: Saturday, January 21, 2023 6:04 AM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Joseph Lee, il 21/1/2023, ha scritto: Therefore, if Javi is willing and the community agrees, I would likeAlberto: Hi Joseph, some time ago I expanded ColumnsReview feature to announce empty folders, to include Explorer too. Now I don't remember all details, but I based the empty-folder detection to a solution a bit more reliable than one adopted by explorerEnhancements, that in my experience did not worked so often (even with Ribbons enabled as usual, if I remember well). Sure, more reliable is not perfect... among others, test situations are cycling with tab and shift+tab in folder pane (where my add-on has still any glitch), open and close menu, switch with alt+tab from and again to folder pane. To make ColumnsReview feature working, though, I had to ask (not force) user to uninstall Javi's add-on, as I said here: https://nvda-addons.groups.io/g/nvda-addons/topic/91457018 but obviously I cannot ask a such thing for Windows App Essentials... Alberto |
|
Javi Domínguez
Hello, Joseph.
I really had this addon a little abandoned. You can take code
that you find useful and add it to Windows App Essentials if you
want. Greetings
Javi Domínguez
El 21/01/2023 a las 14:26, Joseph Lee
escribió:
|
|
Hi Javi, Thanks for considering this proposal. I’ll do as you suggested – Explorer Enhancements will be part of Windows App Essentials – likely between March and June 2023. It is likely that I’ll take the entire add-on, mostly the app module portion with you receiving credit for code coming from your add-on. I’ll also look at what Alberto wrote in Columns Review so empty folder announcement can be made with selective UIA registration enabled, and hopefully propose a pull request or perhaps mentor someone (I’ve been wanting to mentor someone through NVDA pull requests for some time, and I think this is a good opportunity to do it). Thanks for your permission and your hard work on Explorer Enhancements add-on. Note to others: in case you need justifications for this proposal, the reason for incorporating Explorer Enhancements to Windows App Essentials is because File Explorer (explorer.exe) is a major component of Windows, and it can receive some more love from NVDA. I just committed a series of changes to the latter add-on that will prepare it to receive Javi’s code and to properly support detection of taskbar icons. In addition to empty folder announcement, this will bring two significant changes: announcing rearranged taskbar icons when Alt+Shift+left/right arrow keys are used to rearrange taskbar icons in Windows 11, and announcing taskbar icon position in at least Windows 11 (backporting this to Windows 10 will require some NVDA object inheritance tricks; I cannot guarantee that this will be made available to older Windows releases, or rather, let’s just say that I plan NOT to test position announcement changes on anything older than Windows 10; the immediate impact is that position announcements for taskbar icons won’t be made available to Windows 7 and 8.x for the reason discussed for many months now). Cheers, Joseph
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Javi Domínguez
Sent: Saturday, January 21, 2023 12:41 PM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don
Hello, Joseph.
I really had this addon a little abandoned. You can take code that you find useful and add it to Windows App Essentials if you want. Greetings El 21/01/2023 a las 14:26, Joseph Lee escribió:
|
|
Day Garwood
Hi Joseph, While we're on the subject of mentoring. I'd love to be more involved with NVDA and/or addon development, but I just can't seem to learn under my own steam, no matter what books or documents I read. Python coding? Easy. Start getting involved with PIP, and my world falls apart. Add things like Github and Scons into the equation, and my brain almost does a complete reset. I've often thought that NVDA might be my gateway into other types
of project-based programming (those that aren't just cobbled away
under scripting environments), but at the moment I feel like I'm
at a locked gate trying to pick the lock with my fingers. Lately I'm coming to realise that one-to-one tuition works a lot
better for me than books and manuals that make lots of
assumptions, or group based learning that just makes me feel slow
and idiotic. Not sure what your thoughts are or what you can suggest. Cheers.
On 21/01/2023 21:05, Joseph Lee wrote:
|
|
Hi, I see – I am lost for words regarding the situation you are in. I imagine how Git and SCons can be overwhelming, considering that they are needed for effective NVDA development, and to some extent, contributions. There are other ways to contribute to NVDA world:
Hope this helps (P.S. I’m stil investigating File Explorer/empty folder announcement, and it is increasingly becoming clear that incorporating Javi’s code into Windows App Essentials may not be a smart idea at this time; I just realized that it could add stress as the ultimate issue has to do with focus event not being fired by the items list when a folder is indeed empty; I know that folks wanted Microsoft to resolve this, but since it happens with Windows 11, I doubt it will be fixed; I’m also worried about selective UIA event registration and its impact on this one). Cheers, Joseph
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Day Garwood
Sent: Saturday, January 21, 2023 1:27 PM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don
Hi Joseph, While we're on the subject of mentoring. I'd love to be more involved with NVDA and/or addon development, but I just can't seem to learn under my own steam, no matter what books or documents I read. Python coding? Easy. Start getting involved with PIP, and my world falls apart. Add things like Github and Scons into the equation, and my brain almost does a complete reset. I've often thought that NVDA might be my gateway into other types of project-based programming (those that aren't just cobbled away under scripting environments), but at the moment I feel like I'm at a locked gate trying to pick the lock with my fingers. Lately I'm coming to realise that one-to-one tuition works a lot better for me than books and manuals that make lots of assumptions, or group based learning that just makes me feel slow and idiotic. Not sure what your thoughts are or what you can suggest. Cheers.
On 21/01/2023 21:05, Joseph Lee wrote:
|
|
Day Garwood
Hi Joseph, My mind is much more geared towards creativity than, I guess
literacy, so I think coding's probably best for me. I just need
the right help to get there. Cheers. On 21/01/2023 21:48, Joseph Lee wrote:
|
|
Hi all, Update: resolved no “this folder is empty” announcement – it requires using a combination of name change event handler and UIA tree traversal, similar in principle to status bar retrieval in File Explorer. If things go well (if I can resolve double speaking in some situations), I might be able to put this in for add-on version 23.02 or 23.03. Essentially, name change event from Javi’s ad-on might be included with tweaks (by the way, the solution also works with selective UIA event registration on). Cheers, Joseph
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Joseph Lee via groups.io
Sent: Saturday, January 21, 2023 1:49 PM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don
Hi, I see – I am lost for words regarding the situation you are in. I imagine how Git and SCons can be overwhelming, considering that they are needed for effective NVDA development, and to some extent, contributions. There are other ways to contribute to NVDA world:
Hope this helps (P.S. I’m stil investigating File Explorer/empty folder announcement, and it is increasingly becoming clear that incorporating Javi’s code into Windows App Essentials may not be a smart idea at this time; I just realized that it could add stress as the ultimate issue has to do with focus event not being fired by the items list when a folder is indeed empty; I know that folks wanted Microsoft to resolve this, but since it happens with Windows 11, I doubt it will be fixed; I’m also worried about selective UIA event registration and its impact on this one). Cheers, Joseph
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Day Garwood
Hi Joseph, While we're on the subject of mentoring. I'd love to be more involved with NVDA and/or addon development, but I just can't seem to learn under my own steam, no matter what books or documents I read. Python coding? Easy. Start getting involved with PIP, and my world falls apart. Add things like Github and Scons into the equation, and my brain almost does a complete reset. I've often thought that NVDA might be my gateway into other types of project-based programming (those that aren't just cobbled away under scripting environments), but at the moment I feel like I'm at a locked gate trying to pick the lock with my fingers. Lately I'm coming to realise that one-to-one tuition works a lot better for me than books and manuals that make lots of assumptions, or group based learning that just makes me feel slow and idiotic. Not sure what your thoughts are or what you can suggest. Cheers.
On 21/01/2023 21:05, Joseph Lee wrote:
|
|
Luke Davis
Joseph Lee wrote:
If things go well (if I can resolve double speaking in some situations), I might be able to put this inDepending on how much is double spoken, I suspect people would rather have the feature sooner with double speaking, than not have it or have it much later. NVDA is known for being overly verbose as it is, so a bit of double speak shouldn't be that out of the ordinary. Luke |
|
Hi,
toggle quoted message
Show quoted text
I think part of this has to do with events and timing - tracking it at the moment. Part of the decision is which code base to use: * 23.02 (internally codenamed "copper 4 refresh" and "brass"): File Explorer app module is not included with the add-on, so an extra step must be taken inside the global plugin portion to get the resolution to work. I'm about to freeze the code base for this version - only major changes from Insider Preview builds will be added to 23.02; in some ways, "empty folder" announcement is going to be the last thing added. * 23.03 (internally codenamed "zinc 1"): includes File Explorer app module. This version is scheduled to be released by end of February or early March and this is the version under active development (anything can go in there). Cheers, Joseph -----Original Message-----
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Luke Davis Sent: Saturday, January 21, 2023 5:20 PM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Joseph Lee wrote: If things go well (if I can resolve double speaking in someDepending on how much is double spoken, I suspect people would rather have the feature sooner with double speaking, than not have it or have it much later. NVDA is known for being overly verbose as it is, so a bit of double speak shouldn't be that out of the ordinary. Luke |
|
Hi all,
toggle quoted message
Show quoted text
Good news - the issue where NVDA would not say "this folder is empty" in File Explorer will be resolved as part of Windows App Essentials 23.02. Cheers, Joseph -----Original Message-----
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Joseph Lee via groups.io Sent: Saturday, January 21, 2023 6:05 PM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Hi, I think part of this has to do with events and timing - tracking it at the moment. Part of the decision is which code base to use: * 23.02 (internally codenamed "copper 4 refresh" and "brass"): File Explorer app module is not included with the add-on, so an extra step must be taken inside the global plugin portion to get the resolution to work. I'm about to freeze the code base for this version - only major changes from Insider Preview builds will be added to 23.02; in some ways, "empty folder" announcement is going to be the last thing added. * 23.03 (internally codenamed "zinc 1"): includes File Explorer app module. This version is scheduled to be released by end of February or early March and this is the version under active development (anything can go in there). Cheers, Joseph -----Original Message----- From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Luke Davis Sent: Saturday, January 21, 2023 5:20 PM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Joseph Lee wrote: If things go well (if I can resolve double speaking in someDepending on how much is double spoken, I suspect people would rather have the feature sooner with double speaking, than not have it or have it much later. NVDA is known for being overly verbose as it is, so a bit of double speak shouldn't be that out of the ordinary. Luke |
|
Brian's Mail list account
This issue in Windows and nvda is not new, I don't ever remember it working. I tended to just try cursoring and if nothing happened then it was empty.
toggle quoted message
Show quoted text
Its interesting that in Windows 7 at least if in the folders view, you get told a folder is empty. Brian -- bglists@... Sent via blueyonder.(Virgin media) Please address personal E-mail to:- briang1@..., putting 'Brian Gaff' in the display name field. ----- Original Message -----
From: "Joseph Lee" <joseph.lee22590@...> To: <nvda-addons@nvda-addons.groups.io> Sent: Saturday, January 21, 2023 2:26 PM Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Hi, Jumped to conclusions early: "this folder is empty" is not announced if selective UIA event registration is enabled (this is the case by default on Windows 11 22H2 and later). Resolving this will require asking NVDA to listen to events on the list view object as soon as the empty folder is opened. By the way, Narrator does not announce empty folder text either (both on Windows 10 and 11), and this fact makes me somewhat hesitant (now) to take the app module as is. Cheers, Joseph From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Joseph Lee via groups.io Sent: Saturday, January 21, 2023 5:45 AM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Hi, By the way, "this folder is empty" announcement is not heard when opening an empty folder in Windows 11 (testing with 11 22H2 build 22621/22623 beta) but will be heard when pressing Tab afterwards. Also, it is not heard in recent Windows 10 releases either (tested with 22H2/build 19045). The expectation is that NVDA will announce "this folder is empty" once the empty folder opens and the list view gains focus, but it is not announced because NVDA cannot retrieve a UIA representation of the empty list view element (exceptions are recorded in dev info); what's interesting is that it is an IAccessible object that raises focus entered event. Name change event has no effect either (based on testing so far). Therefore, I'm afraid a different approach should be taken to announce "this folder is empty," or if Javi says yes, declare this add-on as legacy and abandoned (I know this is an experimental add-on, but we cannot forget the hard work done by authors). Thanks. Cheers, Joseph From: nvda-addons@nvda-addons.groups.io <mailto:nvda-addons@nvda-addons.groups.io> <nvda-addons@nvda-addons.groups.io <mailto:nvda-addons@nvda-addons.groups.io> > On Behalf Of Joseph Lee via groups.io Sent: Saturday, January 21, 2023 5:26 AM To: nvda-addons@nvda-addons.groups.io <mailto:nvda-addons@nvda-addons.groups.io> Subject: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Hi Javi and users of Explorer Enhancements, In 2021, a discussion arose on this forum about a conflict between two add-ons - Windows App Essentials and Explorer Enhancements - regarding bundling of File Explorer app module (explorer.py) in our add-ons. One of the results was a solution where Explorer Enhancements can add additional events after detecting the presence of the app module from another add-on. Recently I found myself patching File Explorer module from NVDA Core to add various Windows 11 enhancements, the latest being touch and mouse support for upcoming Windows 11 22H2 features. Also, while not strictly a patching routine, I added an overlay class in the global plugin portion of Windows App Essentials to introduce enhancements for taskbar icons (position announcements being one of them). Although taskbar icons are defined in File Explorer, I'm using the global plugin route in order to avoid conflicts with Javi's Explorer Enhancements. After looking at Javi's code and comparing it with that of NVDA Core, I realized that both add-ons can use a single app module for File Explorer (NVDA Core does not define name change and focus entered event in File Explorer, and Windows App Essentials do not add these events either). Therefore, if Javi is willing and the community agrees, I would like to incorporate Javi's app module into Windows App Essentials. This resolves the app module conflict, and if the code is ready, submit empty folder announcement to NV Access as a pull request, likely targeting 2023.2 at the earliest (Javi, if you want, you can also submit a pull request asking NV Access to incorporate your File Explorer app module changes to NVDA Core). If the proposal is accepted, I'll add File Explorer enhancements to Windows App Essentials in February at the earliest. By the way, the last tested version recorded in Explorer Enhancements manifest is 2021.3 (hope the add-on is not abandoned at the moment.). Cheers, Joseph |
|
Hi,
toggle quoted message
Show quoted text
And it appears there is also a focus bug where NVDA will find itself stuck on a nonexistent list item once folder contents are gone in some cases (this might be a case of object cache not being refreshed). I had to borrow Javi's focus entered event in File Explorer to resolve this and rewrote the name change event in the process to seek help from a private method designed to detect empty folder text via UIA tree traversal. UI Automation works better on Windows 8.x and newer (or, in 2023, Windows 10 and 11). I eagerly look forward to a day when I will declare Windows App Essentials add-on as end of life, either because Microsoft resolved prominent bugs like the ones reported on File Explorer (close to 0 percent at this point), collapse after many all-night coding sessions, or as part of my parting gifts to the NVDA community. After teaching NVDA to work around a long-standing UIA focus bug in File Explorer (empty folder text), I once again remind myself that, at its core, Windows App Essentials add-on is a collection of workarounds to issues that should have been resolved in at least 2010's (don't get me started on shouting matches I had with Windows 11 user interface - it was not fun in July 2021 and still makes me nervous eighteen months later). And yes, this is me trying to control my anger and frustrations (after all, add-on authors are humans, not superheroes; folks who've known me long enough may recall how angry I can become when I do explode). Cheers, Joseph -----Original Message-----
From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Brian's Mail list account via groups.io Sent: Sunday, January 22, 2023 4:19 AM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don This issue in Windows and nvda is not new, I don't ever remember it working. I tended to just try cursoring and if nothing happened then it was empty. Its interesting that in Windows 7 at least if in the folders view, you get told a folder is empty. Brian -- bglists@... Sent via blueyonder.(Virgin media) Please address personal E-mail to:- briang1@..., putting 'Brian Gaff' in the display name field. ----- Original Message ----- From: "Joseph Lee" <joseph.lee22590@...> To: <nvda-addons@nvda-addons.groups.io> Sent: Saturday, January 21, 2023 2:26 PM Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Hi, Jumped to conclusions early: "this folder is empty" is not announced if selective UIA event registration is enabled (this is the case by default on Windows 11 22H2 and later). Resolving this will require asking NVDA to listen to events on the list view object as soon as the empty folder is opened. By the way, Narrator does not announce empty folder text either (both on Windows 10 and 11), and this fact makes me somewhat hesitant (now) to take the app module as is. Cheers, Joseph From: nvda-addons@nvda-addons.groups.io <nvda-addons@nvda-addons.groups.io> On Behalf Of Joseph Lee via groups.io Sent: Saturday, January 21, 2023 5:45 AM To: nvda-addons@nvda-addons.groups.io Subject: Re: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Hi, By the way, "this folder is empty" announcement is not heard when opening an empty folder in Windows 11 (testing with 11 22H2 build 22621/22623 beta) but will be heard when pressing Tab afterwards. Also, it is not heard in recent Windows 10 releases either (tested with 22H2/build 19045). The expectation is that NVDA will announce "this folder is empty" once the empty folder opens and the list view gains focus, but it is not announced because NVDA cannot retrieve a UIA representation of the empty list view element (exceptions are recorded in dev info); what's interesting is that it is an IAccessible object that raises focus entered event. Name change event has no effect either (based on testing so far). Therefore, I'm afraid a different approach should be taken to announce "this folder is empty," or if Javi says yes, declare this add-on as legacy and abandoned (I know this is an experimental add-on, but we cannot forget the hard work done by authors). Thanks. Cheers, Joseph From: nvda-addons@nvda-addons.groups.io <mailto:nvda-addons@nvda-addons.groups.io> <nvda-addons@nvda-addons.groups.io <mailto:nvda-addons@nvda-addons.groups.io> > On Behalf Of Joseph Lee via groups.io Sent: Saturday, January 21, 2023 5:26 AM To: nvda-addons@nvda-addons.groups.io <mailto:nvda-addons@nvda-addons.groups.io> Subject: [nvda-addons] Mostly for Javi (proposal): incorporating Explorer Enhancements to Windows App Essentils ad-don Hi Javi and users of Explorer Enhancements, In 2021, a discussion arose on this forum about a conflict between two add-ons - Windows App Essentials and Explorer Enhancements - regarding bundling of File Explorer app module (explorer.py) in our add-ons. One of the results was a solution where Explorer Enhancements can add additional events after detecting the presence of the app module from another add-on. Recently I found myself patching File Explorer module from NVDA Core to add various Windows 11 enhancements, the latest being touch and mouse support for upcoming Windows 11 22H2 features. Also, while not strictly a patching routine, I added an overlay class in the global plugin portion of Windows App Essentials to introduce enhancements for taskbar icons (position announcements being one of them). Although taskbar icons are defined in File Explorer, I'm using the global plugin route in order to avoid conflicts with Javi's Explorer Enhancements. After looking at Javi's code and comparing it with that of NVDA Core, I realized that both add-ons can use a single app module for File Explorer (NVDA Core does not define name change and focus entered event in File Explorer, and Windows App Essentials do not add these events either). Therefore, if Javi is willing and the community agrees, I would like to incorporate Javi's app module into Windows App Essentials. This resolves the app module conflict, and if the code is ready, submit empty folder announcement to NV Access as a pull request, likely targeting 2023.2 at the earliest (Javi, if you want, you can also submit a pull request asking NV Access to incorporate your File Explorer app module changes to NVDA Core). If the proposal is accepted, I'll add File Explorer enhancements to Windows App Essentials in February at the earliest. By the way, the last tested version recorded in Explorer Enhancements manifest is 2021.3 (hope the add-on is not abandoned at the moment.). Cheers, Joseph |
|