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

Scrolling does not work when mouse is moving. #1044

Open
xasnev opened this issue Jan 27, 2025 · 14 comments
Open

Scrolling does not work when mouse is moving. #1044

xasnev opened this issue Jan 27, 2025 · 14 comments

Comments

@xasnev
Copy link

xasnev commented Jan 27, 2025

With 'scroll up' or 'scroll down' rebound to a button or the scroll wheel (with repeat macro), scrolling does not work when the mouse is being moved. So when cursor is (slightly) moving, even by accident, scrolling will not work.

Image

@sezanzeb
Copy link
Owner

sezanzeb commented Jan 28, 2025

Can't reproduce on Kubuntu 24.10 KDE Wayland. Might depend on the desktop environment.

@xasnev
Copy link
Author

xasnev commented Jan 30, 2025

I tested again and could reproduce the issue in usb-stick environment of:
-Linux Mint Cinnamon 22.1 (latest)
-Linux Mint MATE 22.1 (latest)
-Ubuntu 24.04.01 (latest LTS). I think the standard desktop environment is GNOME or something?

I also tested a different mouse. Same issue.

I got rid of the 'repeat' macro and simply put 'wheel(up,50)'. Same issue.

Would this give you any hint about what might cause this? If you would like me to test something else, please let me know.

Additionally, if there's a better way of moving scroll functionality to a button, please suggest me how. I'm trying to fix 2 things with this macro:
1 Increase the number of lines to scroll per 'notch' of the scroll wheel (or button press).
2 To skip the first 'notch' of the scroll wheel doing nothing upon opening a new screen, as described in the link below.
https://forums.linuxmint.com/viewtopic.php?t=427777

Thanks in advance.

@xasnev
Copy link
Author

xasnev commented Jan 30, 2025

I just found out, by reading the 'combinations' chapter in the link below, that in order to scroll while moving, I actually need to record it that way. And this does work (see screenshot). Any option to do this conveniently, without doing 1 recording per mouse direction?

https://github.com/sezanzeb/input-remapper/blob/HEAD/readme/usage.md

Image

@sezanzeb
Copy link
Owner

I just found out, by reading the 'combinations' chapter in the link below, that in order to scroll while moving, I actually need to record it that way.

Hm, I think this is a misunderstanding. This shouldn't be required to do.

Share the output of input-remapper-control --version please

@sezanzeb
Copy link
Owner

Also, the wheel macro scrolls while a key is being pressed.

Using a wheel as input will consider the wheel as a pressed key while you scroll it.

Doing repeat(100, wheel(down, 100)) means that

  • it will output wheel-events, while you scroll your input wheel
  • once you stop using your input wheel, it will repeat it 99 more times
  • but since you aren't using your input wheel, wheel(down, 100) won't do anything.

So repeat(1, wheel(down, 100)) should have the same effect as repeat(10000, wheel(down, 100)). You should be able to just use wheel(down, 100) as your macro.

@sezanzeb
Copy link
Owner

What are "Wheel Down" and "Wheel Up" mapped to?

@xasnev
Copy link
Author

xasnev commented Jan 31, 2025

input-remapper-control --version
input-remapper 2.0.1  https://github.com/sezanzeb/input-remapper
python-evdev 1.7.0

(I'm using Linux Mint 22 Wilma with Cinnamon)

Regarding not having to use the repeat() macro, I had the impression this was not needed. I just took it out and indeed, it still works the same.

I now have the mappings as follows:
Wheel Down = Disable
Wheel HI RES + = wheel(up,100)
Wheel HI RES - = wheel(down,100)
Wheel Up = Disable

@xasnev
Copy link
Author

xasnev commented Jan 31, 2025

OK, I just managed to get a change in behavior, but still not 100% right.

I now have the mappings as follows:
Wheel Down = wheel(down,100)
Wheel HI RES + = wheel(up,100)
Wheel HI RES - = wheel(down,100)
Wheel Up = wheel(up,100)

I can now scroll while moving the mouse! However, the distance scrolled while moving the mouse is 50% of the distance scrolled when keeping the mouse still.

So I thought, let's turn it around:
Wheel Down = wheel(down,100)
Wheel HI RES + = disable
Wheel HI RES - = disable
Wheel Up = wheel(up,100)

But this creates again the original situation where moving the mouse has no scrolling at all.

@xasnev
Copy link
Author

xasnev commented Jan 31, 2025

Additionally, with mapping as follows:
Wheel Down = wheel(down,100)
Wheel HI RES + = wheel(up,100)
Wheel HI RES - = wheel(down,100)
Wheel Up = wheel(up,100)

When moving two full circles with the mouse and then turning the scroll wheel one notch (while keeping the mouse moving at all times), no scroll is registered every 2nd notch. (This is quite hard to do and might not be a realistic scenario, but this description might trigger an idea for you)

Changing mouse direction has an effect on scrolling? When I turned off injection from Input Remapper, this behavior disappeared again (every notch registered when moving circles).

@sezanzeb
Copy link
Owner

Hm... weird.

Gnome, MATE and Cinnamon all have in common that they are GTK desktops. I just tried it with gedit, a GTK app, and still couldn't reproduce it. I'll try later in a vm with xfce, which is also based on GTK.

@sezanzeb
Copy link
Owner

In the meantime, you could try to install the latest version from github to see if it works there.

@sezanzeb
Copy link
Owner

I think 24.04 is using X11 instead of wayland. The issue might be related to X11 and not GTK. I can also try this later.

@xasnev
Copy link
Author

xasnev commented Jan 31, 2025

Thanks so far. My situation has already improved as I can now (slowly) scroll while the mouse is moving.

I just deinstalled Input Remapper and reinstalled it from the Github .deb file. I received the error below. After the error, I can still startup Input Remapper and it functions the same as before (with issues as described here).

Installing from the Linux Mint Software Manager works without error and gives me the message that its version is newer than the one manually downloaded from Github (Version 2.0.1-1 on Linux Mint Software Manager vs 2.0.1 on Github).

Image

@sezanzeb
Copy link
Owner

sezanzeb commented Jan 31, 2025

The deb file from github is for 2.0.1. You'll have to clone the repo and install input-remapper via the command line, as shown in the readme.

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

No branches or pull requests

2 participants