Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to write software for my touchpad?

I have some ideas for improvements on my touchpad, ranging from the run of the mill scroll horizontally at the bottom, tapzones for right click, to more complicated ones. But I have no idea where to get started? I'm working on Windows 7 Home Premium, its an Asus laptop, and I have none of these options natively available to me. Regardless, I want to write something that anyone can use.

Where would I start?

(it'd be nice to write in c++? is that possible? what are the requirements here? what language would be recommended?)

like image 734
Nona Urbiz Avatar asked Nov 05 '22 18:11

Nona Urbiz


2 Answers

This is dependent on the hardware and driver for the touchpad. Just because Windows 7 supports gestures and multitouch doesn't mean that your touchpad does automatically; assuming that the hardware supports it (doubtful), the driver has to be specifically updated to support it as well.

If you have none of the options available natively, you won't automagically get them just by upgrading to Windows 7.

If you plan on writing software that supports gestures or multitouch, you have no real option other than investing in the hardware as well. After all, how will you test your software without it?

like image 197
Ken White Avatar answered Nov 28 '22 04:11

Ken White


Scrolling functionality such as you describe is handled in touchpad drivers, which are hardware specific. However, you may be able to accomplish what you want by using a hook. This is a mechanism by which you intercept and pre-process system messages before they're sent to applications. This could allow you to designate some areas of the touchpad for extra functionality without having to write a driver. But you're probably better off seeing if there is an existing driver with the functionality you want available from the ASUS site. If your laptop didn't come with Windows 7 originally, you're probably just running a generic driver and an actual touchpad specific driver might fix your problem.

like image 32
Jherico Avatar answered Nov 28 '22 03:11

Jherico