Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Start button in Windows 8.1 and later is recognized as a list and reported as selected #5178

Closed
nvaccessAuto opened this issue Jun 22, 2015 · 8 comments

Comments

@nvaccessAuto
Copy link

Reported by nvdakor on 2015-06-22 20:56
Hi,
When you navigate desktop via object navigation or tab through the shell window, NVDA announces Start button as a list.

STR:

  1. Press Windows +M to minimize all windows.
  2. Press TAB to go to Start button.
    Expected: NVDA announces "Start button".
    Actual: In Windows 8.1 and 10, NVDA says, "Start list selected".

Technical: Thankfully, window class name is "Start", which is unique among Windows Explorer objects. Somehow, IAccessible thinks it is a list when documentation clearly says it is a button. This is for Windows 8.1 and 10 (likely as a result of removal of Start button in Windows 8). Tweaking this with NVDAObject_init solves the problem.
Thanks.

@nvaccessAuto
Copy link
Author

Comment 1 by Joseph Lee <joseph.lee22590@... on 2015-06-22 21:04
In [ae34598]:

Explorer: Start button in Windows 8.1 and later should not have been a list in the first place, now reported as button. re #5178

@josephsl
Copy link
Collaborator

Hi,

Solution change: Since Windows 10 Version 1511 (build 10586), Start button is now labeled as a button. Thus, it might be possible to isolate Windows builds with this issue (9200 (Win8), 9600 (Win8.1), 10240 (Win10 RTM)). I'll formally request a pull request as a separate issue, linking the two tickets. Thanks.

@jcsteh
Copy link
Contributor

jcsteh commented Nov 25, 2015

No need t do build checks if that's what you mean; this code simply won't match on a system which has the fix because the role will be different. There are, however, some other issues with your fix. I'll comment on the commit.

josephsl added a commit that referenced this issue Nov 25, 2015
…a list in the first place, now reported as button. re #5178
josephsl added a commit that referenced this issue Nov 25, 2015
… as selected in some versions of Windows.

Fixes #5178.
@nvaccessAuto
Copy link
Author

Incubated in b1f00f4.

josephsl added a commit that referenced this issue Nov 25, 2015
…o move through shell items which includes the Start button. re #5178
@josephsl
Copy link
Collaborator

The latest commit fixes a major bug where error tones were heard when using object nav to move between shell objects such as the Start button (important for touch users as well). Thanks.

@nvaccessAuto
Copy link
Author

Incubated in 64df758.

@JamaicanUser
Copy link

This should be added to 2016.1 Milestone

@jcsteh jcsteh added this to the 2016.1 milestone Dec 14, 2015
@dkager
Copy link
Collaborator

dkager commented Feb 13, 2016

This again is as trivial as they come, but in appModules/explorer.py:chooseNVDAObjectOverlayClasses, should there not be a return statement after inserting the appropriate class? E.g.:

        if windowClass == "Start" and role in (controlTypes.ROLE_LIST, controlTypes.ROLE_BUTTON):
            if role == controlTypes.ROLE_LIST:
                clsList.remove(List)
            clsList.insert(0, StartButton)
            return

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants