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

NVDA doesn't report the accelerator key for UIA controls #6021

Closed
mohammad-suliman opened this Issue May 30, 2016 · 5 comments

Comments

Projects
None yet
5 participants
@mohammad-suliman
Contributor

mohammad-suliman commented May 30, 2016

with visual studio 2015, the shortcuts is not reported for the menu items, only mnemonics are reported.
the reason for that is as follows:
NVDA gets only the access key in _get_keyBoardShortcut of UIA object.
to fix the issue: NVDA should also get the accelerator key. see this link for reference:
https://msdn.microsoft.com/en-us/library/windows/desktop/ee684017%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396
I implemented the required change in under development VS add-on, and it works fine.
thanks.

@mohammad-suliman

This comment has been minimized.

Show comment
Hide comment
@mohammad-suliman

mohammad-suliman May 30, 2016

Contributor

the code is as follows:
def _get_keyboardShortcut(self):
ret = ""
try:
ret += self.UIAElement.currentAccessKey
except COMError:
pass
if ret != "":
#add a double space to the end of the string
ret +=" "
try:
ret += self.UIAElement.currentAcceleratorKey
except COMError:
pass
return ret

I am not sure this is a correct design when it comes to speech

Contributor

mohammad-suliman commented May 30, 2016

the code is as follows:
def _get_keyboardShortcut(self):
ret = ""
try:
ret += self.UIAElement.currentAccessKey
except COMError:
pass
if ret != "":
#add a double space to the end of the string
ret +=" "
try:
ret += self.UIAElement.currentAcceleratorKey
except COMError:
pass
return ret

I am not sure this is a correct design when it comes to speech

@derekriemer

This comment has been minimized.

Show comment
Hide comment
@derekriemer

derekriemer May 31, 2016

Collaborator

Can you put this in a PR?
On 5/30/2016 3:47 PM, mohammad-suliman wrote:

the code is as follows:
def _get_keyboardShortcut(self):
ret = ""
try:
ret += self.UIAElement.currentAccessKey
except COMError:
pass
if ret != "":
#add a double space to the end of the string
ret +=" "
try:
ret += self.UIAElement.currentAcceleratorKey
except COMError:
pass
return ret

I am not sure this is a correct design when it comes to speech


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#6021 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AFGivYReqwzb32AD0h5f8HhHwKNOy7OMks5qG1rsgaJpZM4IqC5j.


Derek Riemer
  • Department of computer science, third year undergraduate student.
  • Proud user of the NVDA screen reader.
  • Open source enthusiast.
  • Member of Bridge Cu
  • Avid skiier.

Websites:
Honors portfolio http://derekriemer.com
Awesome little hand built weather app!
http://django.derekriemer.com/weather/

email me at derek.riemer@colorado.edu mailto:derek.riemer@colorado.edu
Phone: (303) 906-2194

Collaborator

derekriemer commented May 31, 2016

Can you put this in a PR?
On 5/30/2016 3:47 PM, mohammad-suliman wrote:

the code is as follows:
def _get_keyboardShortcut(self):
ret = ""
try:
ret += self.UIAElement.currentAccessKey
except COMError:
pass
if ret != "":
#add a double space to the end of the string
ret +=" "
try:
ret += self.UIAElement.currentAcceleratorKey
except COMError:
pass
return ret

I am not sure this is a correct design when it comes to speech


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#6021 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AFGivYReqwzb32AD0h5f8HhHwKNOy7OMks5qG1rsgaJpZM4IqC5j.


Derek Riemer
  • Department of computer science, third year undergraduate student.
  • Proud user of the NVDA screen reader.
  • Open source enthusiast.
  • Member of Bridge Cu
  • Avid skiier.

Websites:
Honors portfolio http://derekriemer.com
Awesome little hand built weather app!
http://django.derekriemer.com/weather/

email me at derek.riemer@colorado.edu mailto:derek.riemer@colorado.edu
Phone: (303) 906-2194

@mohammad-suliman

This comment has been minimized.

Show comment
Hide comment
@mohammad-suliman

mohammad-suliman May 31, 2016

Contributor

sure, will do that soon.

On 5/31/2016 6:28 AM, derekriemer wrote:

Can you put this in a PR?
On 5/30/2016 3:47 PM, mohammad-suliman wrote:

the code is as follows:
def _get_keyboardShortcut(self):
ret = ""
try:
ret += self.UIAElement.currentAccessKey
except COMError:
pass
if ret != "":
#add a double space to the end of the string
ret +=" "
try:
ret += self.UIAElement.currentAcceleratorKey
except COMError:
pass
return ret

I am not sure this is a correct design when it comes to speech


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#6021 (comment),
or mute the thread

https://github.com/notifications/unsubscribe/AFGivYReqwzb32AD0h5f8HhHwKNOy7OMks5qG1rsgaJpZM4IqC5j.


Derek Riemer

  • Department of computer science, third year undergraduate student.
  • Proud user of the NVDA screen reader.
  • Open source enthusiast.
  • Member of Bridge Cu
  • Avid skiier.

Websites:
Honors portfolio http://derekriemer.com
Awesome little hand built weather app!
http://django.derekriemer.com/weather/

email me at derek.riemer@colorado.edu mailto:derek.riemer@colorado.edu
Phone: (303) 906-2194


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#6021 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/ANLlKsR4VicUX6bqqhCD0aqCu7MrmYfcks5qG6rPgaJpZM4IqC5j.

Contributor

mohammad-suliman commented May 31, 2016

sure, will do that soon.

On 5/31/2016 6:28 AM, derekriemer wrote:

Can you put this in a PR?
On 5/30/2016 3:47 PM, mohammad-suliman wrote:

the code is as follows:
def _get_keyboardShortcut(self):
ret = ""
try:
ret += self.UIAElement.currentAccessKey
except COMError:
pass
if ret != "":
#add a double space to the end of the string
ret +=" "
try:
ret += self.UIAElement.currentAcceleratorKey
except COMError:
pass
return ret

I am not sure this is a correct design when it comes to speech


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#6021 (comment),
or mute the thread

https://github.com/notifications/unsubscribe/AFGivYReqwzb32AD0h5f8HhHwKNOy7OMks5qG1rsgaJpZM4IqC5j.


Derek Riemer

  • Department of computer science, third year undergraduate student.
  • Proud user of the NVDA screen reader.
  • Open source enthusiast.
  • Member of Bridge Cu
  • Avid skiier.

Websites:
Honors portfolio http://derekriemer.com
Awesome little hand built weather app!
http://django.derekriemer.com/weather/

email me at derek.riemer@colorado.edu mailto:derek.riemer@colorado.edu
Phone: (303) 906-2194


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#6021 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/ANLlKsR4VicUX6bqqhCD0aqCu7MrmYfcks5qG6rPgaJpZM4IqC5j.

@nvaccessAuto

This comment has been minimized.

Show comment
Hide comment
@nvaccessAuto

nvaccessAuto commented Jun 9, 2016

Incubated in 289178f.

@nvaccessAuto nvaccessAuto removed the incubating label Jul 8, 2016

@jcsteh jcsteh added this to the 2016.3 milestone Aug 5, 2016

@fisher729

This comment has been minimized.

Show comment
Hide comment
@fisher729

fisher729 Aug 10, 2016

This, or another issue, has caused a problem in Windows 10 10586.

  1. Press Windows+U.
  2. Tab around.
  3. The accelerator key for each option is announced twice.
    This appears in the battery warning as well.

fisher729 commented Aug 10, 2016

This, or another issue, has caused a problem in Windows 10 10586.

  1. Press Windows+U.
  2. Tab around.
  3. The accelerator key for each option is announced twice.
    This appears in the battery warning as well.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment