)]}'
{
  "commit": "5e5ee686e3c0f8a3cbe9b75c2690326bf91af10d",
  "tree": "cfa1e26391f1252a8e47fe82cc2a76ef23e95502",
  "parents": [
    "61994a61bcedf328cb1d6e96c393fc91ce64563d"
  ],
  "author": {
    "name": "Henrik Rydberg",
    "email": "rydberg@euromail.se",
    "time": "Tue Apr 28 07:47:33 2009 -0700"
  },
  "committer": {
    "name": "Dmitry Torokhov",
    "email": "dmitry.torokhov@gmail.com",
    "time": "Tue Apr 28 09:36:24 2009 -0700"
  },
  "message": "Input: add detailed multi-touch finger data report protocol\n\nIn order to utilize the full power of the new multi-touch devices, a\nway to report detailed finger data to user space is needed. This patch\nadds a multi-touch (MT) protocol which allows drivers to report details\nfor an arbitrary number of fingers.\n\nThe driver sends a SYN_MT_REPORT event via the input_mt_sync() function\nwhen a complete finger has been reported.\n\nIn order to stay compatible with existing applications, the data\nreported in a finger packet must not be recognized as single-touch\nevents. In addition, all finger data must bypass input filtering,\nsince subsequent events of the same type refer to different fingers.\n\nA set of ABS_MT events with the desired properties are defined. The\nevents are divided into categories, to allow for partial implementation.\nThe minimum set consists of ABS_MT_TOUCH_MAJOR, ABS_MT_POSITION_X and\nABS_MT_POSITION_Y, which allows for multiple fingers to be tracked.\nIf the device supports it, the ABS_MT_WIDTH_MAJOR may be used to provide\nthe size of the approaching finger. Anisotropy and direction may be\nspecified with ABS_MT_TOUCH_MINOR, ABS_MT_WIDTH_MINOR and\nABS_MT_ORIENTATION. Devices with more granular information may specify\ngeneral shapes as blobs, i.e., as a sequence of rectangular shapes\ngrouped together by a ABS_MT_BLOB_ID. Finally, the ABS_MT_TOOL_TYPE\nmay be used to specify whether the touching tool is a finger or a pen.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8ff92aa13a0af85c927bdf7403e0fa872c4c5963",
      "old_mode": 33188,
      "old_path": "drivers/input/input.c",
      "new_id": "e54e002665b0c7d697ae9dc5cc0750747bde9069",
      "new_mode": 33188,
      "new_path": "drivers/input/input.c"
    },
    {
      "type": "modify",
      "old_id": "32cb825939bea5e41f88100ca5603f7b4c553e9f",
      "old_mode": 33188,
      "old_path": "include/linux/input.h",
      "new_id": "0e6ff5de35884b6dbd749be01d5b2d681a2aa1ba",
      "new_mode": 33188,
      "new_path": "include/linux/input.h"
    }
  ]
}
