)]}'
{
  "commit": "bd0fbcd1f37f4e7e2e505cf5e5ede0fe52a3767c",
  "tree": "f061254868e6dd39cc1c2086461ece082fa385c5",
  "parents": [
    "023162b7e6872c42552de35380d348ab3e785fac"
  ],
  "author": {
    "name": "Garfield Tan",
    "email": "xutan@google.com",
    "time": "Fri Nov 30 12:45:03 2018 -0800"
  },
  "committer": {
    "name": "Garfield Tan",
    "email": "xutan@google.com",
    "time": "Tue Dec 04 21:15:40 2018 +0000"
  },
  "message": "Keep instance of BinderInputWindow for the same token.\n\nSome code in InputDispatcher uses pointer value comparison to track if a\nBinderInputWindow is the same. Therefore just keep the initial instance\nand reuse that for every update.\n\nThis is better than changing all pointer comparisons to token\ncomparisons because it would be hard to make sure every comparison is\nchanged.\n\nLater we could simply drop InputWindowHandle and use InputWindowInfo\nvalue instead. It would also be better if it could implement move\nconstructor so that we can use move semantics.\n\nBug: 120289807\nBug: 120463595\nBug: 120481017\nTest: Verified that input focus stops constantly changing by inpecting\nlogcat after enabling DEBUG_FOCUS in InputDispatcher.cpp. Freeform\ndrag-resize works with a workaround to another race condition.\n\nChange-Id: I34bbf8c076373ef23494f858536c5188eff95abd\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8dd95cfb9ab6ddb57d2a40caed655e21552c9a9d",
      "old_mode": 33188,
      "old_path": "include/input/InputWindow.h",
      "new_id": "2b8cc57c05132a6312ecbe656d341bad4ce2a57e",
      "new_mode": 33188,
      "new_path": "include/input/InputWindow.h"
    },
    {
      "type": "modify",
      "old_id": "556a005580bbd76a7d378abd9638f96eb2ac8d7e",
      "old_mode": 33188,
      "old_path": "libs/input/InputWindow.cpp",
      "new_id": "aa1371fdc918dca8ece515bf099b12b65143168f",
      "new_mode": 33188,
      "new_path": "libs/input/InputWindow.cpp"
    },
    {
      "type": "modify",
      "old_id": "12d91bbd688172f0c3fe264addf1b41e5ab2378d",
      "old_mode": 33188,
      "old_path": "services/inputflinger/InputDispatcher.cpp",
      "new_id": "a498fa154c4726636c4489a3655feb82641e3cb3",
      "new_mode": 33188,
      "new_path": "services/inputflinger/InputDispatcher.cpp"
    }
  ]
}
