homeworkc / lazycast

A Simple Wireless Display Receiver
GNU General Public License v3.0
688 stars 89 forks source link

Question #87

Open kaleman115 opened 2 years ago

kaleman115 commented 2 years ago

I am working on a project using your Lazycast program and it works great. Windows detected it find and was able to pass through the USB to the pc from the raspberry pi, I was using a touch display with a USB touch interface and windows detects that there is a touch input but it just moves the mouse where I touch because Windows doesn't think that the wireless display is a touch display. How easy or difficult would it be to get Windows to see Lazycast as a touch display? Any help or advice would be greatly appreciated.

homeworkc commented 2 years ago

If you are using Windows 10, the underlying implementation of user control is that an X window captures user inputs and then the inputs are converted to HID descriptors and reports, which are hard-coded as mouse and keyboard descriptors and reports. The difficulty of supporting a touch display depends on how different the HID descriptors and reports a touch display are from those of mouse and keyboards. An alternative approach is to intersect USB traffic (since a touch display is most likely a USB HID device) and directly passing the HID traffic to Windows. The reason that the system wasn't implemented this way is because it requires greater system control and there might be issues in attaching/detaching the USB devices to/from the Linux kernel.