Re: [PATCH 1/1]: input: add support for VirtualBox touchscreen emulation to the Lifebook driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le mercredi 24 février 2010 à 02:02 -0800, Dmitry Torokhov a écrit :
> On Tue, Feb 23, 2010 at 09:55:33PM +0100, Michael Thayer wrote:
> > I'm not sure, if we ended up doing a completely new device, how different it
> > would end up being.  Emulating a touchscreen or a tablet makes sense for us as
> > these are both something known, which will work with existing systems without
> > too much tweaking
> > [snip]
> But the virtual mouse is not a touchscreen or a tablet, it behaves
> differently.
What would you suggest emulating that exists in the real world?  And might a
tablet not be better than a touchscreen, given that it doesn't just have a
binary concept of "touch or not", but a pressure axis as well?  We could report
"pen on but zero pressure".  I take your point (below) about not relying on
behaviour that doesn't correspond to real devices like being able to send
position data without BTN_TOUCH being held down.

> > The two devices also make sense for us on the one hand because xf86-input-evdev
> > currently only understands absolute devices without mouse buttons
> 
> Hmm, I scanned through it and I did not see anything specifically
> removing mouse buttons from absolute devices there... Is it still valid
> for the recent version of evdev driver?
Sorry, I have to correct myself there.  It assumes that an absolute device with
a "BTN_TOUCH" and mouse buttons and no pen is a touchpad and not a touchscreen.
Function "EvdevProbe()", search for "Found absolute touchpad".

> > (yes I know,
> > we could send them patches too if we had too, but we would rather not patch the
> > whole world :) ) and on the other because it makes it easy for us to switch
> > between absolute and relative event reporting, which is a big plus.
> 
> Why is this a big plus? Also, can't evdev handle devices reporting both
> relative and absolute events?
We sometimes want to switch to relative event reporting to e.g. let people play
games which are controlled using the mouse.  Don't ask :)  I can check again,
but I think that xf86-input-evdev ignores relative axes if a device supports
absolute ones.  I do feel that having two devices from it's point of view is
a safer bet here, rather than trying something fancier.

> You are relying on the fact that currently userspace components rely on
> drivers not sending coordinates data without touch; as soon as userspace
> (evdev) starts validating it and ignoring coordinate events without
> ABS_PRESSURE or BTN_TOUCH you'll be toast.
Point taken.  See above.

> > > I think it would be better if we had separate protocol module for that.
> [snip]
> First, create a separate protocol handler (module similar to
> lifebook.c), allocate protocol number, something like PSMOUSE_VBPS, and
> plumb it into psmouse-base.c in the same fashion othe protocol handlers
> do it.
Sure, I can copy lifebook.c and make the necessary modifications.  I will wait
for your answers/comments on the above though (particularly the first bit)
before starting.

Thanks again.

Regards,

Michael
-- 
Sun Microsystems GmbH        Michael Thayer
Werkstrasse 24               VirtualBox engineer
71384 Weinstadt, Germany     mailto:michael.thayer@xxxxxxx

Sitz der Gesellschaft:
Sun Microsystems GmbH, Sonnenallee 1, 85551 Kirchheim-Heimstetten
Amtsgericht Muenchen: HRB 161028
Geschaeftsfuehrer: Thomas Schroeder, Wolfgang Engels
Vorsitzender des Aufsichtsrates: Martin Haering

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux