Re: Support for synaptic touchscreen in HTC dream
From: Andreas Mohr <hidden>
Date: 2009-07-14 20:33:05
Also in:
lkml
Hi, On Tue, Jul 14, 2009 at 10:25:45PM +0200, Andreas Mohr wrote:
Hi,quoted
+ ts->snap_down[swapped] = -inactive_area_left; + ts->snap_up[swapped] = max_x + inactive_area_right; + ts->snap_down[!swapped] = -inactive_area_top; + ts->snap_up[!swapped] = max_y + inactive_area_bottom; + ts->snap_down_on[swapped] = snap_left_on; + ts->snap_down_off[swapped] = snap_left_off; + ts->snap_up_on[swapped] = max_x - snap_right_on; + ts->snap_up_off[swapped] = max_x - snap_right_off; + ts->snap_down_on[!swapped] = snap_top_on; + ts->snap_down_off[!swapped] = snap_top_off; + ts->snap_up_on[!swapped] = max_y - snap_bottom_on; + ts->snap_up_off[!swapped] = max_y - snap_bottom_off;Could this perhaps be represented by _one_ struct definition and two representations of it, one for swapped and one for non-swapped case or so? (although sometimes it´s reverted logic, might need more thought) Sounds like an awful lot of repeated array calculations for no overly good reason (unless gcc happens to fully optimize it into oblivion automatically).
-ETOOMUCHBEER Of course we need to swap orthogonal members individually, thus this kind of code. However maybe there´s still a more elegant way of doing this. Andreas Mohr