nvaccess / nvda

NVDA, the free and open source Screen Reader for Microsoft Windows
Other
2.04k stars 625 forks source link

Nvda does not read the item with focus on windows explorer #6828

Open fernando-jose-silva opened 7 years ago

fernando-jose-silva commented 7 years ago

Hello everyone. I noticed a behavior of the nvda. When we are in a folder in explorer, and we enter two initials of the name of a folder or file, and the focused item is the first one that starts with the letter you typed, nvda reads only the characters you typed, and does not read the item name with the focus. To make it easier to reproduce, you can take the test: Open a folder using explorer, in my case I opened this folder using this computer item in the windows 10 start menu, this folder is inside a drive (d: ). The names are now in Brazilian Portuguese. Inside this folder create 3 other folders with the names:

apartamento casamento contas

Now press ctrl + home to go to the first item in the folder. Now quickly type "ca", to focus the folder casamento.

See that the nvda reads, "ca" but does not pronounce the name of the folder with focus casamento.

What is expected would be for the nvda to casamento.

I put below the log of the nvda. Tested with nvda next 13840 and master 13859. Windows 10 build 14393 and windows 7 all 64bits.

IO - inputCore.InputManager.executeGesture (10:31:55): Input: kb(laptop):c IO - speech._speakSpellingGen (10:31:55): Speaking character u'c' IO - speech.speak (10:31:55): Speaking [u'casamento 10 de 112'] IO - inputCore.InputManager.executeGesture (10:31:55): Input: kb(laptop):a IO - speech._speakSpellingGen (10:31:55): Speaking character u'a' IO - inputCore.InputManager.executeGesture (10:31:58): Input: kb(laptop):NVDA+f1 INFO - globalCommands.GlobalCommands.script_navigatorObject_devInfo (10:31:58): Developer info for navigator object: name: u'casamento' role: ROLE_LISTITEM states: STATE_FOCUSABLE, STATE_SELECTABLE, STATE_FOCUSED, STATE_SELECTED isFocusable: True hasFocus: 1 Python object: <NVDAObjects.Dynamic_UIItemListItemUIA object at 0x0ADAACD0> Python class mro: (<class 'NVDAObjects.Dynamic_UIItemListItemUIA'>, <class 'NVDAObjects.UIA.UIItem'>, <class 'NVDAObjects.UIA.ListItem'>, <class 'NVDAObjects.UIA.UIA'>, <class 'NVDAObjects.window.Window'>, <class 'NVDAObjects.NVDAObject'>, <class 'baseObject.ScriptableObject'>, <class 'baseObject.AutoPropertyObject'>, <type 'object'>) description: '' location: (286, 414, 574, 22) value: '' appModule: <'explorer' (appName u'explorer', process ID 29060) at address ad421d0> appModule.productName: u'Sistema operacional Microsoft\xae Windows\xae' appModule.productVersion: u'10.0.14393.0' TextInfo: <class 'NVDAObjects.NVDAObjectTextInfo'> windowHandle: 2556484 windowClassName: u'DirectUIHWND' windowControlID: 0 windowStyle: 1442840576 windowThreadID: 38904 windowText: u'' displayText: u'casamento 12/ 01/ 2017 12:08 Pasta de arquivos' UIAElement: <POINTER(IUIAutomationElement) ptr=0x79e4da0 at ae969e0> UIA automationID: 9 UIA frameworkID: DirectUI UIA runtimeID: (29060, 150907440, 0) UIA providerDescription: [pid:29060,hwnd:0x0 Main(parent link):Unidentified Provider (unmanaged:explorerframe.dll)] UIA className: UIItem

ehollig commented 6 years ago

@fernando-jose-silva, is this still happening for you? Works as expected for me using Windows 10,1607. When I type "Ca" the folder "casamento" is selected.

fernando-jose-silva commented 6 years ago

Unfortunately I still have this problem, where I can be useful, I am at your disposal.

Brian1Gaff commented 6 years ago

To be fair, I don't think this ever worked, but Intend to use keypad 5 straight after to make sure its where I think it is. Sorry do not know the laptop version of this. I think what is happening is that there seems to be no event picked up by nvda, or it gets obliterated by the keys you typed.

I'm using windows 7 64 bit on a quad core machine with throttling turned off.

So its not a delay thing.

Another way to be sure is a quick cursor down and up of course as this refreshes the display. I agree its strange behaviour, but, I am used to it. Maybe someone else can explain it. Brian

bglists@blueyonder.co.uk Sent via blueyonder. Please address personal email to:- briang1@blueyonder.co.uk, putting 'Brian Gaff' in the display name field.

Brian1Gaff commented 6 years ago

In my log its quite plain to see that the l gets the selection to my folder, but the i seems to cancel that speaking and after the i nothing is spoken at all, for whatever reason.

IO - inputCore.InputManager.executeGesture (17:50:11.257): Input: kb(desktop):alt+tab IO - speech.speak (17:50:11.319): Speaking [LangChangeCommand ('en_GB'), u'C:\ icon 1 of 3'] IO - speech.speak (17:50:12.466): Speaking [LangChangeCommand ('en_GB'), u'C:\'] IO - speech.speak (17:50:12.490): Speaking [LangChangeCommand ('en_GB'), u'Items View list'] IO - speech.speak (17:50:12.505): Speaking [LangChangeCommand ('en_GB'), u'LibreOfficePortable row 12 column 1 12 of 47'] IO - inputCore.InputManager.executeGesture (17:50:15.025): Input: kb(desktop):control+home IO - speech.speak (17:50:15.072): Speaking [LangChangeCommand ('en_GB'), u'$Recycle.Bin not selected row 1 column 1 1 of 47'] IO - speech.speak (17:50:16.059): Speaking [LangChangeCommand ('en_GB'), u'Date created: \u200e14/\u200e07/\u200e2009 \u200f\u200e04:18\nEmpty folder tool tip'] IO - inputCore.InputManager.executeGesture (17:50:28.625): Input: kb(desktop):l IO - speech._speakSpellingGen (17:50:28.651): Speaking character u'l' DEBUG - queueHandler.registerGeneratorObject (17:50:28.651): Adding generator 1 IO - speech.speak (17:50:28.680): Speaking [LangChangeCommand ('en_GB'), u'LibreOfficePortable row 12 column 1 12 of 47'] DEBUG - queueHandler.pumpAll (17:50:28.681): generator 1 finished IO - inputCore.InputManager.executeGesture (17:50:28.890): Input: kb(desktop):i IO - speech._speakSpellingGen (17:50:28.911): Speaking character u'i' DEBUG - queueHandler.registerGeneratorObject (17:50:28.911): Adding generator 2 DEBUG - queueHandler.pumpAll (17:50:28.921): generator 2 finished IO - inputCore.InputManager.executeGesture (17:50:42.177): Input: kb(desktop):numpad5 IO - speech.speak (17:50:42.190): Speaking [LangChangeCommand ('en_GB'), u'LibreOfficePortable'] IO - inputCore.InputManager.executeGesture (17:50:45.289): Input: kb(desktop):enter IO - speech.speak (17:50:45.403): Speaking [LangChangeCommand ('en_GB'), u'C:\LibreOfficePortable'] IO - speech.speak (17:50:45.466): Speaking [LangChangeCommand ('en_GB'), u'Items View list'] IO - speech.speak (17:50:45.480): Speaking [LangChangeCommand ('en_GB'), u'App not selected row 1 column 1 1 of 12']

The effect is the same on portable as on installed next master or release versions as far as I can tell. Brian

bglists@blueyonder.co.uk Sent via blueyonder. Please address personal email to:- briang1@blueyonder.co.uk, putting 'Brian Gaff' in the display name field.


fernando-jose-silva commented 6 years ago

Perfect, thank you so much for seeing this.

De: Brian Gaff [mailto:notifications@github.com] Enviada em: domingo, 17 de setembro de 2017 14:01 Para: nvaccess/nvda nvda@noreply.github.com Cc: fernando-jose-silva fernandoj.silva21@gmail.com; Mention mention@noreply.github.com Assunto: Re: [nvaccess/nvda] Nvda does not read the item with focus on windows explorer (#6828)

In my log its quite plain to see that the l gets the selection to my folder, but the i seems to cancel that speaking and after the i nothing is spoken at all, for whatever reason.

IO - inputCore.InputManager.executeGesture (17:50:11.257): Input: kb(desktop):alt+tab IO - speech.speak (17:50:11.319): Speaking [LangChangeCommand ('en_GB'), u'C:\ icon 1 of 3'] IO - speech.speak (17:50:12.466): Speaking [LangChangeCommand ('en_GB'), u'C:\'] IO - speech.speak (17:50:12.490): Speaking [LangChangeCommand ('en_GB'), u'Items View list'] IO - speech.speak (17:50:12.505): Speaking [LangChangeCommand ('en_GB'), u'LibreOfficePortable row 12 column 1 12 of 47'] IO - inputCore.InputManager.executeGesture (17:50:15.025): Input: kb(desktop):control+home IO - speech.speak (17:50:15.072): Speaking [LangChangeCommand ('en_GB'), u'$Recycle.Bin not selected row 1 column 1 1 of 47'] IO - speech.speak (17:50:16.059): Speaking [LangChangeCommand ('en_GB'), u'Date created: \u200e14/\u200e07/\u200e2009 \u200f\u200e04:18\nEmpty folder tool tip'] IO - inputCore.InputManager.executeGesture (17:50:28.625): Input: kb(desktop):l IO - speech._speakSpellingGen (17:50:28.651): Speaking character u'l' DEBUG - queueHandler.registerGeneratorObject (17:50:28.651): Adding generator 1 IO - speech.speak (17:50:28.680): Speaking [LangChangeCommand ('en_GB'), u'LibreOfficePortable row 12 column 1 12 of 47'] DEBUG - queueHandler.pumpAll (17:50:28.681): generator 1 finished IO - inputCore.InputManager.executeGesture (17:50:28.890): Input: kb(desktop):i IO - speech._speakSpellingGen (17:50:28.911): Speaking character u'i' DEBUG - queueHandler.registerGeneratorObject (17:50:28.911): Adding generator 2 DEBUG - queueHandler.pumpAll (17:50:28.921): generator 2 finished IO - inputCore.InputManager.executeGesture (17:50:42.177): Input: kb(desktop):numpad5 IO - speech.speak (17:50:42.190): Speaking [LangChangeCommand ('en_GB'), u'LibreOfficePortable'] IO - inputCore.InputManager.executeGesture (17:50:45.289): Input: kb(desktop):enter IO - speech.speak (17:50:45.403): Speaking [LangChangeCommand ('en_GB'), u'C:\LibreOfficePortable'] IO - speech.speak (17:50:45.466): Speaking [LangChangeCommand ('en_GB'), u'Items View list'] IO - speech.speak (17:50:45.480): Speaking [LangChangeCommand ('en_GB'), u'App not selected row 1 column 1 1 of 12']

The effect is the same on portable as on installed next master or release versions as far as I can tell. Brian

bglists@blueyonder.co.uk mailto:bglists@blueyonder.co.uk Sent via blueyonder. Please address personal email to:- briang1@blueyonder.co.uk mailto:briang1@blueyonder.co.uk , putting 'Brian Gaff' in the display name field.


— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nvaccess/nvda/issues/6828#issuecomment-330062468 , or mute the thread https://github.com/notifications/unsubscribe-auth/APTzMqA228j6zvyT43bUWgXrpN87lHDgks5sjVA9gaJpZM4Lz1jV . https://github.com/notifications/beacon/APTzMlR2KWkHZIRkek4iaiBUY91iU-zSks5sjVA9gaJpZM4Lz1jV.gif

fernando-jose-silva commented 6 years ago

I'm with a notebook, settings:

core i3 6100u

4gb of ran

128gb ssd

windows 10 64bits.

Works beautifully.

I also got used to the effect.

It's trickier for beginners.

But if we can solve it it will be very good, however I agree that the priority is low.

Thank you very much.

De: Brian Gaff [mailto:notifications@github.com] Enviada em: domingo, 17 de setembro de 2017 13:50 Para: nvaccess/nvda nvda@noreply.github.com Cc: fernando-jose-silva fernandoj.silva21@gmail.com; Mention mention@noreply.github.com Assunto: Re: [nvaccess/nvda] Nvda does not read the item with focus on windows explorer (#6828)

To be fair, I don't think this ever worked, but Intend to use keypad 5 straight after to make sure its where I think it is. Sorry do not know the laptop version of this. I think what is happening is that there seems to be no event picked up by nvda, or it gets obliterated by the keys you typed.

I'm using windows 7 64 bit on a quad core machine with throttling turned off.

So its not a delay thing.

Another way to be sure is a quick cursor down and up of course as this refreshes the display. I agree its strange behaviour, but, I am used to it. Maybe someone else can explain it. Brian

bglists@blueyonder.co.uk mailto:bglists@blueyonder.co.uk Sent via blueyonder. Please address personal email to:- briang1@blueyonder.co.uk mailto:briang1@blueyonder.co.uk , putting 'Brian Gaff' in the display name field.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nvaccess/nvda/issues/6828#issuecomment-330061628 , or mute the thread https://github.com/notifications/unsubscribe-auth/APTzMl-3W3Fs8Jnvj4jOPGp5Se-9H0zRks5sjU2pgaJpZM4Lz1jV . https://github.com/notifications/beacon/APTzMk7sVnR0_rviyWLdilaPGThzKA9Nks5sjU2pgaJpZM4Lz1jV.gif

Adriani90 commented 5 years ago

@fernando-jose-silva are you still having this issue? I have never seen this issue. It could be caused by an addon, maybe global plugin extensions. Anyway, please give us a short update if you still encounter this problem. Thanks!

fernando-jose-silva commented 5 years ago

I tested it with all the updated software windows 10 17763.379 nvda alfa 16976 and the problem continues The way of testing is the same as stated above: open a directory and create 3 folders with the names apartamento casamento conta walk to the top of the list with home press ca the folder in focus is casamento the last reading of letter (a) And do not read the name of the folder in focus wedding. The pronunciation of letter (a) overwriting the reading of the name of the folder in focus. You would expect the nvda to read the last letter pressed and finally the name of the folder in focus. In case nvda is reversing the order first it reads the folder name in focus and then reads the letter pressed.

Adriani90 commented 5 years ago

@fernando-jose-silva is the addon global plugin extensions enabled? Could you please disable it and try to reproduce the issue again?

fernando-jose-silva commented 5 years ago

In c w2.txt ase of this problem I disabled the add-ons and managed to reproduce the problem. log:

Adriani90 commented 1 year ago

Ok after investigating this, it seems when you disable "interupt speech while typing" in NVDA keyboard settings, NVDA reports the item getting focus even when you type more than one letter. When the setting is enabled, the speech interupts when typing the second letter.

Is it possible to change this setting so it does not apply on lists in general? cc: @ABuffEr, @josephsl, @seanbudd.