)]}'
{
  "commit": "6af0d50a8edb101d9da1306b6d85abf5dd3f9a30",
  "tree": "0680cd7ce5f407446a1b5d50095deada73d2e508",
  "parents": [
    "aef439e6f825c0cb99a2ac08c8207f48b7a9fe10"
  ],
  "author": {
    "name": "Dianne Hackborn",
    "email": "hackbod@google.com",
    "time": "Mon Sep 28 13:25:46 2009 -0700"
  },
  "committer": {
    "name": "Dianne Hackborn",
    "email": "hackbod@google.com",
    "time": "Mon Sep 28 13:40:45 2009 -0700"
  },
  "message": "Fix issue #2149145: Safe Mode does not work on Sholes device\n\nThe APIs for checking whether keys are held down now also look\nat virtual keys.\n\nHowever it turns out there is less than a second between the time we\nstart the input thread and check for safe mode, so there is not enough\ntime to actually open all of the devices and get the data from them\nabout the finger being down to determine if a virtual key is down.\n\nSo now you can also hold DPAD center, trackball center, or s to\nenter safe mode.  Also give some vibrator feedback.\n\nChange-Id: I55edce63bc0c375813bd3751766b8070beeb0153\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f936f65cef52784065164b31b2c9b01c2a340ab5",
      "old_mode": 33188,
      "old_path": "core/java/android/view/HapticFeedbackConstants.java",
      "new_id": "e1f2823989b628bf8e7a9f927c9a662f39e0abde",
      "new_mode": 33188,
      "new_path": "core/java/android/view/HapticFeedbackConstants.java"
    },
    {
      "type": "modify",
      "old_id": "b3125b2077eb6c821a005e4d25f161b14c2be17f",
      "old_mode": 33188,
      "old_path": "core/java/android/view/WindowManagerPolicy.java",
      "new_id": "78999fa51bbab15dbe37c029543ea80c17264a10",
      "new_mode": 33188,
      "new_path": "core/java/android/view/WindowManagerPolicy.java"
    },
    {
      "type": "modify",
      "old_id": "907fd8f77cc0d5f370c2228ebfb358482f176b0f",
      "old_mode": 33188,
      "old_path": "core/res/res/values/config.xml",
      "new_id": "498b5cf1e90fed4e9b0ba507486cf9bce8b035f0",
      "new_mode": 33188,
      "new_path": "core/res/res/values/config.xml"
    },
    {
      "type": "modify",
      "old_id": "d9f4c9c7654b24af7e8e5b5692ef446ffb5b1678",
      "old_mode": 33188,
      "old_path": "services/java/com/android/server/KeyInputQueue.java",
      "new_id": "d7b8f57098d34f96555de002e15c2152ec436c7a",
      "new_mode": 33188,
      "new_path": "services/java/com/android/server/KeyInputQueue.java"
    },
    {
      "type": "modify",
      "old_id": "b3b50e56c86ebc61fd271bf91e4fa6fea3b69635",
      "old_mode": 33188,
      "old_path": "services/java/com/android/server/SystemServer.java",
      "new_id": "65b3e3fea19d0e00a0653287cf5c97e2595c51ea",
      "new_mode": 33188,
      "new_path": "services/java/com/android/server/SystemServer.java"
    },
    {
      "type": "modify",
      "old_id": "228d25e15281b8639aa061d916a1c305ca244481",
      "old_mode": 33188,
      "old_path": "services/java/com/android/server/WindowManagerService.java",
      "new_id": "30855b1cfab28108f2b8f5a7d5a458da44a74c73",
      "new_mode": 33188,
      "new_path": "services/java/com/android/server/WindowManagerService.java"
    },
    {
      "type": "modify",
      "old_id": "f27596c5c581a33b3fa22616b7de7636b45d3af0",
      "old_mode": 33188,
      "old_path": "services/jni/com_android_server_KeyInputQueue.cpp",
      "new_id": "c92f8df58c8464ec646b4fa975490c6387a88975",
      "new_mode": 33188,
      "new_path": "services/jni/com_android_server_KeyInputQueue.cpp"
    }
  ]
}
