nvaccess / nvda

NVDA, the free and open source Screen Reader for Microsoft Windows
https://www.nvaccess.org/
Other
2.12k stars 638 forks source link

Set desktop object navigation / review cursor keys to "desktop layout only", not "all". #9549

Closed Qchristensen closed 6 months ago

Qchristensen commented 5 years ago

Is your feature request related to a problem? Please describe.

NVDA's desktop keyboard layout utilises the number pad for review cursor and object navigation commands. NVDA's laptop keyboard layout was created for users who don't have a number pad. It assigns alternate keystrokes to those commands which use the number pad. Currently, the desktop object navigation and review cursor keystrokes are set to be active for "all" keyboard layouts. There are users whose keyboard has a number pad, however they prefer to use laptop keyboard layout. These users would like to be able to use the number pad for its original navigation use (in some cases because their laptop does not have alternate keys, or the alternate keys are not convenient).

Because the desktop object navigation and review cursor keys are set to be active in all layouts, they cannot use the number pad for navigation, and effectively have two sets of object navigation and review cursor keys.

Describe the solution you'd like

Change the desktop object navigation and review cursor keys to be active in desktop layout only, not all.

Describe alternatives you've considered

Having users change the key assignments manually is possible, however it is time consuming and risks altering keystrokes they did not intend to alter.

Additional context

I cannot think of a situation where a user might want to use Laptop keyboard layout and still have access to the desktop object navigation and review cursor commands.

Brian1Gaff commented 5 years ago

Would some kind of corporate mass install use the both at once scenario so the one size fits all roll out of a standard config would be easy if laptops and desktops were all on the network?

LeonarddeR commented 5 years ago

I cannot think of a situation where a user might want to use Laptop keyboard layout and still have access to the desktop object navigation and review cursor commands.

Hmm, I actually consider the fact that these keys are assigned for all layouts an advantage, so I have no problem with it. I could imagine that, even tough people use the laptop layout, they utilize the number pad for object navigation just because they are accustomed to it. Therefore, I'd be careful in changing these assignments.

Qchristensen commented 5 years ago

If a user has a number pad on their laptop, and are used to the desktop layout, there is no reason they have to use laptop layout.

This has generated quite a bit of conversation in the email user group: https://nvda.groups.io/g/nvda/topic/31549829#61538

Aside from leaving things as they are, or adopting my original suggestion, the main alternatives proposed seem to be:

My concern is that the concept of a "desktop keyboard layout" and a "laptop keyboard layout" are relatively easy for even a new user to understand, even without completely knowing the differences. A hybrid mode is going to be tricky to explain, and a toggle introduces the possibility to disable object navigation unintentionally (one suggestion was to make such a toggle shortcut unassigned by default).

GauravTheCoder commented 5 years ago

I'd like to have NvdA+NumLock keystroke assigned to toggle on/off the objNav through NumPad. I have this weird keyboard layout where the rightmost key at the top row is end, then left to that in the horizontal row are page down, page up, and home. I'd like to use my NumPad for home/end and page up/down, thanks.

ivnc commented 5 years ago

There are being many Spanish-speaking users who have asked via Twitter for this feature or a similar one (p.e. to add a setting to pass numpad gestures to the system). Personaly I also agree with this feature request.

Regards.

Qchristensen commented 4 years ago

Just a quick note that this is still being keenly requested by some users.

fisher729 commented 4 years ago

Yes, this issue still persists. My feeling is that the hybrid keyboard layout can be dscribed as a keyboard layout that incorporates most gestures of the laptop layout, but does not utilise the Numpad for object navigation and text review commands. This is primarily useful for users that have laptops with Numpad keys, but would like to use these keys for other functionality that they would provide if Num Lock is off, such as arrow keys, Home, End, Page Up, and Page Down.

Qchristensen commented 4 years ago

I think there might also be some laptops which don't have separate navigation keys and expect users to use the numpad with numlock for those functions. This makes it very difficult to use those laptops with NVDA (I had a report from a user, I'll try to get a model number, for confirmation at least).

louie-prog commented 4 years ago

good day to all most especially to Qchristensen. I have read the comments and personally agree with some of them. firstly is I would agree with this concept: Change the desktop object navigation and review cursor keys to be active in desktop layout only, not all. secondly, I would also agree on the following suggested solutions: 1. Current laptop layout "hybrid" keyboard layout, and make a new laptop layout with the number pad keys unassigned. 2. Add some kind of a toggle option or keystroke to enable or disable object navigation on the number pad. on the concern of hybrid layout, I understand this concern of yours boss Qchristensen that says, "My concern is that the concept of a "desktop keyboard layout" and a "laptop keyboard layout" are relatively easy for even a new user to understand, even without completely knowing the differences. A hybrid mode is going to be tricky to explain, and a toggle introduces the possibility to disable object navigation unintentionally (one suggestion was to make such a toggle shortcut unassigned by default)." my opinion and suggestion to that concern boss aside of putting it in the user guide of NVDA as a new feature or new settengs, is maybe we can add some kind of discription everytime the cursor highlights the third setting which is the hybrid layout. like for example: I move the cursor and happens to focus on the hybrid layout, the NVDA will now say: hybrid layout (applicable for laptop with number pad and want to use its number pad for object navigation.) I think that would be better. it sounds complicated, but wants the setting is explored by the user, most probably he/she would understand the difference of the three layouts. especially to the laptop and hybrid layout. also, I agree on the suggestion that a toggle button/shortcut is unassigned and should be configured with the user who has experiencing problem on the said command. my concern is the same with the concern of GauravTheCoderwhich says, "I'd like to have NvdA+NumLock keystroke assigned to toggle on/off the objNav through NumPad. I have this weird keyboard layout where the rightmost key at the top row is end, then left to that in the horizontal row are page down, page up, and home. I'd like to use my NumPad for home/end and page up/down, thanks." I really agree on the comment of fisher729, "Yes, this issue still persists. My feeling is that the hybrid keyboard layout can be dscribed as a keyboard layout that incorporates most gestures of the laptop layout, but does not utilise the Numpad for object navigation and text review commands. This is primarily useful for users that have laptops with Numpad keys, but would like to use these keys for other functionality that they would provide if Num Lock is off, such as arrow keys, Home, End, Page Up, and Page Down." I hope it is clear. I really love NVDA, and love to use NVDA as my screen reader. best regards to all the developers. you are helping millions of visually impaired persons. your help has great contribution for our success.

Adriani90 commented 4 years ago

Yes, I also think the simplest way would be to introduce a hybrid key board layout which just let the numpad keys untouched. The user can use the numpad keys for the standard actions provided by the device or can assign NVDA specific functions to them.

louie-prog commented 4 years ago

exactly.

On 5/17/20, Adriani90 notifications@github.com wrote:

Yes, I also think the simplest way would be to introduce a hybrid key board layout which just let the numpad keys untouched. The user can use the numpad keys for the standard actions provided by the device or can assign NVDA specific functions to them.

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/nvaccess/nvda/issues/9549#issuecomment-629778969

XLTechie commented 4 years ago

Personally I think what is needed here, is a simple toggle state for the numpad between normal operation and object nav operation.

With that, the user could use whichever keyboard layout is desired, and then choose (possibly on the fly) which numpad mode to use.

Edit: now implemented in the Numpad Nav Mode add-on. https://addons.nvda-project.org/addons/numpadNavMode.en.html

Qchristensen commented 4 years ago

Had a couple of requests for a resolution to this issue this week. One laptop model I got from a couple users is the Acer a315-42-r58j. For those it might benefit, here is an image of the keyboard from that model: https://i2.wp.com/laptopmedia.com/wp-content/uploads/2019/10/A315_42-1.jpg?ssl=1

Basically, it does have dedicated arrow keys, and insert and delete, however the only way to access home, end, page up and page down is via the number pad. (Fn + arrow keys on this model is multimedia controls, play/pause, stop, rewind and fast forward).

louie-prog commented 4 years ago

you are right boss.

On 6/11/20, Quentin Christensen notifications@github.com wrote:

Had a couple of requests for a resolution to this issue this week. One laptop model I got from a couple users is the Acer a315-42-r58j. For those it might benefit, here is an image of the keyboard from that model: https://i2.wp.com/laptopmedia.com/wp-content/uploads/2019/10/A315_42-1.jpg?ssl=1

Basically, it does have dedicated arrow keys, and insert and delete, however the only way to access home, end, page up and page down is via the number pad. (Fn + arrow keys on this model is multimedia controls, play/pause, stop, rewind and fast forward).

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/nvaccess/nvda/issues/9549#issuecomment-642508537

feerrenrut commented 4 years ago

https://github.com/nvaccess/nvda/pull/7784 will help with some of the concerns here, specifically being able to use numpad arrow keys in place of regular arrow keys.

Qchristensen commented 4 years ago

For anyone who wants this, there might still be a couple of things to iron out, but this putting all of the following in gestures.ini should get you pretty close to having NVDA use the numberpad for the review cursor and object navigation in Desktop layout ONLY, and restore the regular functionality (arrows, page up / down, home, end, etc) in Laptop keyboard layout with numlock off. This is a workaround for those users who have a laptop with a number pad, but missing some or all of the arrow keys, or extended home / end / page up / page down, etc:

[globalCommands.GlobalCommands]
None = kb:numpad5, kb:numpad0, kb:numpad1+nvda, kb:numpadminus+nvda+shift, kb:numpad4+nvda, kb:numpadmultiply+nvda, kb:numpaddivide, kb:numpadenter+nvda, kb:numpad6+nvda, kb:numpad5+nvda, kb:numpad1+shift, kb:numpaddivide+shift, kb:numpad9+shift, kb:numpad7+nvda, kb:numpad3+shift, kb:numpadminus+nvda, kb:numpaddivide+nvda, kb:numpad8+nvda, kb:numpadplus, kb:numpad7+shift, kb:numpad2+nvda, kb:numpaddelete+nvda, kb:numpadmultiply+shift, kb:numpadmultiply
kb:pageup = kb(laptop):numpad9
kb:control+pageup = kb(laptop):control+numpad9
kb:pagedown = kb(laptop):numpad3
kb:control+pagedown = kb(laptop):control+numpad3
kb:home = kb(laptop):numpad7
kb:control+home = kb(laptop):control+numpad7
kb:end = kb(laptop):numpad1
kb:control+end = kb(laptop):control+numpad1
kb:uparrow = kb(laptop):numpad8
kb:control+uparrow = kb(laptop):control+numpad8
kb:downarrow = kb(laptop):numpad2
kb:control+downarrow = kb(laptop):control+numpad2
kb:leftarrow = kb(laptop):numpad4
kb:control+leftarrow = kb(laptop):control+numpad4
kb:rightarrow = kb(laptop):numpad6
kb:control+rightarrow = kb(laptop):control+numpad6
moveNavigatorObjectToMouse = kb(desktop):numpadmultiply+nvda
navigatorObject_previous = kb(desktop):numpad4+nvda
reviewMode_previous = kb(desktop):numpad1+nvda
navigatorObject_toFocus = kb(desktop):numpadminus+nvda
review_top = kb(desktop):numpad7+shift
navigatorObject_next = kb(desktop):numpad6+nvda
review_startOfLine = kb(desktop):numpad1+shift
leftMouseClick = kb(desktop):numpaddivide
review_nextWord = kb(desktop):numpad6
review_activate = kb(desktop):numpadenter+nvda
review_nextLine = kb(desktop):numpad9
review_previousWord = kb(desktop):numpad4
review_currentWord = kb(desktop):numpad5
review_currentLine = kb(desktop):numpad8
navigatorObject_current = kb(desktop):numpad5+nvda
navigatorObject_moveFocus = kb(desktop):numpadminus+nvda+shift
review_sayAll = kb(desktop):numpadplus
navigatorObject_firstChild = kb(desktop):numpad2+nvda
navigatorObject_currentDimensions = kb(desktop):numpaddelete+nvda
toggleRightMouseButton = kb(desktop):numpadmultiply+shift
navigatorObject_parent = kb(desktop):numpad8+nvda
moveMouseToNavigatorObject = kb(desktop):numpaddivide+nvda
rightMouseClick = kb(desktop):numpadmultiply
review_previousLine = kb(desktop):numpad7
toggleLeftMouseButton = kb(desktop):numpaddivide+shift
review_endOfLine = kb(desktop):numpad3+shift
review_nextCharacter = kb(desktop):numpad3
review_currentCharacter = kb(desktop):numpad2
review_previousCharacter = kb(desktop):numpad1
reviewMode_next = kb(desktop):numpad7+nvda
review_bottom = kb(desktop):numpad9+shift
GauravTheCoder commented 4 years ago

Hello, When I copied the text to gestures.ini, my NvdA became unusable. Kindly tell me how can I properly integrate those gestures. Thank you. Regards, Gaurav Sharma

On Thu, Aug 20, 2020 at 1:39 PM Quentin Christensen < notifications@github.com> wrote:

For anyone who wants this, there might still be a couple of things to iron out, but this putting all of the following in gestures.ini should get you pretty close to having NVDA use the numberpad for the review cursor and object navigation in Desktop layout ONLY, and restore the regular functionality (arrows, page up / down, home, end, etc) in Laptop keyboard layout with numlock off. This is a workaround for those users who have a laptop with a number pad, but missing some or all of the arrow keys, or extended home / end / page up / page down, etc:

[globalCommands.GlobalCommands] None = kb:numpad5, kb:numpad0, kb:numpad1+nvda, kb:numpadminus+nvda+shift, kb:numpad4+nvda, kb:numpadmultiply+nvda, kb:numpaddivide, kb:numpadenter+nvda, kb:numpad6+nvda, kb:numpad5+nvda, kb:numpad1+shift, kb:numpaddivide+shift, kb:numpad9+shift, kb:numpad7+nvda, kb:numpad3+shift, kb:numpadminus+nvda, kb:numpaddivide+nvda, kb:numpad8+nvda, kb:numpadplus, kb:numpad7+shift, kb:numpad2+nvda, kb:numpaddelete+nvda, kb:numpadmultiply+shift, kb:numpadmultiply kb:pageup = kb(laptop):numpad9 kb:control+pageup = kb(laptop):control+numpad9 kb:pagedown = kb(laptop):numpad3 kb:control+pagedown = kb(laptop):control+numpad3 kb:home = kb(laptop):numpad7 kb:control+home = kb(laptop):control+numpad7 kb:end = kb(laptop):numpad1 kb:control+end = kb(laptop):control+numpad1 kb:uparrow = kb(laptop):numpad8 kb:control+uparrow = kb(laptop):control+numpad8 kb:downarrow = kb(laptop):numpad2 kb:control+downarrow = kb(laptop):control+numpad2 kb:leftarrow = kb(laptop):numpad4 kb:control+leftarrow = kb(laptop):control+numpad4 kb:rightarrow = kb(laptop):numpad6 kb:control+rightarrow = kb(laptop):control+numpad6 moveNavigatorObjectToMouse = kb(desktop):numpadmultiply+nvda navigatorObject_previous = kb(desktop):numpad4+nvda reviewMode_previous = kb(desktop):numpad1+nvda navigatorObject_toFocus = kb(desktop):numpadminus+nvda review_top = kb(desktop):numpad7+shift navigatorObject_next = kb(desktop):numpad6+nvda review_startOfLine = kb(desktop):numpad1+shift leftMouseClick = kb(desktop):numpaddivide review_nextWord = kb(desktop):numpad6 review_activate = kb(desktop):numpadenter+nvda review_nextLine = kb(desktop):numpad9 review_previousWord = kb(desktop):numpad4 review_currentWord = kb(desktop):numpad5 review_currentLine = kb(desktop):numpad8 navigatorObject_current = kb(desktop):numpad5+nvda navigatorObject_moveFocus = kb(desktop):numpadminus+nvda+shift review_sayAll = kb(desktop):numpadplus navigatorObject_firstChild = kb(desktop):numpad2+nvda navigatorObject_currentDimensions = kb(desktop):numpaddelete+nvda toggleRightMouseButton = kb(desktop):numpadmultiply+shift navigatorObject_parent = kb(desktop):numpad8+nvda moveMouseToNavigatorObject = kb(desktop):numpaddivide+nvda rightMouseClick = kb(desktop):numpadmultiply review_previousLine = kb(desktop):numpad7 toggleLeftMouseButton = kb(desktop):numpaddivide+shift review_endOfLine = kb(desktop):numpad3+shift review_nextCharacter = kb(desktop):numpad3 review_currentCharacter = kb(desktop):numpad2 review_previousCharacter = kb(desktop):numpad1 reviewMode_next = kb(desktop):numpad7+nvda review_bottom = kb(desktop):numpad9+shift

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/nvaccess/nvda/issues/9549#issuecomment-677447635, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMBCPEGWQF7INWGI2YLBVJTSBTK2LANCNFSM4HLWDSOQ .

louie-prog commented 4 years ago

it works well for me. thanks alot for the development. I can use NVDA right now and perform the system command in the number pad when numlock is off. all you have to do is to have the gesture.ini config file, press windows key + R to open the run, then type "%appdata%" without quotes, and find the folder NVDA, then paste the gesture.ini inside the folder NVDA. restart your NVDA and now it works well.

On 8/20/20, GauravTheCoder notifications@github.com wrote:

Hello,

When I copied the text to gestures.ini, my NvdA became unusable. Kindly

tell me how can I properly integrate those gestures. Thank you.

Regards,

Gaurav Sharma

On Thu, Aug 20, 2020 at 1:39 PM Quentin Christensen <

notifications@github.com> wrote:

For anyone who wants this, there might still be a couple of things to iron

out, but this putting all of the following in gestures.ini should get you

pretty close to having NVDA use the numberpad for the review cursor and

object navigation in Desktop layout ONLY, and restore the regular

functionality (arrows, page up / down, home, end, etc) in Laptop keyboard

layout with numlock off. This is a workaround for those users who have a

laptop with a number pad, but missing some or all of the arrow keys, or

extended home / end / page up / page down, etc:

[globalCommands.GlobalCommands] None = kb:numpad5, kb:numpad0,

kb:numpad1+nvda, kb:numpadminus+nvda+shift, kb:numpad4+nvda,

kb:numpadmultiply+nvda, kb:numpaddivide, kb:numpadenter+nvda,

kb:numpad6+nvda, kb:numpad5+nvda, kb:numpad1+shift, kb:numpaddivide+shift,

kb:numpad9+shift, kb:numpad7+nvda, kb:numpad3+shift, kb:numpadminus+nvda,

kb:numpaddivide+nvda, kb:numpad8+nvda, kb:numpadplus, kb:numpad7+shift,

kb:numpad2+nvda, kb:numpaddelete+nvda, kb:numpadmultiply+shift,

kb:numpadmultiply kb:pageup = kb(laptop):numpad9 kb:control+pageup =

kb(laptop):control+numpad9 kb:pagedown = kb(laptop):numpad3

kb:control+pagedown = kb(laptop):control+numpad3 kb:home =

kb(laptop):numpad7 kb:control+home = kb(laptop):control+numpad7 kb:end =

kb(laptop):numpad1 kb:control+end = kb(laptop):control+numpad1 kb:uparrow

kb(laptop):numpad8 kb:control+uparrow = kb(laptop):control+numpad8

kb:downarrow = kb(laptop):numpad2 kb:control+downarrow =

kb(laptop):control+numpad2 kb:leftarrow = kb(laptop):numpad4

kb:control+leftarrow = kb(laptop):control+numpad4 kb:rightarrow =

kb(laptop):numpad6 kb:control+rightarrow = kb(laptop):control+numpad6

moveNavigatorObjectToMouse = kb(desktop):numpadmultiply+nvda

navigatorObject_previous = kb(desktop):numpad4+nvda reviewMode_previous

kb(desktop):numpad1+nvda navigatorObject_toFocus =

kb(desktop):numpadminus+nvda review_top = kb(desktop):numpad7+shift

navigatorObject_next = kb(desktop):numpad6+nvda review_startOfLine =

kb(desktop):numpad1+shift leftMouseClick = kb(desktop):numpaddivide

review_nextWord = kb(desktop):numpad6 review_activate =

kb(desktop):numpadenter+nvda review_nextLine = kb(desktop):numpad9

review_previousWord = kb(desktop):numpad4 review_currentWord =

kb(desktop):numpad5 review_currentLine = kb(desktop):numpad8

navigatorObject_current = kb(desktop):numpad5+nvda

navigatorObject_moveFocus = kb(desktop):numpadminus+nvda+shift

review_sayAll = kb(desktop):numpadplus navigatorObject_firstChild =

kb(desktop):numpad2+nvda navigatorObject_currentDimensions =

kb(desktop):numpaddelete+nvda toggleRightMouseButton =

kb(desktop):numpadmultiply+shift navigatorObject_parent =

kb(desktop):numpad8+nvda moveMouseToNavigatorObject =

kb(desktop):numpaddivide+nvda rightMouseClick = kb(desktop):numpadmultiply

review_previousLine = kb(desktop):numpad7 toggleLeftMouseButton =

kb(desktop):numpaddivide+shift review_endOfLine = kb(desktop):numpad3+shift

review_nextCharacter = kb(desktop):numpad3 review_currentCharacter =

kb(desktop):numpad2 review_previousCharacter = kb(desktop):numpad1

reviewMode_next = kb(desktop):numpad7+nvda review_bottom =

kb(desktop):numpad9+shift

You are receiving this because you are subscribed to this thread.

Reply to this email directly, view it on GitHub

https://github.com/nvaccess/nvda/issues/9549#issuecomment-677447635, or

unsubscribe

https://github.com/notifications/unsubscribe-auth/AMBCPEGWQF7INWGI2YLBVJTSBTK2LANCNFSM4HLWDSOQ

.

--

You are receiving this because you are subscribed to this thread.

Reply to this email directly or view it on GitHub:

https://github.com/nvaccess/nvda/issues/9549#issuecomment-677671315

Qchristensen commented 4 years ago

@GauravTheCoder What became unusable with those lines in your gestures.ini?

If adding them in caused problems, you should be able to get back to where you were by removing them again.

GauravTheCoder commented 4 years ago

Hello, I had to delete the gestures.ini file then reset the gestures for keyboard lock, mouse lock and other things again. I just copied the code sent above to the file and saved it and NvdA became unusable. Regards, Gaurav Sharma

On Fri, Aug 21, 2020 at 4:10 AM Quentin Christensen < notifications@github.com> wrote:

@GauravTheCoder https://github.com/GauravTheCoder What became unusable with those lines in your gestures.ini?

If adding them in caused problems, you should be able to get back to where you were by removing them again.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nvaccess/nvda/issues/9549#issuecomment-677942293, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMBCPEAZNCELVMEOGHWVVPTSBWQ7VANCNFSM4HLWDSOQ .

XLTechie commented 4 years ago

Did you add it to the file, or replace what was already in the file?

If you added it, did you add it at the end or the beginning?

GauravTheCoder commented 4 years ago

I added it to the file and I added it in the beginning. So do I just make a new file and directly copy it there? Regards, Gaurav Sharma

On Fri, Aug 21, 2020 at 12:18 PM Luke Davis notifications@github.com wrote:

Did you add it to the file, or replace what was already in the file?

If you added it, did you add it at the end or the beginning?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nvaccess/nvda/issues/9549#issuecomment-678074614, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMBCPEFHZFNMHSIYZHV2CXLSBYKFDANCNFSM4HLWDSOQ .

GauravTheCoder commented 4 years ago

Hello, so I replaced the gestures.ini file... And now when I try to turn on NvdA, I hear the startup sound, then an error sound, but no window appears... And it doesn't turn on. Same issue. Regards, Gaurav Sharma

On Fri, Aug 21, 2020 at 1:43 PM Gaurav coolboygauravsharma27@gmail.com wrote:

I added it to the file and I added it in the beginning. So do I just make a new file and directly copy it there? Regards, Gaurav Sharma

On Fri, Aug 21, 2020 at 12:18 PM Luke Davis notifications@github.com wrote:

Did you add it to the file, or replace what was already in the file?

If you added it, did you add it at the end or the beginning?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nvaccess/nvda/issues/9549#issuecomment-678074614, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMBCPEFHZFNMHSIYZHV2CXLSBYKFDANCNFSM4HLWDSOQ .

XLTechie commented 4 years ago

@GauravTheCoder I believe I know what is wrong.

First, all your responses on this thread have been by email. That makes me think you may have based your changes on the email version of the message by @Qchristensen . If that's true, the email version was formatted incorrectly, and would have resulted in a broken gestures.ini file.

Secondly, if you based your changes on his edited post here, the edits by @Qchristensen and @feerrenrut caused a critical line to be edited out of the message, which, if left out of the config file, will also cause an invalid gestures file.

So, open your gestures file, and look for a section labeled like this:

[globalCommands.GlobalCommands]

That is what no longer appears in the message by @Qchristensen . If you don't find that section, add it to the file. Then, on the line below it (not right beside it as appeared in the text email), paste the code in his message.

Note that the post by @Qchristensen was edited to provide improved code. So other than the fact that it no longer includes the configuration section header, you should use what's there now, not what was there before.

Doing things as I have specified here, and changing to laptop mode, resulted in the correct behavior as far as I could tell in a portable version of NVDA alpha.

GauravTheCoder commented 4 years ago

Aah, I get it. Can you please send me the gestures.ini file with correct formatting? Thank you! Regards, Gaurav Sharma

On Fri, Aug 21, 2020 at 2:46 PM Luke Davis notifications@github.com wrote:

@GauravTheCoder https://github.com/GauravTheCoder I believe I know what is wrong.

First, all your responses on this thread have been by email. That makes me think you may have based your changes on the email version of the message by @Qchristensen https://github.com/Qchristensen . If that's true, the email version was formatted incorrectly, and would have resulted in a broken gestures.ini file.

Secondly, if you based your changes on his edited post here, the edits by @Qchristensen https://github.com/Qchristensen and @feerrenrut https://github.com/feerrenrut caused a critical line to be edited out of the message, which, if left out of the config file, will also cause an invalid gestures file.

So, open your gestures file, and look for a section labeled like this:

[globalCommands.GlobalCommands]

That is what no longer appears in the message by @Qchristensen https://github.com/Qchristensen . If you don't find that section, add it to the file. Then, on the line below it (not right beside it as appeared in the text email), paste the code in his message.

Note that the post by @Qchristensen https://github.com/Qchristensen was edited to provide improved code. So other than dropping that line, you should use what's there now, not what was there before.

Doing things as I have specified here, and changing to laptop mode, resulted in the correct behavior as far as I could tell in a portable version of NVDA alpha.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nvaccess/nvda/issues/9549#issuecomment-678135538, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMBCPEEHZDPAL4H3INAZOOTSBY3PVANCNFSM4HLWDSOQ .

GauravTheCoder commented 4 years ago

Hello, OK now it works well. But there's another strange issue. When I go in a application with web elements, the NvdA in browse mode doesn't read anything. Regards, Gaurav Sharma

On Fri, Aug 21, 2020 at 2:49 PM Gaurav coolboygauravsharma27@gmail.com wrote:

Aah, I get it. Can you please send me the gestures.ini file with correct formatting? Thank you! Regards, Gaurav Sharma

On Fri, Aug 21, 2020 at 2:46 PM Luke Davis notifications@github.com wrote:

@GauravTheCoder https://github.com/GauravTheCoder I believe I know what is wrong.

First, all your responses on this thread have been by email. That makes me think you may have based your changes on the email version of the message by @Qchristensen https://github.com/Qchristensen . If that's true, the email version was formatted incorrectly, and would have resulted in a broken gestures.ini file.

Secondly, if you based your changes on his edited post here, the edits by @Qchristensen https://github.com/Qchristensen and @feerrenrut https://github.com/feerrenrut caused a critical line to be edited out of the message, which, if left out of the config file, will also cause an invalid gestures file.

So, open your gestures file, and look for a section labeled like this:

[globalCommands.GlobalCommands]

That is what no longer appears in the message by @Qchristensen https://github.com/Qchristensen . If you don't find that section, add it to the file. Then, on the line below it (not right beside it as appeared in the text email), paste the code in his message.

Note that the post by @Qchristensen https://github.com/Qchristensen was edited to provide improved code. So other than dropping that line, you should use what's there now, not what was there before.

Doing things as I have specified here, and changing to laptop mode, resulted in the correct behavior as far as I could tell in a portable version of NVDA alpha.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nvaccess/nvda/issues/9549#issuecomment-678135538, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMBCPEEHZDPAL4H3INAZOOTSBY3PVANCNFSM4HLWDSOQ .

XLTechie commented 4 years ago

@GauravTheCoder I can, but keep in mind that I can't account for any add-ons you may have installed, or any custom gestures you may have set. So if you replace your gestures.ini with this one, local changes you have made to your gesture map will be destroyed.

That said, if you want a gestures.ini file that does this one thing only, here it is. Select here to download as a .txt file, and it is pasted below in a way that will hopefully preserve formatting.

[globalCommands.GlobalCommands]
None = kb:numpad5, kb:numpad0, kb:numpad1+nvda, kb:numpadminus+nvda+shift, kb:numpad4+nvda, kb:numpadmultiply+nvda, kb:numpaddivide, kb:numpadenter+nvda, kb:numpad6+nvda, kb:numpad5+nvda, kb:numpad1+shift, kb:numpaddivide+shift, kb:numpad9+shift, kb:numpad7+nvda, kb:numpad3+shift, kb:numpadminus+nvda, kb:numpaddivide+nvda, kb:numpad8+nvda, kb:numpadplus, kb:numpad7+shift, kb:numpad2+nvda, kb:numpaddelete+nvda, kb:numpadmultiply+shift, kb:numpadmultiply
kb:pageup = kb(laptop):numpad9
kb:control+pageup = kb(laptop):control+numpad9
kb:pagedown = kb(laptop):numpad3
kb:control+pagedown = kb(laptop):control+numpad3
kb:home = kb(laptop):numpad7
kb:control+home = kb(laptop):control+numpad7
kb:end = kb(laptop):numpad1
kb:control+end = kb(laptop):control+numpad1
kb:uparrow = kb(laptop):numpad8
kb:control+uparrow = kb(laptop):control+numpad8
kb:downarrow = kb(laptop):numpad2
kb:control+downarrow = kb(laptop):control+numpad2
kb:leftarrow = kb(laptop):numpad4
kb:control+leftarrow = kb(laptop):control+numpad4
kb:rightarrow = kb(laptop):numpad6
kb:control+rightarrow = kb(laptop):control+numpad6
moveNavigatorObjectToMouse = kb(desktop):numpadmultiply+nvda
navigatorObject_previous = kb(desktop):numpad4+nvda
reviewMode_previous = kb(desktop):numpad1+nvda
navigatorObject_toFocus = kb(desktop):numpadminus+nvda
review_top = kb(desktop):numpad7+shift
navigatorObject_next = kb(desktop):numpad6+nvda
review_startOfLine = kb(desktop):numpad1+shift
leftMouseClick = kb(desktop):numpaddivide
review_nextWord = kb(desktop):numpad6
review_activate = kb(desktop):numpadenter+nvda
review_nextLine = kb(desktop):numpad9
review_previousWord = kb(desktop):numpad4
review_currentWord = kb(desktop):numpad5
review_currentLine = kb(desktop):numpad8
navigatorObject_current = kb(desktop):numpad5+nvda
navigatorObject_moveFocus = kb(desktop):numpadminus+nvda+shift
review_sayAll = kb(desktop):numpadplus
navigatorObject_firstChild = kb(desktop):numpad2+nvda
navigatorObject_currentDimensions = kb(desktop):numpaddelete+nvda
toggleRightMouseButton = kb(desktop):numpadmultiply+shift
navigatorObject_parent = kb(desktop):numpad8+nvda
moveMouseToNavigatorObject = kb(desktop):numpaddivide+nvda
rightMouseClick = kb(desktop):numpadmultiply
review_previousLine = kb(desktop):numpad7
toggleLeftMouseButton = kb(desktop):numpaddivide+shift
review_endOfLine = kb(desktop):numpad3+shift
review_nextCharacter = kb(desktop):numpad3
review_currentCharacter = kb(desktop):numpad2
review_previousCharacter = kb(desktop):numpad1
reviewMode_next = kb(desktop):numpad7+nvda
review_bottom = kb(desktop):numpad9+shift
XLTechie commented 4 years ago

@GauravTheCoder I have no idea why browse mode is acting up for you. Maybe try a COM Reg Fix? (NVDA+N, T, R, enter, follow prompts). This should not effect that as far as I know, unless you have an add-on that is upset by gesture changes. Try restarting without add-ons, and see if that resolves the browse mode issue if it persists after the COM Reg Fix.

feerrenrut commented 4 years ago

Thanks for pointing out the mistake in that edit @XLTechie I have amended it.

XLTechie commented 3 years ago

I meant to report this here back in September 2020, but it slipped my mind. I wrote an add-on to provide the toggle feature asked for in part of this thread. More information available on the official Numpad Nav Mode add-on page.

louie-prog commented 3 years ago

yes. I am using that add-on. it is nice! thanks to this.

On 5/8/21, Luke Davis @.***> wrote:

I meant to report this here back in September 2020, but it slipped my mind. I wrote an add-on to provide the toggle feature asked for in part of this thread. More information available on the official Numpad Nav Mode add-on page.

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/nvaccess/nvda/issues/9549#issuecomment-835169750

ivnc commented 3 years ago

A Spanish-speaking user has recently asked if even this add-on could be integrated into the NVDA core, now that the code has been already written, what do you think? Another alternative to fix this, perhaps the one most supported by the public, is to design an hybrid layout, as mentioned before in this thread.

Regards.

XLTechie commented 3 years ago

If @nvaccess wants this or a similar functionality in core, I would be willing to adjust it into a pull request. However, @Qchristensen raises some interesting concerns in his initial comment here, so please consider that. If I did try to add this to core, the gesture would definitely be unassigned by default.

I would need to hear it from @feerrenrut or one of the others though, to make it worth the time of adapting for core.

feerrenrut commented 3 years ago

Let's leave this as an addon for now. We plan to take a look at the whole approach to keyboard layouts in the future, we'll consider this again then.

Gene703122 commented 6 months ago

No one has discussed how this feature might make NVDA more appealing to JAWS users who are switching to NVDA or learning to use both. In JAWS a widely used read to end command is JAWS key, numpad 2. In the Numpad Nav Mode add-on this command is made available. A lot of JAWS users might feel more comfortable using NVDA as new users if they could continue to use this widely used command.

Also, some JAWS users use commands like control numpad home, control numpad end, and numpad up and down arrows.

The toggle could be a command that is unlikely to be accidentally invoked. The Numpad Nav Mode add-on uses the command alt, NVDA key, numpad plus, a very unlikely command to be accidentally or inadvertently executed. If the feature were incorporated into the core, such a command could be used.

The suggestion that the numpad be returned to Windows functions when in laptop layout and not in desktop layout is a bad one. It assumes, with no basis, that no one using the desk top layout will want to use the numpad in Windows ways. What about the JAWS users I spoke of? I also don't want to assume that some other users might not want the choice. We simply don't know. This idea, if implemented, unnecessarily limits the choice of the user. A toggle doesn't limit the user. This sort of limitation of user choice should not be imposed unless, perhaps, there is a reasonable possibility that the feature in question may cause serious problems for a lot of users. I see no reason that this feature might.

There is a web page that gives information to make the transition to NVDA from JAWS easier for JAWS users. Being able to add this feature to the discussion might make NVDA more appealing and those thinking about switching or learning NVDA who use JAWS might have a more positive outlook on doing so.

XLTechie commented 6 months ago

@michaelDCurran, @seanbudd, can one of you comment on what Reef was talking about in https://github.com/nvaccess/nvda/issues/9549#issuecomment-857364003, as it may provide us some direction in this and other issues? This matter has been pending for three years or more because of his comment, with no further clarification of NV Access's plans.

LeonarddeR commented 6 months ago

@Gene703122 wrote:

The suggestion that the numpad be returned to Windows functions when in laptop layout and not in desktop layout is a bad one. It assumes, with no basis, that no one using the desk top layout will want to use the numpad in Windows ways.

Disabling the numpad functions in desktop layout means that you can't access certain functions in that layout until you enable the numpad functionality again.

The more I think about it, the more I think a toggle for the numpad functionality would be a good idea though. If that covers all the cases and is a proven concept in an add-on, I guess it's fine.

Adriani90 commented 6 months ago

Closing in favor of #16479.