Skip to content

Commit

Permalink
HID: magicmouse: disable and add module param for scroll acceleration
Browse files Browse the repository at this point in the history
Scroll acceleration is unique to the magicmouse driver, and is
unintuitive to a user who is unaware of the functionality. Thus, disable
it by default, but add a module parameter to enable it for power users
who want it.

Signed-off-by: Chase Douglas <[email protected]>
Acked-by: Michael Poole <[email protected]>
Signed-off-by: Jiri Kosina <[email protected]>
  • Loading branch information
Chase Douglas authored and Jiri Kosina committed Jun 4, 2010
1 parent ef566d3 commit 9846f35
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion drivers/hid/hid-magicmouse.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,10 @@ static bool emulate_scroll_wheel = true;
module_param(emulate_scroll_wheel, bool, 0644);
MODULE_PARM_DESC(emulate_scroll_wheel, "Emulate a scroll wheel");

static bool scroll_acceleration = false;
module_param(scroll_acceleration, bool, 0644);
MODULE_PARM_DESC(scroll_acceleration, "Accelerate sequential scroll events");

static bool report_touches = true;
module_param(report_touches, bool, 0644);
MODULE_PARM_DESC(report_touches, "Emit touch records (otherwise, only use them for emulation)");
Expand Down Expand Up @@ -177,7 +181,9 @@ static void magicmouse_emit_touch(struct magicmouse_sc *msc, int raw_id, u8 *tda
switch (tdata[7] & TOUCH_STATE_MASK) {
case TOUCH_STATE_START:
msc->touches[id].scroll_y = y;
msc->scroll_accel = min_t(int, msc->scroll_accel + 1,
if (scroll_acceleration)
msc->scroll_accel = min_t(int,
msc->scroll_accel + 1,
ARRAY_SIZE(accel_profile) - 1);
break;
case TOUCH_STATE_DRAG:
Expand Down

0 comments on commit 9846f35

Please sign in to comment.