#1625 closed bug (fixed)
Scrolling slow --> alright, scrolling fast, changes vert to Horizontal
Reported by: | hai_cu_be | Owned by: | marcusoverhagen |
---|---|---|---|
Priority: | normal | Milestone: | R1/alpha1 |
Component: | Drivers/Mouse/PS2 | Version: | R1/pre-alpha1 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description (last modified by )
Tested in VmWare R22908.
I opened up a small window with the "Bin" folder. Small so that it's scrollable horizontally as well as vertically.
Now, scrolling slowly with the mouse wheel will affect the vertical scroller. Scrolling very quickly will then also start affecting the horizontal scroller. Does not make sense. Reproducable for you?
Change History (13)
comment:1 by , 17 years ago
comment:2 by , 17 years ago
Milestone: | R1 → R1/alpha1 |
---|
Created R1/alpha1 ticket #1913, which might be related.
comment:3 by , 17 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Can not reproduce anymore. I guess I fixed this too in hrev24841.
comment:4 by , 17 years ago
Description: | modified (diff) |
---|---|
Resolution: | fixed |
Status: | closed → reopened |
Still reproducible in hrev24949. Tested in VMware. To clarify the description: You have to scroll with the mouse wheel. At the same time I sometimes get the following in the syslog:
ps2: strange mouse data, y-delta 142, trying resync ps2: bad mouse data, trying resync
So it might rather be PS/2 than interface kit/app server related.
comment:5 by , 17 years ago
I can definitely reproduce this on real hardware with a PS2 mouse in hrev25215
Dell Optiplex gx270, P4 2.8ghz, 1gb ram, i865 video
While testing it, I didn't see any errors in the syslog or serial output though.
comment:6 by , 17 years ago
On the exact same machine, replacing the PS2 mouse with a USB mouse makes the unwanted horizontal scrolling behavior go away for me.
comment:7 by , 17 years ago
Component: | Applications/Tracker → Drivers/Mouse/PS2 |
---|
I had a short look at the driver, and it is indeed not correctly evaluating the wheel data in ps2_packet_to_movement(). It does use the X wheel without having enabled it before; a mouse in Intellimouse mode does not have that wheel. Marcus, do you want to fix it for real, or should I add a quick fix for this?
comment:8 by , 17 years ago
Owner: | changed from | to
---|---|
Status: | reopened → new |
comment:9 by , 17 years ago
Status: | new → assigned |
---|
Hi Axel,
I can't fix this until 22:00, but I believe the correct code would be:
int wheel_ydelta = 0; int wheel_xdelta = 0;
[...]
if (cookie->packet_size == PS2_PACKET_INTELLIMOUSE) {
pos->wheel_ydelta = (int)(packet[3] & 0x07); if (packet[3] & 0x08)
pos->wheel_ydelta |= (-1 & ~0x07);
}
[...]
pos->wheel_ydelta = wheel_ydelta; pos->wheel_xdelta = wheel_xdelta;
I don't have a mouse with horizontal scroll wheel yet, and implementing horizontal scrolling will need more initialization.
comment:11 by , 17 years ago
Definitely fixes it for me!
Also fixes the related firefox issue reported in #2171
I can reproduce this too.