Return-Path: From: Ed Tomlinson To: Dmitry Torokhov Subject: Re: [PATCH 1/1] Enable xy scrolling for Apple Magic Mouse Date: Mon, 15 Feb 2010 07:50:25 -0500 Cc: Michael Poole , Jiri Kosina , linux-input@vger.kernel.org, Marcel Holtmann , linux-bluetooth@vger.kernel.org, linux-kernel@vger.kernel.org References: <201002141858.26917.edt@aei.ca> <20100215071850.GB9135@core.coreip.homeip.net> In-Reply-To: <20100215071850.GB9135@core.coreip.homeip.net> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Message-Id: <201002150750.26142.edt@aei.ca> List-ID: On Monday 15 February 2010 02:18:50 Dmitry Torokhov wrote: > On Sun, Feb 14, 2010 at 06:58:26PM -0500, Ed Tomlinson wrote: > > On Sunday 14 February 2010 17:51:15 Michael Poole wrote: > > > Ed Tomlinson writes: > > > > > > > Hi, > > > > > > > > Here is a patch that enables xy scrolling with the magic mouse. I have also > > > > changed the accelleration logic to work better with xy scrolling. > > > > > > Hi Ed, > > > > > > Your other patch to call input_unregister_device() looks good -- thanks! > > > > Thanks. One question about it though. Do we have to check if msc is null before > > the unregister? > > If it is NULL whan remove() is running there are much bigger problems > with the driver/HID subsystem. > > > > > > I've never used a horizontal scroll wheel -- what are the common uses > > > for it? Why should the acceleration be separate for the two directions > > > rather than using the same factor? Why does the kernel need to emulate > > > this rather than having user-space implement the emulation? > > > > Its usefull for scrolling left and right while browsing. If you use kde it can > > be used to scroll between applications on the taskbar. Here most applications > > with a horizontial scrollbar work as expected. > > > > I first tried with a single acceleration value for both axies. It leads to confusing > > things happening. For example. I quickly scroll down, then nudge the > > window to the left. This works as expect with two values. With one the > > nudge is accelerated and moves too far. > > > > My personal goal is to have the basic, apple defined, gestures working > > from kernel space. This way the device works as expected without needing > > to fiddle with X or other managers (think wayland and/or chromeOS). > > I am not sure if this is the desired approach. The current idea is to > export useable but minimally processed events to userspace and let them > be turned into gestures there (by evdev, synaptics driver and so forth). I would go along with this if the code to add the emulation in kernel was large or complex. Its not. About 30 more lines should add the pgup/pgdn code. Thanks Ed