Opened 3 years ago

Last modified 3 years ago

#17472 new enhancement

please add support for "PointerKeys"

Reported by: bitemyshinymetal Owned by: stippi
Priority: normal Milestone: Unscheduled
Component: User Interface Version: R1/beta3
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

Hi, I know it is an unusual case not to have a mouse but, I think it would be a good idea to implement the option to use "PointerKeys", I, personally, don't have a mouse, and I had to install FreeBSD with xfce to be able to use my computer. And, you could also add a "control panel". Thanks for reading, kind contributors to the Haiku project.

Attachments (1)

KeyCursor-1.1.zip (48.9 KB ) - added by bipolar 3 years ago.
KeyCursor 1.1, from 2004, intended to be used on BeOS R5. Includes source code.

Download all attachments as: .zip

Change History (9)

comment:1 by nephele, 3 years ago

Keywords: Mouse raton pointerkeys pointer keys support removed
Platform: x86-64All

What is a pointer key? Do you mean to have a way to control the mouse cursor with keyboard keys?

comment:2 by bipolar, 3 years ago

Moving the mouse pointer with the keyboard can be achieved by using the "Shortcuts" application, albeit its not THAT intuitive, and the cursor movement doesn't "feels" totally right, at least IMO.

I should try to find my old backups, and see if I can resuscitate the "KeyCursor 1.2" package that I had published on BeBits long time ago (not the original author, just a late maintainer).

It had, IMO, a nice feeling (it implemented pointer acceleration).

I'll see if it works on Haiku (or if I can do some quick fix), and I'll either add it here as an attachment, or see if I can get it accepted in HaikuPorts or something.

Edit: and I should also try to find my "TwoWheels" input filter, so I can properly use my two-wheeled mice too! (seem that built-in support got cut off many years ago :-( ).

Last edited 3 years ago by bipolar (previous) (diff)

in reply to:  1 comment:3 by bitemyshinymetal, 3 years ago

Replying to nephele:

What is a pointer key? Do you mean to have a way to control the mouse cursor with keyboard keys?

Yup, I don't have money to spend on a mouse, if you know of any way to use them in Haiku please let me know.

in reply to:  2 ; comment:4 by bitemyshinymetal, 3 years ago

Replying to bipolar:

Moving the mouse pointer with the keyboard can be achieved by using the "Shortcuts" application, albeit its not THAT intuitive, and the cursor movement doesn't "feels" totally right, at least IMO.

I should try to find my old backups, and see if I can resuscitate the "KeyCursor 1.2" package that I had published on BeBits long time ago (not the original author, just a late maintainer).

It had, IMO, a nice feeling (it implemented pointer acceleration).

I'll see if it works on Haiku (or if I can do some quick fix), and I'll either add it here as an attachment, or see if I can get it accepted in HaikuPorts or something.

Edit: and I should also try to find my "TwoWheels" input filter, so I can properly use my two-wheeled mice too! (seem that built-in support got cut off many years ago :-( ).

Thanks mate, it means a lot to me :P

in reply to:  4 ; comment:5 by bipolar, 3 years ago

Ok, just a follow-up. I managed to find some copies of my old "KeyCursor" on some scratched CD-Rs. Couldn't make it work with Haiku beta3 64 bits (after fighting with GCC 11 for a while):

Placed the addon in ~/config/non-packaged/addons/input_server/{device|filter}, restarted the input_server... no luck, it seems to not get loaded.

Tried placing them in /boot/system/non-packaged/addons/input_server/{device|filter}, restarted the input_server... got some nasty KDL due to one of the threads of KeyCursorDevice... had to reset the computer the hard way (reset button).

I was never a real C/C++ developer, just a tinkerer, and haven't really touched C/C++ code since 2005 :-D, so I SUCK at this, so I REALLY doubt I can make this work on modern Haiku.

But... What I'll do is, point in the right direction, and link to two resources that should make it a breeze, to any Haiku developer, to implement proper support for "Mouse Keys".

1: http://ftp.ntua.gr/pub/BeOS/samples/input_server/KeyCursor.zip

2: https://en.wikipedia.org/wiki/Mouse_keys

The first link is the ORIGNAL KeyCursor, made by Be, Inc. as a sample code. It cames with an "article.txt" explaining how it works ("Be Sample Code License" !!!).

My version just added a basic Preference app, and simulating scroll wheels with the Page Up/Down keys. I'll just attach my version here too, in case someone can make any use of it (it is from 2004, intended to work on BeOS, not Haiku, so don't run the {un}installer scripts).

The second link explains how X Window does it. I think the button handling and keymapping is better than what KeyCursor had (arrow-keys for movement, and space-bar for clicks). Would be nice to have one that follows X Windows layout.

Replying to bitemyshinymetal:

Thanks mate, it means a lot to me :P

Sorry for not being more helpful, but I better not keep you waiting in vain. Man, I wish I could do more, but... my aging brain ain't helping :-P

by bipolar, 3 years ago

Attachment: KeyCursor-1.1.zip added

KeyCursor 1.1, from 2004, intended to be used on BeOS R5. Includes source code.

in reply to:  5 comment:6 by bitemyshinymetal, 3 years ago

Replying to bipolar:

Ok, just a follow-up. I managed to find some copies of my old "KeyCursor" on some scratched CD-Rs. Couldn't make it work with Haiku beta3 64 bits (after fighting with GCC 11 for a while):

Placed the addon in ~/config/non-packaged/addons/input_server/{device|filter}, restarted the input_server... no luck, it seems to not get loaded.

Tried placing them in /boot/system/non-packaged/addons/input_server/{device|filter}, restarted the input_server... got some nasty KDL due to one of the threads of KeyCursorDevice... had to reset the computer the hard way (reset button).

I was never a real C/C++ developer, just a tinkerer, and haven't really touched C/C++ code since 2005 :-D, so I SUCK at this, so I REALLY doubt I can make this work on modern Haiku.

But... What I'll do is, point in the right direction, and link to two resources that should make it a breeze, to any Haiku developer, to implement proper support for "Mouse Keys".

1: http://ftp.ntua.gr/pub/BeOS/samples/input_server/KeyCursor.zip

2: https://en.wikipedia.org/wiki/Mouse_keys

The first link is the ORIGNAL KeyCursor, made by Be, Inc. as a sample code. It cames with an "article.txt" explaining how it works ("Be Sample Code License" !!!).

My version just added a basic Preference app, and simulating scroll wheels with the Page Up/Down keys. I'll just attach my version here too, in case someone can make any use of it (it is from 2004, intended to work on BeOS, not Haiku, so don't run the {un}installer scripts).

The second link explains how X Window does it. I think the button handling and keymapping is better than what KeyCursor had (arrow-keys for movement, and space-bar for clicks). Would be nice to have one that follows X Windows layout.

Replying to bitemyshinymetal:

Thanks mate, it means a lot to me :P

Sorry for not being more helpful, but I better not keep you waiting in vain. Man, I wish I could do more, but... my aging brain ain't helping :-P

Oh, still, thank you very much for your effort.

comment:7 by diver, 3 years ago

KeyCursor is now available in HaikuDepot.

in reply to:  7 comment:8 by bipolar, 3 years ago

Replying to diver:

KeyCursor is now available in HaikuDepot.

Thanks for the heads-up, diver! And a lots of thanks to Gerasim (3dEyes) for fixing it and adding the recipe to HaikuPorts!!! Much appreciated!

Just some info for anyone interested (until I file proper bug reports OR I'm able to do a PR myself :-D):

I've just tested it on both VirtualBox, and on real hardware (Haiku Beta3, 64 bits).

If using VirtualBox, make sure to set the pointing device to "PS/2 Mouse", otherwise moving the cursor works, but "clicking" does not (at least, that's what I've noticed using the "USB Tablet" option).

In both hardware and VM, only SINGLE click seem to work for both "primary button" (spacebar) and "secondary button" (SHIFT+spacebar). I can't make it register a double-click no matter how slow/fast I try to "double click".

As a workaround (to be able to actually open things...), use the primary button click to "select" items, and hit ENTER to actually open them.

Replying to bitemyshinymetal:

Oh, still, thank you very much for your effort.

Let us thank Gerasim for the great assist!!!

bitemyshinymetal: Actually installing Haiku without a pointing device might be quite tricky I would guess. Maybe you can borrow a mouse, install Haiku, update, install KeyCursor, return the mouse?

That, or you might want to try using a VM with access to the HDD/SDD [1], from an OS that has "pointer keys" working already, and install Haiku that way? (remember to update, and install KeyCursor from HaikuDepot).

It is not ideal, and if Haiku grows in users big enough, a more complete accessibility package/option would be required, but in the mean time... KeyCursor will have to do :-D

[1] I use this method to install OSes quite often, usually due to my lack of spare pendrives.

Note: See TracTickets for help on using tickets.