Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Re: FS#11696 - scrollwheel not responding on e200 v1

Re: FS#11696 - scrollwheel not responding on e200 v1

From: Thomas Martitz <thomas.martitz_at_student.htw-berlin.de>
Date: Thu, 04 Nov 2010 21:43:22 +0100

Am 04.11.2010 21:32, schrieb Magnus Holmgren:
> Hi,
>
> I had a look at FS#11696, and I may have found the cause. My theory is
> that button release events aren't always posted, e.g., if repeat
> events haven't been processed while the UI is busy with other things.
> This in turn can cause get_action_worker in action.c from ignoring
> things like wheel events until a release is seen on the new screen
> (see the if statement on line 208 using r28144). To fix that, the
> patch makes all BUTTON_REL events force-posted (in button_try_post).
> It looks promising in some quick testing...
>
> I'd appreciate if someone more familiar with the button.c code (and
> action.c, I guess) could take a look at it, and see if it makes sense.
> Oh, and testers would be nice too, of course. :)
>
> Link to bug report: http://www.rockbox.org/tracker/task/11696
>
>

Scrollwheels are different. The buttons are posted off the normal
button_tick() code, the drivers post to the button queue on their own
(with acceleration as extra data). And they never post BUTTON_REL, only
BUTTON_SCROLL_FWD or BUTTON_SCROLL_FWD|BUTTON_REPEAT (same for
BUTTON_SCROLL_BACK).

Best regards.
Received on 2010-11-04


Page was last modified "Jan 10 2012" The Rockbox Crew
aaa