#9545: Add multitouch support -------------------------+------------------------------ Reporter: X512 | Owner: nobody Type: enhancement | Status: new Priority: normal | Milestone: R1 Component: - General | Version: R1/Development Keywords: | Blocked By: 8338 Blocking: 8370 | Has a Patch: 0 Platform: All | -------------------------+------------------------------ To use Haiku on tablet PCs it's required to support multitouch. To add this modifications to the API and OS services should be made. Following components will be probably affected: '''USB HID driver''' Get contact id and transmit it to add-on. '''tablet input_server add-on''' Adapt mouse message generation. '''app_server''' Add ability to have many cursors and track it independently. '''interface kit''' Mayble correct B_ENTER_VIEW/B_LEAVE_VIEW MouseMoved codes generating. I suggest following modifications to the API: * Add "be:tablet_contact_id" to mouse messages that represent id of touching position tracking. First id is 0, second is 1 and so on. When user release finger from touch screen contact id is recycled and can be used by following contacts. Note that released contact is is not always the last allocated id so id fragmentation can appear. * Add "B_MULTITOUCH_AWARE" BView flag. Without this flag view can accept only messages from one contact, other messages will be dropped. Also "be:tablet_contact_id" will be removed. * Add "B_MULTITOUCH_AWARE_WINDOW" BWindow flag. It enables ability to work with many views simultaneously. For example you can control 2 sliders by 2 fingers with this flag. Some work is done in patch of #8338. Also I wrote some test that demonstrates multitouch. If someone is interested in tablet PC and multitouch support please let me know. -- Ticket URL: <http://dev.haiku-os.org/ticket/9545> Haiku <http://dev.haiku-os.org> Haiku - the operating system.