nvaccess / nvda

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

Using start search, focus jumps to an invisible list called pinned items #14382

Closed fernando-jose-silva closed 4 months ago

fernando-jose-silva commented 1 year ago

Steps to reproduce:

open the start menu, type a letter to search.

Actual behavior:

nvda announces pinned list. To continue typing in the search box it is necessary to press tabe so that the focus stays in the search box and at this point you can type the rest of the desired search. text read by nvda, the text of speech is with complements but the log is without complements. start window back button Press SPACE or ENTER to activate this button. search window Edit search box Type here to search, Search work and your PC blank After entering the search text, press the up or down arrow to explore the list of suggestions. g

pinned list start of list: Microsoft Edge 1 out of 25 Use the arrows to move to the next or previous item in this list.

Expected behavior:

nvda should announce search results. focus shouldn't leave the search box Below I paste the expected text. search window Edit search box Type here to search, Search work and your PC blank After entering the search text, press the up or down arrow to explore the list of suggestions. g

NVDA logs, crash dumps and other attachments:

nvda log start.txt

System configuration

NVDA installed/portable/running from source:

instaled

NVDA version:

nvda.exe, NVDA alpha-27157,0fc81e9f

Windows version:

11 22.623.891

Name and version of other software in use when reproducing the issue:

Other information about your system:

Other questions

Does the issue still occur after restarting your computer?

yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

no

If NVDA add-ons are disabled, is your problem still occurring?

yes

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

yes

feerrenrut commented 1 year ago

We can't reproduce this here, if anyone else can, it would be helpful to know.

Adriani90 commented 1 year ago

I think NVDA focuses a suggestion. while you are typing. This is expected behavior actually. If you want NVDA to stay in the edit box, you have to turn off suggestions in Windows settings. As of now Windows types for you the complete word depending on the first suggestion which is focused.

However, when trying to navigate with left or right arrow, NVDA jumps between the suggestions and not between the characters of the typed word. Expected behavior: pressing left and right arrow navigates the characters in the edit field; pressing up and down arrow navigates the suggestions. cc: @josephsl When pressing left and right arrow to navigate the characters in the edit field, I get following errors at some point:

IO - inputCore.InputManager.executeGesture (19:27:04.158) - winInputHook (14552):
Input: kb(laptop):rightArrow
DEBUGWARNING - NVDAObjects.UIA.UIATextInfo.__init__ (19:27:04.210) - MainThread (13840):
Could not clone range
Traceback (most recent call last):
  File "NVDAObjects\UIA\__init__.pyc", line 422, in __init__
  File "monkeyPatches\comtypesMonkeyPatches.pyc", line 32, in __call__
_ctypes.COMError: (-2147220991, 'Ein Ereignis konnte keinen Abonnenten aufrufen.', (None, None, None, 0, None))
DEBUGWARNING - NVDAObjects.UIA.web.UIAWebTreeInterceptor.makeTextInfo (19:27:04.210) - MainThread (13840):
selection died. Using first position instead
ERROR - scriptHandler.executeScript (19:27:04.210) - MainThread (13840):
error executing script: <bound method CursorManager.script_moveByCharacter_forward of <NVDAObjects.UIA.spartanEdge.EdgeHTMLTreeInterceptor object at 0x012A6930>> with gesture 'Pfeiltaste nach rechts'
Traceback (most recent call last):
  File "NVDAObjects\UIA\__init__.pyc", line 422, in __init__
  File "monkeyPatches\comtypesMonkeyPatches.pyc", line 32, in __call__
_ctypes.COMError: (-2147220991, 'Ein Ereignis konnte keinen Abonnenten aufrufen.', (None, None, None, 0, None))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "NVDAObjects\UIA\web.pyc", line 493, in makeTextInfo
  File "cursorManager.pyc", line 508, in makeTextInfo
  File "treeInterceptorHandler.pyc", line 191, in copy
  File "NVDAObjects\UIA\__init__.pyc", line 924, in copy
  File "NVDAObjects\UIA\__init__.pyc", line 426, in __init__
RuntimeError: Could not clone range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "NVDAObjects\UIA\__init__.pyc", line 442, in __init__
  File "comtypes\__init__.pyc", line 278, in __getattr__
  File "monkeyPatches\comtypesMonkeyPatches.pyc", line 32, in __call__
_ctypes.COMError: (-2147220991, 'Ein Ereignis konnte keinen Abonnenten aufrufen.', (None, None, None, 0, None))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "scriptHandler.pyc", line 289, in executeScript
  File "cursorManager.pyc", line 246, in script_moveByCharacter_forward
  File "cursorManager.pyc", line 132, in _caretMovementScriptHelper
  File "NVDAObjects\UIA\web.pyc", line 500, in makeTextInfo
  File "NVDAObjects\UIA\web.pyc", line 503, in makeTextInfo
  File "NVDAObjects\UIA\web.pyc", line 493, in makeTextInfo
  File "cursorManager.pyc", line 513, in makeTextInfo
  File "documentBase.pyc", line 74, in makeTextInfo
  File "treeInterceptorHandler.pyc", line 185, in __init__
  File "NVDAObjects\UIA\__init__.pyc", line 445, in __init__
RuntimeError
DEBUG - treeInterceptorHandler.killTreeInterceptor (19:27:04.263) - MainThread (13840):
Killed treeInterceptor: <NVDAObjects.UIA.spartanEdge.EdgeHTMLTreeInterceptor object at 0x012A6930>
IO - speech.speech.speak (19:27:04.287) - MainThread (13840):
Speaking ['Feld "Suchen"', 'Eingabefeld', CancellableSpeech (still valid), 'skype']
IO - inputCore.InputManager.executeGesture (19:27:04.608) - winInputHook (14552):
Input: kb(laptop):rightArrow
DEBUG - editableText.EditableText._hasCaretMoved (19:27:04.792) - MainThread (13840):
Caret didn't move before timeout. Elapsed: 100 ms
IO - speech.speech.speak (19:27:04.792) - MainThread (13840):
Speaking ['Leer']
Adriani90 commented 4 months ago

@fernando-jose-silva are you still having this issue with NVDA 2024.1? I cannot reproduce this issue anymore.

fernando-jose-silva commented 4 months ago

the problem no longer occurs, thank you.

Adriani90 commented 4 months ago

Thanks for reporting, I am closing for now as works for me.