Hi Hans, pos_x[] is not non-inialized, it may be previous pos_x, it is still ok for getting dx. "n" var is trying to reduce "untouch" sensor data for post proccessing. I attach a new patch may be more clear, also fixed unexpected movement when button status or ntouch changing. Cheers, Huang Wen Hui 2014-01-30 Hans Petter Selasky <hps_at_bitfrost.no>: > Hi Huang, > > > On 01/30/14 06:56, Huang Wen Hui wrote: > >> Hans, >> >> Thanks for you take care of it and commit it! I found two problems: >> >> 1. The selection is not expected when selection with 2 fingers sometimes. >> 2. Unexpected scrolling when Click with 2 fingers. >> >> This patch can fix that. The var "n" modify to "ntouch" seems to be >> necessary. >> >> > Right, but aren't we then accessing non-initialised sc->pos_x[] data ? > > Because if ntouch == 2, n can be less than or equal to 2, due to continue > in for-loop above. What is the purpose of the "n" variable? > > Can you explain? > > - if (n == 2) { > + if (ntouch == 2) { > sc->distance = max(sc->distance, max( > abs(sc->pos_x[0] - sc->pos_x[1]), > abs(sc->pos_y[0] - sc->pos_y[1]))); > > --HPS > > >> Cheers, >> Huang Wen Hui >> >> >> 2014-01-29 Hans Petter Selasky <hps_at_bitfrost.no> >> >> On 01/29/14 09:49, Lundberg, Johannes wrote: >>> >>> Hi >>>> >>>> I tested the driver on a 2012 Macbook Air 11" and it works great! Good >>>> job! >>>> >>>> Is there a way to disable click-by-touch? I always preferred clicking >>>> with >>>> the physical button that is built in to the pad. >>>> >>>> >>>> Hi, >>> >>> I've added an "#if 0" around the 1 finger tap code until further. Maybe >>> this feature can be tunable? >>> >>> I fixed the code style, added some range checks and cleared some buffer >>> issues. >>> >>> When you assign a signed value to an unsigned variable, you should range >>> check it, because the sign might cause an overflow when you use it later >>> on. >>> >>> int8_t x = -1; >>> >>> uint32_t t = x; >>> >>> "t" is now "0xffffffffU" and not "255". >>> >>> Tested the code on my MacBookPro. Hope I didn't break anything. If so, >>> send a patch to freebsd-usb. >>> >>> http://svnweb.freebsd.org/changeset/base/261260 >>> >>> To get the touchpad working with Xorg, I needed to re-compile HALD with >>> the attached patch. >>> >>> kwm: Can you get the attached patch into ports? >>> >>> Auto-loading of wsp via devd will be done later. Simply need to >>> re-generate usb.conf in /etc ... >>> >>> --HPS >>> >>> >>> >>> >>> _______________________________________________ >>> freebsd-current_at_freebsd.org mailing list >>> http://lists.freebsd.org/mailman/listinfo/freebsd-current >>> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_ >>> freebsd.org" >>> >> >
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:46 UTC