Live data from Hacker News

Neverclick: Desktop application for performing mouse actions with your keyboard

github.com

31–40 of 67 posts

Re: Neverclick: Desktop application for performing mouse actions with your keyboard

#31

Slightly related. On wayland based linux desktops this would never work because an app is not allowed to hijack the mouse pointer to dispatch events. I believe only the compositor is allowed to do that. I know, because I wanted to automate a GUI task using PyAutoGUI and it wouldnt work on wayland no matter what.

What about wp_pointer_warp_v1? That should be supported in some compositors. But not sure how to actually "send" the click event. I often try a session with Labwc/LxQt instead of my Openbox/LxQt, and while there is progress, still not fully usable, so still no Wayland for me. But with X11, I can at least add xvfb, xdotool, and other utils, and AI has no problem writing (and testing) a GUI for me.

Oh wp_pointer_warp_v1 works fine when you want to move the cursor that is not a problem. One application can simply say move the mouse to a different window but it cannot say click.

So in the sense as far as I understand it is that in wayland one application is not allowed to use the input of IO devices to interact with other applications.

Re: Neverclick: Desktop application for performing mouse actions with your keyboard

#32

Slightly related. On wayland based linux desktops this would never work because an app is not allowed to hijack the mouse pointer to dispatch events. I believe only the compositor is allowed to do that. I know, because I wanted to automate a GUI task using PyAutoGUI and it wouldnt work on wayland no matter what.

I wonder if blender works on wayland, because it has a feature that makes the mouse cursor "loop" across the window if you are dragging something.

That features works completly fine when I use Blender(5.2) and wayland cant say if older versions might not work.

Re: Neverclick: Desktop application for performing mouse actions with your keyboard

#33

Slightly related. On wayland based linux desktops this would never work because an app is not allowed to hijack the mouse pointer to dispatch events. I believe only the compositor is allowed to do that. I know, because I wanted to automate a GUI task using PyAutoGUI and it wouldnt work on wayland no matter what.

This is why I'm still on X11, the lack of deep level accessibility/automation is still a big hurdle when it comes to Wayland.

Yea, one way I saw you can circumvent it is by running in xwayland mode. But that can come with its own problems.

Re: Neverclick: Desktop application for performing mouse actions with your keyboard

#35

Earlier quoted context omitted.

What about wp_pointer_warp_v1? That should be supported in some compositors. But not sure how to actually "send" the click event. I often try a session with Labwc/LxQt instead of my Openbox/LxQt, and while there is progress, still not fully usable, so still no Wayland for me. But with X11, I can at least add xvfb, xdotool, and other utils, and AI has no problem writing (and testing) a GUI for me.

Oh wp_pointer_warp_v1 works fine when you want to move the cursor that is not a problem. One application can simply say move the mouse to a different window but it cannot say click. So in the sense as far as I understand it is that in wayland one application is not allowed to use the input of IO devices to interact with other applications.

So, "security" strikes again. Windows shell not be moved, pointers shell not be clicked, but you can move the mouse if you want to.

Re: Neverclick: Desktop application for performing mouse actions with your keyboard

#36
post #29

Developing a muscle memory is the main aspect of keyboard usage. Does this app account for this? i.e. how repeatable are those key-shortcuts? Seems like it's random.

It seems to implement the Avy (https://github.com/abo-abo/avy) model of input. It can't be improved very much, because when dealing with dynamic data, you can't make things repeatable. The idea of "muscle memory" for things that change is kind of fallacious. The best you can do is ensure some predictability in the subset of keys you're using for element selection.

Re: Neverclick: Desktop application for performing mouse actions with your keyboard

#37

I understand the app is only installable on Windows, but what is the thinking behind not allowing downloads on non-Windows devices? I was going to save a copy of the installer to my Google Drive from my phone and the download button doesn't work. Seems like an odd choice that could hinder adoption. (This is partially an assumption on my part as I currently don't have an unrestricted Windows machine to verify, but con…

I think you can get the source directly from github, probably even a pre-compilled installer from the releases page in the github project.

Re: Neverclick: Desktop application for performing mouse actions with your keyboard

#39

I understand the app is only installable on Windows, but what is the thinking behind not allowing downloads on non-Windows devices? I was going to save a copy of the installer to my Google Drive from my phone and the download button doesn't work. Seems like an odd choice that could hinder adoption. (This is partially an assumption on my part as I currently don't have an unrestricted Windows machine to verify, but con…

I think you can get the source directly from github, probably even a pre-compilled installer from the releases page in the github project.

You cannot. No releases and all the code files are "placeholder.cpp"

Re: Neverclick: Desktop application for performing mouse actions with your keyboard

#40
post #29

Developing a muscle memory is the main aspect of keyboard usage. Does this app account for this? i.e. how repeatable are those key-shortcuts? Seems like it's random.

Neverclick dev here. It's not random, a lot of thought went into how the key combinations are generated and assigned.

When Neverclick generates the key combinations, it prioritizes keys in the center of the keyboard. It then sorts the key combinations from most to least convenient (so for example JJ and FF would be at the top of the list). It then assigns the most convenient key combinations to UI elements closest to the center of the screen because that's where people are most likely to want to perform a mouse action.

As the other commenter already said, with dynamic data, you can't really make things repeatable. However, it's still really cozy to use and way better than if it were randomly generated and assigned (which is how it used to work before it was updated to the new system).

Post reply on HN