)]}'
{
  "log": [
    {
      "commit": "49c1d1764bce02cf12a68e9312f3aa9dfa2e25ce",
      "tree": "72907b2daa47e228e929a7bd8bb0ed1eff716dc7",
      "parents": [
        "81d94335fbe7fde63f9e382be1ec74d3d09b99fe"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 23 14:39:19 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 23 14:39:19 2012 -0700"
      },
      "message": "Clear identity when checking if bandwidth enabled.\n\nChange-Id: I0f10f86dc14483e29609057c671454b322da4826\n"
    },
    {
      "commit": "81d94335fbe7fde63f9e382be1ec74d3d09b99fe",
      "tree": "9c35325a648523b4cdfa70c08eb3481e9e17413c",
      "parents": [
        "f913d002a64b9d124ef54f3b71bcd13f4a6c2768"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 23 13:32:00 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 23 13:32:00 2012 -0700"
      },
      "message": "Grant external storage permissions to SystemUI.\n\nUsed for taking screenshots and playing notification ringtones.\n\nBug: 6381589\nChange-Id: Ib1a5ad17edbeab984bbab25168d81eb99deba952\n"
    },
    {
      "commit": "f913d002a64b9d124ef54f3b71bcd13f4a6c2768",
      "tree": "23889918024ee8a502124e11c2de2e57011b26c5",
      "parents": [
        "03d2f292a63f3600f1f913f53f19bf783f05ef2f",
        "9cbe986a446dffea2e9f59b86800f834b02d766a"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 23 10:08:01 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 23 10:08:01 2012 -0700"
      },
      "message": "Merge \"Expose statfs() through IMediaContainerService.\""
    },
    {
      "commit": "03d2f292a63f3600f1f913f53f19bf783f05ef2f",
      "tree": "2df06126de9dbb073bd0df634b2f7b437f7e4624",
      "parents": [
        "1579a67ee9a53740a09e606e071fd571ee627449",
        "e9e26cc727a1490db5eb0e572a40913f624529fe"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Apr 23 09:40:28 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 23 09:40:28 2012 -0700"
      },
      "message": "Merge \"Clipboard service keeps separate clipboards per user.\""
    },
    {
      "commit": "1579a67ee9a53740a09e606e071fd571ee627449",
      "tree": "79337174f1674c757a63220930b587a188632ff2",
      "parents": [
        "47bc84760abb900d13e2e7a7b75edabc70b0054f",
        "cba778dc21ed13711ec020c12a64836bce3c2742"
      ],
      "author": {
        "name": "Ben Murdoch",
        "email": "benm@google.com",
        "time": "Mon Apr 23 05:52:05 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 23 05:52:05 2012 -0700"
      },
      "message": "Merge \"Pause the WebCore thread watchdog at the right time.\""
    },
    {
      "commit": "cba778dc21ed13711ec020c12a64836bce3c2742",
      "tree": "c638433977cca52f4289113d09c7eab0bd16a4c4",
      "parents": [
        "eb65757d24a97450fed160d66e86a4a62c392c5c"
      ],
      "author": {
        "name": "Ben Murdoch",
        "email": "benm@google.com",
        "time": "Mon Apr 23 12:04:44 2012 +0100"
      },
      "committer": {
        "name": "Ben Murdoch",
        "email": "benm@google.com",
        "time": "Mon Apr 23 13:50:03 2012 +0100"
      },
      "message": "Pause the WebCore thread watchdog at the right time.\n\nThere are times when we deliberately put the WebCore thread\nto sleep (i.e. waiting for a user to complete a JS prompt or\ndismiss an alert). In this case, we don\u0027t want the WebCore thread\nwatchdog to fire. Pause the watchdog before we put the WebCore thread\nto sleep and resume it again when the thread wakes up.\n\nFactor out the repeated send/pause/wait/resume code into it\u0027s own\nfunction.\n\nBug: 6366520\nChange-Id: I17ecf9d466ce21b25a9e5cb8ff4cb0e5fab7605b\n"
    },
    {
      "commit": "47bc84760abb900d13e2e7a7b75edabc70b0054f",
      "tree": "b010668dce27df67cc06abd8a8e5b4396638cef6",
      "parents": [
        "03c63ebebbc5945c724719a26445b168785c42e7",
        "d3101b1d300f5942fdb7dfa323dc8830c4edc007"
      ],
      "author": {
        "name": "Jonathan Dixon",
        "email": "joth@google.com",
        "time": "Mon Apr 23 05:48:40 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 23 05:48:40 2012 -0700"
      },
      "message": "Merge \"Seperate interface and implementation of 4 WebView classes\""
    },
    {
      "commit": "03c63ebebbc5945c724719a26445b168785c42e7",
      "tree": "613b012f10ce12ac251bf0f27173c97af3b57370",
      "parents": [
        "eb65757d24a97450fed160d66e86a4a62c392c5c",
        "4a066c5c77109431f50806fc29179d28f1472871"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Mon Apr 23 04:48:35 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 23 04:48:35 2012 -0700"
      },
      "message": "Merge \"Update SystemUI for sw600dp devices.\""
    },
    {
      "commit": "d3101b1d300f5942fdb7dfa323dc8830c4edc007",
      "tree": "4140cbc09c362fd7584fec4f87dff13a79b22388",
      "parents": [
        "eb65757d24a97450fed160d66e86a4a62c392c5c"
      ],
      "author": {
        "name": "Jonathan Dixon",
        "email": "joth@google.com",
        "time": "Thu Apr 12 20:51:51 2012 +0100"
      },
      "committer": {
        "name": "Jonathan Dixon",
        "email": "joth@google.com",
        "time": "Mon Apr 23 12:43:02 2012 +0100"
      },
      "message": "Seperate interface and implementation of 4 WebView classes\n\nGeolocationPermissionsClassic\nCookieManagerClassic\nWebIconDatabaseClassic\nWebStorageClassic\n\nAlso creats a WebViewFactory top level class - this remains hidden\nfor now, as it\u0027s currently only used implicitly by the other\npublic WebView classes to create the provider instances.\n\nBug: 5626244\n\nChange-Id: Id0ca1c16d8058f31a86414bbc0e8a55db4b907ba\n"
    },
    {
      "commit": "eb65757d24a97450fed160d66e86a4a62c392c5c",
      "tree": "4b78fb22691bffe6fd659406c36d0ab66ac1cbd8",
      "parents": [
        "49b0246bc46c2a3cdfadec5d3f56a8212678ac6e",
        "979de903695275bae08f2e7a4e99d342f0facd23"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Sun Apr 22 22:39:48 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Apr 22 22:39:48 2012 -0700"
      },
      "message": "Merge \"Fix the first boundary of the sentence level spell check\""
    },
    {
      "commit": "979de903695275bae08f2e7a4e99d342f0facd23",
      "tree": "4d0225e5ed95318f2e2783cb1f238d93b62bdc9b",
      "parents": [
        "ad04c9ccc9d30b44ef4d95e9bed195b83a22b03c"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Apr 23 13:46:40 2012 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Apr 23 13:46:40 2012 +0900"
      },
      "message": "Fix the first boundary of the sentence level spell check\n\nChange-Id: I7c7659c921103d31f9909c14850088aef0d2eb19\n"
    },
    {
      "commit": "9cbe986a446dffea2e9f59b86800f834b02d766a",
      "tree": "63725587ac50668011a054f82c69f6ddf25b9248",
      "parents": [
        "816e4f758302aaf3b115b5914d48732ed78af946"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Apr 22 18:56:43 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Apr 22 18:56:43 2012 -0700"
      },
      "message": "Expose statfs() through IMediaContainerService.\n\nBug: 6346248\nChange-Id: I03ae02578f546fc9f19652cbdece56e2e0ab6a1c\n"
    },
    {
      "commit": "49b0246bc46c2a3cdfadec5d3f56a8212678ac6e",
      "tree": "7a0d2fbb729214d0e4071b8237a35493c1451910",
      "parents": [
        "e93cccb634b3f395ea99ada52dd6cd532b3e7723",
        "816e4f758302aaf3b115b5914d48732ed78af946"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Apr 22 17:30:41 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Apr 22 17:30:41 2012 -0700"
      },
      "message": "Merge \"System context should inherit base package name.\""
    },
    {
      "commit": "816e4f758302aaf3b115b5914d48732ed78af946",
      "tree": "297b549f2adf432bab2b76ec4cbeff7ba2f8dd3d",
      "parents": [
        "4190a047ca1c5eb19a1f7e5d599ef1d532da71c7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Apr 22 17:08:52 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Apr 22 17:08:52 2012 -0700"
      },
      "message": "System context should inherit base package name.\n\nOtherwise registerReceiver() from views inflated with the returned\ncontext will throw (like DateTimeView).\n\nBug: 6376149\nChange-Id: I038a680e49fba81bbebfc8c0c94f15e7cd072f33\n"
    },
    {
      "commit": "e93cccb634b3f395ea99ada52dd6cd532b3e7723",
      "tree": "2a10b6a93b3cc0153bbc3b59e6ce5d2db25561d6",
      "parents": [
        "4190a047ca1c5eb19a1f7e5d599ef1d532da71c7",
        "532bc1cb7da9fdbf34893fa48b2ae11f54cf6a8e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sun Apr 22 13:26:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Apr 22 13:26:29 2012 -0700"
      },
      "message": "Merge \"Fix threading issues in AudioRecord JNI\""
    },
    {
      "commit": "4190a047ca1c5eb19a1f7e5d599ef1d532da71c7",
      "tree": "5f167207adc5f6f394ae19b116937b4fd3c07013",
      "parents": [
        "7838025812f30f466ee502d3cbb92923312524da"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Apr 21 15:36:48 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Apr 21 15:36:48 2012 -0700"
      },
      "message": "Better assertions when bandwidth module disabled.\n\nAlso disable some verbose logging in WifiStateTracker.\n\nBug: 6368329\nChange-Id: I9a5219bc1b3fd870468f7de46cdf4f173a437c59\n"
    },
    {
      "commit": "4a066c5c77109431f50806fc29179d28f1472871",
      "tree": "11c1836b80b78d0f70e8e0044f7679b36db6b20e",
      "parents": [
        "8b0af627997277978240525d87ef7a7f0661554b"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Apr 20 14:49:13 2012 -0400"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Sat Apr 21 00:19:47 2012 -0400"
      },
      "message": "Update SystemUI for sw600dp devices.\n\nDevices between 600 and 719dp will now use the two-bar\n(phone) SystemUI layout, or something like it, derived from\nPhoneStatusBar. Devices above 720dp will use the system bar\nfrom TabletStatusBar.\n\nHowever, this distinction is not to be made based on dp, at\nleast, not by the SystemUI; the goal is to drive most of\nthis switch from the window manager. Therefore most of\nSystemUI\u0027s sw600dp resources have been folded into the main\nset of resources (renaming them to avoid collisions where\nappropriate). This allows SystemUI to choose which set of\nresources to use entirely by switching status bar\ncomponents, entirely independent of Configuration.\n\n(For some resources, particularly around recents, it seemed\nmore expeditious to keep relying on the device\nconfiguration, so those resources have been bumped up to\nsw720dp.)\n\nBug: 6297838\nChange-Id: I3f5414a6a718bdc83f51930d6878cdf97df48c9c\n"
    },
    {
      "commit": "7838025812f30f466ee502d3cbb92923312524da",
      "tree": "4cdc79bb47aa9d99ed8e8a3c862aa7868342e11c",
      "parents": [
        "a2c68198b13e416278e9bbe1d7f0abab4033d245",
        "b11499d2db0ba9782363ec6bf714b583e8585212"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 20:16:25 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 20:16:25 2012 -0700"
      },
      "message": "Merge \"Make InputEvent.getEventTime() public.\""
    },
    {
      "commit": "a2c68198b13e416278e9bbe1d7f0abab4033d245",
      "tree": "84c6949fcf3f15a765475f6da3206bafcb1aceb7",
      "parents": [
        "8ff0c9204e565d7389b10495cf885c772d204be5",
        "5bbd4b4f5fc19302fa017ad6afee6eb2d489d91a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 20:15:20 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 20:15:20 2012 -0700"
      },
      "message": "Merge \"Get alias for Bluetooth devices.\""
    },
    {
      "commit": "b11499d2db0ba9782363ec6bf714b583e8585212",
      "tree": "fd096132eaeae5133fbfd61c42810ca6a8da5987",
      "parents": [
        "5bbd4b4f5fc19302fa017ad6afee6eb2d489d91a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 19:54:22 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 20:11:19 2012 -0700"
      },
      "message": "Make InputEvent.getEventTime() public.\n\nAlso add new methods to access the event timestamp in\nnanoseconds.  Hidden for now but useful for prototyping.\n\nBug: 6374616\nChange-Id: I7030734a908e8e31a17a356debc269db7c0f0783\n"
    },
    {
      "commit": "5bbd4b4f5fc19302fa017ad6afee6eb2d489d91a",
      "tree": "2bc118a5ef332003cc7f6791968076c48b3cf84b",
      "parents": [
        "9e6d4b035d4f012d23264d3d2bc946b1ca02dba1"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 19:28:00 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 20:11:12 2012 -0700"
      },
      "message": "Get alias for Bluetooth devices.\n\nBluetooth devices can be renamed by the user.  Make the\ninput system aware of the user-specified name and transparently\npass it down to applications.  This enables the keyboard\nlayout picker Settings UI to use device names that are\nconsistent with what the user set in the Bluetooth UI.\n\nBug: 6363157\nChange-Id: I8eea26ce2c69c2a3f09c8de02e9e847610e0419c\n"
    },
    {
      "commit": "e9e26cc727a1490db5eb0e572a40913f624529fe",
      "tree": "ae6efe298467321cd27c93577093a9f4c9e522d9",
      "parents": [
        "5b086eb5438b5048bd3fbf4e2ed9390ec10245b3"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Apr 20 19:01:50 2012 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Apr 20 19:01:50 2012 -0700"
      },
      "message": "Clipboard service keeps separate clipboards per user.\n\nNo leaking personal information via the clipboard.\n\nChange-Id: I11125288e2e640eb0c0e4c73dae2b4d9aa7c0f3b\n"
    },
    {
      "commit": "8ff0c9204e565d7389b10495cf885c772d204be5",
      "tree": "f1aa6de8db6a70fbe95d2198b63c3edacb21ab43",
      "parents": [
        "7dc3d82a392696ede0757980cd68105682c46768",
        "19caadc08f09cc9f6665fbbb0d61e02861ce8562"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 20 18:58:53 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 18:58:53 2012 -0700"
      },
      "message": "Merge \"You can now long press on the power off menu to reboot to safe mode.\""
    },
    {
      "commit": "7dc3d82a392696ede0757980cd68105682c46768",
      "tree": "0bb82e3b9e84e64efc3f01a4f633c3692f02b11b",
      "parents": [
        "9392ad25a866ea2dff68683795294103157f8ed7",
        "d6e716dce95089e3acceef2267175d1dba1b4035"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 18:51:45 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 18:51:45 2012 -0700"
      },
      "message": "Merge \"Adding a couple of missing accessibility focus directions.\""
    },
    {
      "commit": "d6e716dce95089e3acceef2267175d1dba1b4035",
      "tree": "8cb80426110aac3a3eaedb070833251d8ab441ab",
      "parents": [
        "122b2c32dea573a3efbd0d608a70b7cd169d99dd"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 18:36:11 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 18:40:21 2012 -0700"
      },
      "message": "Adding a couple of missing accessibility focus directions.\n\nChange-Id: Id404155591cf3fe5f9bef3ed8fe0d03908944ce1\n"
    },
    {
      "commit": "19caadc08f09cc9f6665fbbb0d61e02861ce8562",
      "tree": "e614ceb22d936fb11c155511ed7419efd516442e",
      "parents": [
        "e1a996e99dc68b48efad989876c01ce05a7a58ac"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 20 17:49:10 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 20 17:50:26 2012 -0700"
      },
      "message": "You can now long press on the power off menu to reboot to safe mode.\n\nChange-Id: I3aa575285058cf5a3d89486d6b944f6ea13d645c\n"
    },
    {
      "commit": "9392ad25a866ea2dff68683795294103157f8ed7",
      "tree": "327e00f8386e4122920506949c4d54ed1a3ad836",
      "parents": [
        "122b2c32dea573a3efbd0d608a70b7cd169d99dd",
        "7ea3e7df1f1ff5dde8ffb42fa179beef679f40ea"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Apr 20 17:37:43 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 17:37:43 2012 -0700"
      },
      "message": "Merge \"Fix dumpsys package.\""
    },
    {
      "commit": "122b2c32dea573a3efbd0d608a70b7cd169d99dd",
      "tree": "35e9abfd6b158ab9854663e752b76563f0d21e02",
      "parents": [
        "8b0af627997277978240525d87ef7a7f0661554b"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 17:00:30 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 17:04:23 2012 -0700"
      },
      "message": "Fixing a couple of issues I have introduces in the last patch.\n\n1. Fix waiting for the wrong instance.\n\n2. Fix cloning of accessibility node info.\n\nChange-Id: Icabf0d4bc947602a32fddc6642cc787f2bc766e4\n"
    },
    {
      "commit": "532bc1cb7da9fdbf34893fa48b2ae11f54cf6a8e",
      "tree": "72be7c81c2d49b80ce73504c1adb4e2c02e54160",
      "parents": [
        "0b568ff17983ee84b6099e28c89cac414abd0739"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 20 12:45:03 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 20 16:26:07 2012 -0700"
      },
      "message": "Fix threading issues in AudioRecord JNI\n\nMade native AudioRecord ref based to allow use\nof strong pointers in JNI and solve concurrency issues\nbetween read() and release() in particular.\n\nApplied the same fixes to AudioTrack JNI.\n\nIssue 6254582.\n\nChange-Id: I381a66cb00b6639f87f4fcd19a2e202d1a4e6704\n"
    },
    {
      "commit": "8b0af627997277978240525d87ef7a7f0661554b",
      "tree": "50dc28a1e6602c7c408eb35076f8c73db6f05bbc",
      "parents": [
        "8d3696eca2fb26b33c71494eaf93a0a6588b946a",
        "2782a478d0214cf71a32d4537fc9fb191d1072fb"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Apr 20 16:10:45 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 16:10:45 2012 -0700"
      },
      "message": "Merge \"Move forward lock utilities to PackageHelper\""
    },
    {
      "commit": "8d3696eca2fb26b33c71494eaf93a0a6588b946a",
      "tree": "b892da5a5f77e7e875b70df553cdfddf95071dad",
      "parents": [
        "bb56676b07a85d38e8577a4151aad895d6522774",
        "9f6e4ba50e7e73704c7fbd3ba65fe73bdf8ad73f"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Apr 20 16:03:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 16:03:26 2012 -0700"
      },
      "message": "Merge \"Connect metered DHCP hint for Wi-Fi networks.\""
    },
    {
      "commit": "9f6e4ba50e7e73704c7fbd3ba65fe73bdf8ad73f",
      "tree": "ed8045c7cfb0fcea3c10b0f76d2808116ac1545e",
      "parents": [
        "f0c4c658488824707c206551fd1ccc0a0781031e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Apr 19 23:01:08 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Apr 20 15:57:19 2012 -0700"
      },
      "message": "Connect metered DHCP hint for Wi-Fi networks.\n\nWhen DHCP lease includes vendor info indicating that remote Wi-Fi\nnetwork is metered, advise NetworkPolicy.  Users can still manually\nchange the metered flag in Settings.\n\nAlso remove any policies belonging to removed Wi-Fi networks, and\nteach isNetworkMetered() about ethernet networks.\n\nBug: 6344821, 6369307, 6365872\nChange-Id: I108606c6fddf2d02828fcab011f3a1501415f1bc\n"
    },
    {
      "commit": "bb56676b07a85d38e8577a4151aad895d6522774",
      "tree": "f55dbdaac934d5ea8d275ac188ea70a1a3c2e670",
      "parents": [
        "72de2062485f711c9a2291c204fd2c0fb6c4e20f",
        "ebc86af1dc186c77f723c8970951e8ff00b4866b"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Apr 20 15:51:44 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 15:51:44 2012 -0700"
      },
      "message": "Merge \"Visible spans changes only invalidate the affected text sub display lists\""
    },
    {
      "commit": "ebc86af1dc186c77f723c8970951e8ff00b4866b",
      "tree": "876bcafacd9e951c4b18b1bfcda8ed2374480906",
      "parents": [
        "70c8723e63e2c58115c356bd4e9525b823b7bf28"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Apr 20 15:10:47 2012 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Apr 20 15:45:39 2012 -0700"
      },
      "message": "Visible spans changes only invalidate the affected text sub display lists\n\nWhen a span with a visible influence on the text is modified, we only\nneed to invalidate the text sub display lists that overlap this span.\n\nThis is especially useful when typing and the composing span (an underline\nspan) gets updated after each key stroke.\n\nChange-Id: Ib2af3219c41eb79ec5d0a2eee317aca8c4efdef9\n"
    },
    {
      "commit": "72de2062485f711c9a2291c204fd2c0fb6c4e20f",
      "tree": "b2bcb7fed59a6c276f58d401ef173ff409ef9ac0",
      "parents": [
        "4d7349bb6df5a01ba451aa1abd4c9f6349a57016",
        "aa780c110922148a6a4ba06734bb2b0bb8c98f93"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 15:26:24 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 15:26:24 2012 -0700"
      },
      "message": "Merge \"Adding support for traversing the content of a node info at granularity.\""
    },
    {
      "commit": "7ea3e7df1f1ff5dde8ffb42fa179beef679f40ea",
      "tree": "8832e2c53892e4929a74a13641f543ac7ae877f2",
      "parents": [
        "5b086eb5438b5048bd3fbf4e2ed9390ec10245b3"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Apr 20 15:19:35 2012 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Apr 20 15:19:35 2012 -0700"
      },
      "message": "Fix dumpsys package.\n\nWas bailing out due to insufficient permissions to query users.\n\nBug: 6374050\nChange-Id: Ic4a4ab32e2efb4d1fc1f1607fd304f99d5382743\n"
    },
    {
      "commit": "aa780c110922148a6a4ba06734bb2b0bb8c98f93",
      "tree": "8709da20df481fea35219769285546802407ca9f",
      "parents": [
        "fefd20e927b7252d63acb7bb1852c5188e3c1b2e"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Apr 19 23:01:39 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 15:12:13 2012 -0700"
      },
      "message": "Adding support for traversing the content of a node info at granularity.\n\n1. A view that creates an accessibility node info may add to the info\n   a list of granularity labels. These are granularities by which the\n   source view can iterate over its content. For example a text view\n   may support character, word link while a web view may additionally\n   support buttons, tables, etc. There are actions on accessibility\n   node info to go to the next/previous at a given granularity which\n   is passesed as an argument.\n\n2. Added Bundle argument to the APIs for performing accessibility\n   actions. This is generic and extensible.\n\nbug:5932640\n\nChange-Id: I328cbbb4cddfdee082ab2a8b7ff1bd7477d8d6f9\n"
    },
    {
      "commit": "4d7349bb6df5a01ba451aa1abd4c9f6349a57016",
      "tree": "b9e9278a7d0fb2e764ae139e07dab0a54ba505fb",
      "parents": [
        "8e2f41426ce162a164d1074dd67ea4549ffd0711"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Apr 20 14:52:47 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Apr 20 15:09:51 2012 -0700"
      },
      "message": "Remove flicker from transitions.\n\nChange state progressions to handle animation/layout separation.\nAlso added debug as needed.\n\nFixes bug 6360835.\nFixes bug 6206366.\nFixes bug 6286371.\nFixes bug 6240494.\n\nChange-Id: I1079756a7e3e35ebb9f711f02d005bde9bf65ef0\n"
    },
    {
      "commit": "8e2f41426ce162a164d1074dd67ea4549ffd0711",
      "tree": "cfd14751bbb59f10389bc8673d02be0dfab6f13a",
      "parents": [
        "5778626d9b3aa2d81dc8bbe3139547ad90b90f25"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 14:57:11 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Apr 20 14:57:18 2012 -0700"
      },
      "message": "Fixes in the accessibility gesture dispatching.\n\n1. The gesture dispatcher thread was not waiting in a loop\n   that check for complete initialization. Therefore is was\n   susceptible to missed signals and unexpected interrupts.\n\n2. In the gesture processing message handle the interaction id\n   was reading the wrong message argument.\n\nbug:5932640\n\nChange-Id: Ic65ecc01a7fe7d43929c6c07d0759ae9001cf515\n"
    },
    {
      "commit": "2782a478d0214cf71a32d4537fc9fb191d1072fb",
      "tree": "72d612a1bd3b88c88856ae5901dd2a1ec9884613",
      "parents": [
        "80a76276dc9440ffad30dc4c820eb7d65f4df368"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sat Apr 14 21:48:21 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Apr 20 14:40:03 2012 -0700"
      },
      "message": "Move forward lock utilities to PackageHelper\n\nThe forward lock utilities will need to be called from\nDefaultContainerService for ASEC packages in the future. Move them to\nPackageHelper to aid in the transition.\n\nAlso move the public resource copying to the FileInstallArgs step which\nmakes a little bit more sense.\n\nChange-Id: I3a62ac817719db3ee1c89c106a551dcbe9c44744\n"
    },
    {
      "commit": "5778626d9b3aa2d81dc8bbe3139547ad90b90f25",
      "tree": "8d2492e422d237a526ffbaf806a6e63bffdd8773",
      "parents": [
        "cd74a180ce2bb5d5bf4e274168b35f2143b32f72",
        "9b930d2134a1cebcafbcf2d05d429120e831a920"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 14:23:21 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 20 14:23:21 2012 -0700"
      },
      "message": "am 9b930d21: am 40a33f3b: Merge \"docs: add meta description to first training docs\" into ics-mr1\n\n* commit \u00279b930d2134a1cebcafbcf2d05d429120e831a920\u0027:\n  docs: add meta description to first training docs\n"
    },
    {
      "commit": "cd74a180ce2bb5d5bf4e274168b35f2143b32f72",
      "tree": "a09e5a7129b441f185512e84800cf1a8ed68ed18",
      "parents": [
        "509e23e8a4ee6ecf53b1a85badd3586f6a98d18c",
        "53eb13ce0a05426ceed03465ed37f7f3587eb4f4"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Apr 20 14:20:42 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 14:20:42 2012 -0700"
      },
      "message": "Merge \"Set AuthType to NONE if username of APN is not set\""
    },
    {
      "commit": "9b930d2134a1cebcafbcf2d05d429120e831a920",
      "tree": "752c98921d3866cddb616b5cb90ec765136b3516",
      "parents": [
        "7d48a823b4dcc82ca74f8858e082d41a3b8cd5d9",
        "40a33f3b0a3e29ddc98d31fbd9bf02a32aea5193"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 14:20:31 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 20 14:20:31 2012 -0700"
      },
      "message": "am 40a33f3b: Merge \"docs: add meta description to first training docs\" into ics-mr1\n\n* commit \u002740a33f3b0a3e29ddc98d31fbd9bf02a32aea5193\u0027:\n  docs: add meta description to first training docs\n"
    },
    {
      "commit": "509e23e8a4ee6ecf53b1a85badd3586f6a98d18c",
      "tree": "53fda7bd0511300114b080c9acac1d95fd6128f9",
      "parents": [
        "50ae5634cc345d157f392d8149653222eda421af",
        "f48206f877d25d2bd3e385d6f3853df4eaff17db"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Apr 20 14:20:22 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 14:20:22 2012 -0700"
      },
      "message": "Merge \"fix a typo causing sensor event to be sorted in reverse chronological order\""
    },
    {
      "commit": "40a33f3b0a3e29ddc98d31fbd9bf02a32aea5193",
      "tree": "8f3d517dbe7f08a89fed6911f4a06a2ae43123be",
      "parents": [
        "f90f4ed19c1bd7e0492c1aa1494a1d8ed5185275",
        "34bf13d593ae37933ad26db61840e087e8d1cec3"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 14:18:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 14:18:29 2012 -0700"
      },
      "message": "Merge \"docs: add meta description to first training docs\" into ics-mr1"
    },
    {
      "commit": "34bf13d593ae37933ad26db61840e087e8d1cec3",
      "tree": "3e2f59cf8d69aa88543453a71c9fc71e2085476d",
      "parents": [
        "71427bae84f51b5c269b2520c36d2811491e67fb"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 14:10:51 2012 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 14:16:05 2012 -0700"
      },
      "message": "docs: add meta description to first training docs\n\nChange-Id: Iaf04ffbd10c8c5e1cf3896876fecb59f038127a7\n"
    },
    {
      "commit": "50ae5634cc345d157f392d8149653222eda421af",
      "tree": "5750f35e68473bb8be2a308dfce88135d5133c04",
      "parents": [
        "e1a996e99dc68b48efad989876c01ce05a7a58ac",
        "7d48a823b4dcc82ca74f8858e082d41a3b8cd5d9"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 14:13:07 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 20 14:13:07 2012 -0700"
      },
      "message": "am 7d48a823: am f90f4ed1: docs: fix more broken links\n\n* commit \u00277d48a823b4dcc82ca74f8858e082d41a3b8cd5d9\u0027:\n  docs: fix more broken links\n"
    },
    {
      "commit": "7d48a823b4dcc82ca74f8858e082d41a3b8cd5d9",
      "tree": "037bba761fdbb655cb8fe61d33ba78bb709cb4be",
      "parents": [
        "eff0c081eee03a7f512735e16f14d8d6b0553ff6",
        "f90f4ed19c1bd7e0492c1aa1494a1d8ed5185275"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 14:09:50 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 20 14:09:50 2012 -0700"
      },
      "message": "am f90f4ed1: docs: fix more broken links\n\n* commit \u0027f90f4ed19c1bd7e0492c1aa1494a1d8ed5185275\u0027:\n  docs: fix more broken links\n"
    },
    {
      "commit": "e1a996e99dc68b48efad989876c01ce05a7a58ac",
      "tree": "59b3362ca86cc68c19b6060feecda2cc7d44b1cc",
      "parents": [
        "ebd477518f10d61b1164c0df6c14cb2d0e59ecf0",
        "d0d7503fd3e941113094532f28986f49b11b5fdb"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Apr 20 13:44:43 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 13:44:43 2012 -0700"
      },
      "message": "Merge \"Move handling of package changes to a background thread.\""
    },
    {
      "commit": "ebd477518f10d61b1164c0df6c14cb2d0e59ecf0",
      "tree": "ee1b71ae7d027b3dc794ffe6438b568c4a13b2b1",
      "parents": [
        "069fa7b306ae85763765cd2713e2a2bcd59a44fe",
        "d6b1098e1f46530528dfea415655468ec994bbb6"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Apr 20 13:43:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 13:43:00 2012 -0700"
      },
      "message": "Merge \"Support fallback action if unhandled key event\""
    },
    {
      "commit": "069fa7b306ae85763765cd2713e2a2bcd59a44fe",
      "tree": "40371e79f319b2ccd0335bd93f490ade9dfc3875",
      "parents": [
        "0a732ad5270ba9fac6bbbff80a7190b739c57c6a",
        "9e6d4b035d4f012d23264d3d2bc946b1ca02dba1"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 13:32:35 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 13:32:35 2012 -0700"
      },
      "message": "Merge \"Lost the race.\""
    },
    {
      "commit": "0a732ad5270ba9fac6bbbff80a7190b739c57c6a",
      "tree": "93836d00ce93adf0edadc3c7996a5404e76e7e8a",
      "parents": [
        "e81e3a4f85147ada753100b8a78584ce008d9e63",
        "46c629d5fa42910632297a1fabc06f0b13b90b23"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Apr 20 13:28:33 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 13:28:33 2012 -0700"
      },
      "message": "Merge \"Import translations. DO NOT MERGE\""
    },
    {
      "commit": "9e6d4b035d4f012d23264d3d2bc946b1ca02dba1",
      "tree": "e6d5efaf1d3951f15f3c1de59e8c07ac78840f58",
      "parents": [
        "f44e39493c471b5e6a0807778c7a6439ea1b8adc"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 13:08:27 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 13:08:27 2012 -0700"
      },
      "message": "Lost the race.\n\nBug: 6373370\nChange-Id: If42a3de66b1d407b06064e91ff578dc9ca5ceed8\n"
    },
    {
      "commit": "e81e3a4f85147ada753100b8a78584ce008d9e63",
      "tree": "dd60c9acb8cf09d11a0c014653fff5dc7ce80c41",
      "parents": [
        "48b6b711a772893ba080d84b6cd3df0e5aa70ee2",
        "3bba8d0457408421a6468f03bbb36e9ff32b81cf"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Fri Apr 20 13:05:04 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 13:05:04 2012 -0700"
      },
      "message": "Merge \"Added NFC disable during phone shutdown\""
    },
    {
      "commit": "46c629d5fa42910632297a1fabc06f0b13b90b23",
      "tree": "193caf9b870a57c943218f27624a5656ff7ffc4a",
      "parents": [
        "80a76276dc9440ffad30dc4c820eb7d65f4df368"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Apr 20 12:56:08 2012 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Apr 20 12:56:08 2012 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: Id52413abf313dabc666037b09e191b374f11bf22\n"
    },
    {
      "commit": "48b6b711a772893ba080d84b6cd3df0e5aa70ee2",
      "tree": "515d708bddd5c61a51b0fb0f3a7706b7b3409797",
      "parents": [
        "987e982b6d29f005f85e3a0ab53ae80fbbd0a825",
        "8883d39feb8c514151be9a06fc64b9aea3043680"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Apr 20 12:49:15 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 12:49:15 2012 -0700"
      },
      "message": "Merge \"Import translations. DO NOT MERGE\""
    },
    {
      "commit": "8883d39feb8c514151be9a06fc64b9aea3043680",
      "tree": "492df3be5f0344ec129ad621a24d030d813f6c15",
      "parents": [
        "80a76276dc9440ffad30dc4c820eb7d65f4df368"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Apr 20 12:45:16 2012 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Apr 20 12:45:16 2012 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I89581a8cbda2a5f62fc42d383acf34756640d3b9\n"
    },
    {
      "commit": "987e982b6d29f005f85e3a0ab53ae80fbbd0a825",
      "tree": "087addc9fb34e9efc5bbf9c9398e565858ae1694",
      "parents": [
        "362bcb06ad92c561cc23410e59e11ead7bf38e22",
        "74a78b0f6e8c07cfc7da8f043987f6de0648bc05"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 20 12:15:31 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 12:15:31 2012 -0700"
      },
      "message": "Merge \"Add the ability to query the amount of cached data to MediaExtractor.\""
    },
    {
      "commit": "3bba8d0457408421a6468f03bbb36e9ff32b81cf",
      "tree": "a3744e19c1bef6b865f737f9453dbfe9f1ae4767",
      "parents": [
        "a94afeb5b3c3c95c6d2cf0cd4d69587aba569cfb"
      ],
      "author": {
        "name": "Sunil Jogi",
        "email": "sunil.jogi@nxp.com",
        "time": "Tue Apr 10 13:12:26 2012 -0700"
      },
      "committer": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Fri Apr 20 12:11:57 2012 -0700"
      },
      "message": "Added NFC disable during phone shutdown\n\nNFC was not disabled/deinitialized when phone shutdown. This patch\nadd NFC disable on phone shutdown which can complete any pending\nNFC transaction before phone shutdown.\n\nChange-Id: Id1e604be7c34adec8623a1e526d8ff99e18bf74b\n"
    },
    {
      "commit": "53eb13ce0a05426ceed03465ed37f7f3587eb4f4",
      "tree": "607736e5e4a1acb7858566f66cd8e710e02c8684",
      "parents": [
        "70c8723e63e2c58115c356bd4e9525b823b7bf28"
      ],
      "author": {
        "name": "Ye Jingjing",
        "email": "jingjing.ye@sonymobile.com",
        "time": "Mon Mar 19 14:18:44 2012 +0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Apr 20 12:04:34 2012 -0700"
      },
      "message": "Set AuthType to NONE if username of APN is not set\n\nWhen APN is edited, if authType and username are both not\nset, authType should be set to NONE before setup of\ndata call.\n\nThe code today checks mApn.user for NULL, but if\nuser has edited APN the mApn.user field will be set\nto an empty string.\n\nChange the check of mApn.user to also take care of\nthis case.\n\nChange-Id: I0e49247d46e1ba93da6dd951bbb75acc63fac73f\n"
    },
    {
      "commit": "74a78b0f6e8c07cfc7da8f043987f6de0648bc05",
      "tree": "666ffc93f47d0f95cf0ed11bfa07e395236db82f",
      "parents": [
        "e17fc7d6693ed36058a880c69332f642ad48cf18"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Thu Apr 19 16:24:32 2012 -0700"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Fri Apr 20 11:57:26 2012 -0700"
      },
      "message": "Add the ability to query the amount of cached data to MediaExtractor.\n\nChange-Id: I47ae60bc6fb8d88979c1f0d650b6ac528e811371\nrelated-to-bug: 6364341\n"
    },
    {
      "commit": "f90f4ed19c1bd7e0492c1aa1494a1d8ed5185275",
      "tree": "8ed1dad2682b74c7446e95d84b6baa489e12e905",
      "parents": [
        "71427bae84f51b5c269b2520c36d2811491e67fb"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 11:53:32 2012 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 11:53:32 2012 -0700"
      },
      "message": "docs: fix more broken links\n\nChange-Id: Ia5317f5ead8ac9810c893576596bd3a80f6ecbdb\n"
    },
    {
      "commit": "362bcb06ad92c561cc23410e59e11ead7bf38e22",
      "tree": "bdefb4e2f8d12d800f27e15f221fad384282655f",
      "parents": [
        "2b3462eb6fe1e4d008e616d4c5c7f97ee274e2d8",
        "eff0c081eee03a7f512735e16f14d8d6b0553ff6"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 11:40:39 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 20 11:40:39 2012 -0700"
      },
      "message": "am eff0c081: am 71427bae: docs: fix broken link\n\n* commit \u0027eff0c081eee03a7f512735e16f14d8d6b0553ff6\u0027:\n  docs: fix broken link\n"
    },
    {
      "commit": "2b3462eb6fe1e4d008e616d4c5c7f97ee274e2d8",
      "tree": "2c891779dc6272cb00ddb68db18f91b70af8debb",
      "parents": [
        "70c8723e63e2c58115c356bd4e9525b823b7bf28",
        "f44e39493c471b5e6a0807778c7a6439ea1b8adc"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 11:38:17 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 11:38:17 2012 -0700"
      },
      "message": "Merge \"When ANR happens, only remove ANR\u0027d window.\""
    },
    {
      "commit": "eff0c081eee03a7f512735e16f14d8d6b0553ff6",
      "tree": "889de5338d90bd6960340eccf823b08ebdd15458",
      "parents": [
        "08e9e9600acd8dc8b3d26e5fcb43614ecafd8cbe",
        "71427bae84f51b5c269b2520c36d2811491e67fb"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 11:36:45 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Apr 20 11:36:45 2012 -0700"
      },
      "message": "am 71427bae: docs: fix broken link\n\n* commit \u002771427bae84f51b5c269b2520c36d2811491e67fb\u0027:\n  docs: fix broken link\n"
    },
    {
      "commit": "f44e39493c471b5e6a0807778c7a6439ea1b8adc",
      "tree": "d07153558b48cf8ec07d752a0e527bf5679056e2",
      "parents": [
        "80a76276dc9440ffad30dc4c820eb7d65f4df368"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 11:33:27 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Apr 20 11:33:27 2012 -0700"
      },
      "message": "When ANR happens, only remove ANR\u0027d window.\n\nThe system bar uses input event injection to inject BACK keys\ninto the application.  If the receiving application ANRs, we\nused to clear the touch state unconditionally.  Doing so would\nprevent the system bar from receiving the ACTION_UP event so\nthe back button would continue to appear pressed until pressed\nagain.\n\nNow we are more careful to only remove the specific ANR\u0027d\nwindow from the touch state.  Other windows should continue\nto receive touch events as usual.\n\nChange-Id: If86bfc323e2c7aed82ca1334bc67da649953168f\n"
    },
    {
      "commit": "71427bae84f51b5c269b2520c36d2811491e67fb",
      "tree": "4299155657562df4cfe2d5f4c8180562e940fad4",
      "parents": [
        "ffad98c72e1ee9101065e19318c74ab4c735a477"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 11:01:21 2012 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Fri Apr 20 11:25:45 2012 -0700"
      },
      "message": "docs: fix broken link\n\nChange-Id: I24c44689713f7b27acde1d0b023598a5f7e6bb3b\n"
    },
    {
      "commit": "70c8723e63e2c58115c356bd4e9525b823b7bf28",
      "tree": "8e575f248657ac223fa7ce489963fa1120e1379e",
      "parents": [
        "7358233b0aa1e53381a136ed2d679ea2c3697adc",
        "30d773f9605c2483bc4be0e6ff61b5440201b463"
      ],
      "author": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Fri Apr 20 11:03:47 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 11:03:47 2012 -0700"
      },
      "message": "Merge \"Add fade-in and fade-out for selection handles.\""
    },
    {
      "commit": "7358233b0aa1e53381a136ed2d679ea2c3697adc",
      "tree": "b9132522b367854aee50117b542fab17b2d0623f",
      "parents": [
        "0b568ff17983ee84b6099e28c89cac414abd0739",
        "c2dd1d119244c9360b0b80ec0d13b17795883cfd"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Apr 20 11:02:41 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 11:02:41 2012 -0700"
      },
      "message": "Merge \"Copy new resources to other densities.\""
    },
    {
      "commit": "0b568ff17983ee84b6099e28c89cac414abd0739",
      "tree": "ce7432aca2377a96be759be64f754419ab30c4d7",
      "parents": [
        "80a76276dc9440ffad30dc4c820eb7d65f4df368",
        "157aafcbee0eabda798a3be406ccc4200ee86756"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Apr 20 10:56:05 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 10:56:05 2012 -0700"
      },
      "message": "Merge \"TextView\u0027s sub display lists have tighten bounds\""
    },
    {
      "commit": "c2dd1d119244c9360b0b80ec0d13b17795883cfd",
      "tree": "4ab1074e1c8a0438fc38c0057bea3fd320f0e17e",
      "parents": [
        "80a76276dc9440ffad30dc4c820eb7d65f4df368"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Apr 20 13:49:26 2012 -0400"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Apr 20 13:49:26 2012 -0400"
      },
      "message": "Copy new resources to other densities.\n\nBug: 6372775\nChange-Id: Ifea79db30878ba71243c0dfffb9494b0d517db7c\n"
    },
    {
      "commit": "30d773f9605c2483bc4be0e6ff61b5440201b463",
      "tree": "75027c7a5763eca4f0a1b85e770e7fe50c335454",
      "parents": [
        "5b086eb5438b5048bd3fbf4e2ed9390ec10245b3"
      ],
      "author": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Fri Apr 20 08:34:44 2012 -0700"
      },
      "committer": {
        "name": "George Mount",
        "email": "mount@google.com",
        "time": "Fri Apr 20 10:41:05 2012 -0700"
      },
      "message": "Add fade-in and fade-out for selection handles.\n\n Bug 6083041\n\nChange-Id: Ie48cc2da3cb05df82644d8f3c0a3f1d36ca67162\n"
    },
    {
      "commit": "d6b1098e1f46530528dfea415655468ec994bbb6",
      "tree": "009bf147692a0c4a82f6d3b488617e4eb044ace1",
      "parents": [
        "e17fc7d6693ed36058a880c69332f642ad48cf18"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Apr 19 18:01:35 2012 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Apr 20 10:23:24 2012 -0700"
      },
      "message": "Support fallback action if unhandled key event\n\n Bug: 6023055\n\nChange-Id: Ib802c4b9d1b606f9ea7a5081e30c50b5bd78e30c\n"
    },
    {
      "commit": "80a76276dc9440ffad30dc4c820eb7d65f4df368",
      "tree": "e52ec3c07ead094f4c166e07061cb782d1a3fe36",
      "parents": [
        "cd3e6e226474c98be56ca587168a908135d3073a"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Wed Apr 18 10:52:18 2012 -0400"
      },
      "committer": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Fri Apr 20 12:45:02 2012 -0400"
      },
      "message": "Add visual feedback for notification expandability.\n\nChange-Id: I0b82a465a126a6d0ec6cf6af87dc56817765b995\n"
    },
    {
      "commit": "cd3e6e226474c98be56ca587168a908135d3073a",
      "tree": "f98f539b5a76de8a7229c2d7615d9f1291d7e60b",
      "parents": [
        "d6d6d35c541088b5f21c489d41a2f5917c508ffe",
        "d84e5937468f6ebf2313ccd5ae54d5405f5e9cde"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Fri Apr 20 09:42:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 09:42:06 2012 -0700"
      },
      "message": "Merge \"fix press feedback on notification rows\""
    },
    {
      "commit": "d6d6d35c541088b5f21c489d41a2f5917c508ffe",
      "tree": "8b538a439c85d7f8d755ef6d043bf32a551bef3a",
      "parents": [
        "e17fc7d6693ed36058a880c69332f642ad48cf18",
        "a0c2eb27b408660b02fa248943166d6c7e447908"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Apr 20 09:40:55 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 09:40:55 2012 -0700"
      },
      "message": "Merge \"Deprecate\""
    },
    {
      "commit": "d84e5937468f6ebf2313ccd5ae54d5405f5e9cde",
      "tree": "dca721125f7a9b1d5147c32a651173ba1dc38721",
      "parents": [
        "e17fc7d6693ed36058a880c69332f642ad48cf18"
      ],
      "author": {
        "name": "Chris Wren",
        "email": "cwren@android.com",
        "time": "Thu Apr 19 17:58:03 2012 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 09:40:11 2012 -0700"
      },
      "message": "fix press feedback on notification rows\n\nChange-Id: I50de2f4d6142c2553428abc853c820f4354d0640\nBug: 6362246\n"
    },
    {
      "commit": "e17fc7d6693ed36058a880c69332f642ad48cf18",
      "tree": "e0d04e657893952a0fec210fa100c67f6320dc2c",
      "parents": [
        "e30df7744c2ff5c6f23ed7d6fb2cd229188c32f8",
        "8969ea12ca55eef75783796ba52a0120f7188095"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Apr 20 03:21:30 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 20 03:21:30 2012 -0700"
      },
      "message": "Merge \"Improve android.hardware.Camera.setRotation javadoc.\""
    },
    {
      "commit": "8969ea12ca55eef75783796ba52a0120f7188095",
      "tree": "5b0c3cdbf501598c9b97d2b7a2f93e8b126cdc14",
      "parents": [
        "83cb5807b0eaa36b417ce5c978e4e460b1fcc9e2"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Apr 20 17:38:09 2012 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Fri Apr 20 17:38:09 2012 +0800"
      },
      "message": "Improve android.hardware.Camera.setRotation javadoc.\n\nChange-Id: If6c77044f3f4567ab0c3987fb2ddc47ae307582a\n"
    },
    {
      "commit": "d0d7503fd3e941113094532f28986f49b11b5fdb",
      "tree": "98866f30fbc23eceb6e34cc93801c92c93d4c812",
      "parents": [
        "5dd32fbcbf750b806175bc8648b6fae280dad576"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 19 23:12:09 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 19 23:12:09 2012 -0700"
      },
      "message": "Move handling of package changes to a background thread.\n\nHelps get rid of some jank when installing applications.\n\nChange-Id: I97d0022f82d67796e334d37086e5911dd6ca6b62\n"
    },
    {
      "commit": "e30df7744c2ff5c6f23ed7d6fb2cd229188c32f8",
      "tree": "542de24e4353eb817f9d31753e0b60763d192f57",
      "parents": [
        "b0668e4d1964cea8d54f9bc49445ddd0e4530ba3",
        "fefd20e927b7252d63acb7bb1852c5188e3c1b2e"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Apr 19 22:09:27 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 19 22:09:27 2012 -0700"
      },
      "message": "Merge \"Adding an opt-in mechanism for gesture detection in AccessibilityService.\""
    },
    {
      "commit": "fefd20e927b7252d63acb7bb1852c5188e3c1b2e",
      "tree": "1c61fca48a8221e93aa14f16da9881560be69313",
      "parents": [
        "749e796eb3a42e21613a3b360000373601a8f50d"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Apr 19 21:44:35 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Apr 19 22:08:42 2012 -0700"
      },
      "message": "Adding an opt-in mechanism for gesture detection in AccessibilityService.\n\n1. An accessibility service has to explicitly opt in to be notified\n   for gestures by the system. There is only one accessibility service\n   that handles gestures and in case it does not handle a gesture\n   the system performs default handling. This default handling ensures\n   that we have gesture navigation even if no accessibility service\n   would like to participate/customize the interaction model.\n\nbug:5932640\n\nChange-Id: Id8194293bd94097b455e9388b68134a45dc3b8fa\n"
    },
    {
      "commit": "b0668e4d1964cea8d54f9bc49445ddd0e4530ba3",
      "tree": "e831092c15a09a339a00908aeff6a0acc763d773",
      "parents": [
        "ad04c9ccc9d30b44ef4d95e9bed195b83a22b03c"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Apr 19 22:02:04 2012 -0700"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Apr 19 22:02:04 2012 -0700"
      },
      "message": "follow up file original policy change\n\nenable the access for webview test\n\nChange-Id: Iebde5f3175eabf6e084dc1a2fe8b9dce280ebe7c\n"
    },
    {
      "commit": "ad04c9ccc9d30b44ef4d95e9bed195b83a22b03c",
      "tree": "64ab630a48abacb7391e06ca2b9b82b8a5eb50c0",
      "parents": [
        "8962abd4e2f2c052110e40352673735e3789d74a",
        "08e9e9600acd8dc8b3d26e5fcb43614ecafd8cbe"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:52:18 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:52:18 2012 -0700"
      },
      "message": "am 08e9e960: am ffad98c7: docs: fix markup error in resource sidenav\n\n* commit \u002708e9e9600acd8dc8b3d26e5fcb43614ecafd8cbe\u0027:\n  docs: fix markup error in resource sidenav\n"
    },
    {
      "commit": "08e9e9600acd8dc8b3d26e5fcb43614ecafd8cbe",
      "tree": "d561e9ce3ea28edc7c9f1e241a04ee2bb871489d",
      "parents": [
        "5da1c179305f7c9d79a1c1b8f14d484d10189183",
        "ffad98c72e1ee9101065e19318c74ab4c735a477"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:48:50 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:48:50 2012 -0700"
      },
      "message": "am ffad98c7: docs: fix markup error in resource sidenav\n\n* commit \u0027ffad98c72e1ee9101065e19318c74ab4c735a477\u0027:\n  docs: fix markup error in resource sidenav\n"
    },
    {
      "commit": "8962abd4e2f2c052110e40352673735e3789d74a",
      "tree": "bf863b95121295253757869a1df02ebb63dc1472",
      "parents": [
        "3c6ac8c022c5354827c9f797f34595f70fec4af0",
        "330ec91e02406ba0d62e5672c6f0e2ed271f6898"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Apr 19 19:47:09 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 19 19:47:09 2012 -0700"
      },
      "message": "Merge \"Check whether db was really opened read/write.\""
    },
    {
      "commit": "330ec91e02406ba0d62e5672c6f0e2ed271f6898",
      "tree": "6af388cfe3833115638a38e2aec2452f9a965529",
      "parents": [
        "59a422e90035ce5df45c526607db2d3303e3112e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Apr 19 19:44:43 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Apr 19 19:44:43 2012 -0700"
      },
      "message": "Check whether db was really opened read/write.\n\nBug: 6176510\nChange-Id: I7aeeb4340e55d554a57bb46c3c27ab37186f7e3a\n"
    },
    {
      "commit": "ffad98c72e1ee9101065e19318c74ab4c735a477",
      "tree": "ca9ed8c16aab4e420f67237a075953fda469f756",
      "parents": [
        "5f8173f35b241e2f15dad1218b07216c9163b80d"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:31:29 2012 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:31:29 2012 -0700"
      },
      "message": "docs: fix markup error in resource sidenav\n\nChange-Id: I70f2c906e83b96661005d24eaef448ec9246590e\n"
    },
    {
      "commit": "3c6ac8c022c5354827c9f797f34595f70fec4af0",
      "tree": "d9b5bb694565ca5bddc3edb96353a977e2ee5614",
      "parents": [
        "a277e14fb6e74636aa36132d2228192c969c6200",
        "5da1c179305f7c9d79a1c1b8f14d484d10189183"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:30:36 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:30:36 2012 -0700"
      },
      "message": "am 5da1c179: am 5f8173f3: docs: fix javadoc link\n\n* commit \u00275da1c179305f7c9d79a1c1b8f14d484d10189183\u0027:\n  docs: fix javadoc link\n"
    },
    {
      "commit": "5da1c179305f7c9d79a1c1b8f14d484d10189183",
      "tree": "d2836525c5c9ead25bec19cab00f7ec359ef3175",
      "parents": [
        "2442e1e067b78cd215544b2e32725ce0b92d0f72",
        "5f8173f35b241e2f15dad1218b07216c9163b80d"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:28:01 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:28:01 2012 -0700"
      },
      "message": "am 5f8173f3: docs: fix javadoc link\n\n* commit \u00275f8173f35b241e2f15dad1218b07216c9163b80d\u0027:\n  docs: fix javadoc link\n"
    },
    {
      "commit": "a277e14fb6e74636aa36132d2228192c969c6200",
      "tree": "ab8400514df077de5a44a4bb9f0e15cf3101797a",
      "parents": [
        "9c10486a5204e606c4314c234b1ecd1362e88d0d",
        "c169366f2cc44fc395dba76c763505ac2bd61640"
      ],
      "author": {
        "name": "Brian Colonna",
        "email": "bcolonna@google.com",
        "time": "Thu Apr 19 19:26:30 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 19 19:26:30 2012 -0700"
      },
      "message": "Merge \"Moved biometric sensor selected check into LPKV\""
    },
    {
      "commit": "5f8173f35b241e2f15dad1218b07216c9163b80d",
      "tree": "f410091d80a6bf829374a9da9bded479ab76befd",
      "parents": [
        "421854e6e8fe3418d22ae444567a06b5f308c896"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:24:50 2012 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:24:50 2012 -0700"
      },
      "message": "docs: fix javadoc link\n\nChange-Id: Ife9c4948c484eaf1e01dbb269bc61e657cc5527e\n"
    },
    {
      "commit": "9c10486a5204e606c4314c234b1ecd1362e88d0d",
      "tree": "18733657c4e1419c5ae240d1c50853452ea56af3",
      "parents": [
        "58fe7c02d95ed36bf90062948c325dafcee11b56",
        "2442e1e067b78cd215544b2e32725ce0b92d0f72"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:24:37 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:24:37 2012 -0700"
      },
      "message": "am 2442e1e0: am 421854e6: docs: add fragments class to training TOC\n\n* commit \u00272442e1e067b78cd215544b2e32725ce0b92d0f72\u0027:\n  docs: add fragments class to training TOC\n"
    },
    {
      "commit": "2442e1e067b78cd215544b2e32725ce0b92d0f72",
      "tree": "77a5c57875cc0a7452f7b2bb98c3fa9cb4ebe501",
      "parents": [
        "72c13446b432915f75a21e887b3ee6bbb655f757",
        "421854e6e8fe3418d22ae444567a06b5f308c896"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:22:11 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:22:11 2012 -0700"
      },
      "message": "am 421854e6: docs: add fragments class to training TOC\n\n* commit \u0027421854e6e8fe3418d22ae444567a06b5f308c896\u0027:\n  docs: add fragments class to training TOC\n"
    },
    {
      "commit": "421854e6e8fe3418d22ae444567a06b5f308c896",
      "tree": "751cb5ff6fb44cb88db6d5729f85aca13f7caf6a",
      "parents": [
        "67e988e0e96dcd0f9c8f07e5b685dc7c8224a884"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:18:44 2012 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:18:44 2012 -0700"
      },
      "message": "docs: add fragments class to training TOC\n\nChange-Id: Ib54257d74f43eb85855685b49f8b0fa70ca6e984\n"
    },
    {
      "commit": "58fe7c02d95ed36bf90062948c325dafcee11b56",
      "tree": "ff4335a693ba71ad54411e055714f904afb3f685",
      "parents": [
        "926b00b3b114960c723fd3a05a27080485bb105e",
        "72c13446b432915f75a21e887b3ee6bbb655f757"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:13:26 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:13:26 2012 -0700"
      },
      "message": "am 72c13446: am 67e988e0: Merge \"docs:  for AU basic training on fragments including ZIP for sample app\" into ics-mr1\n\n* commit \u002772c13446b432915f75a21e887b3ee6bbb655f757\u0027:\n  docs:  for AU basic training on fragments including ZIP for sample app\n"
    },
    {
      "commit": "926b00b3b114960c723fd3a05a27080485bb105e",
      "tree": "3f15c2ec9dfb252b03304a7bfd6b7b6eaf715a41",
      "parents": [
        "dd184f9fb1cca51e2840ece187126caf933ab409",
        "559f184a89315ff646c55b12e0f9664abff72a7e"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:10:29 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:10:29 2012 -0700"
      },
      "message": "am 559f184a: am 6ea11c0a: Merge \"docs: Add 101 class on activity lifecycle including ZIP for sample app\" into ics-mr1\n\n* commit \u0027559f184a89315ff646c55b12e0f9664abff72a7e\u0027:\n  docs: Add 101 class on activity lifecycle including ZIP for sample app\n"
    },
    {
      "commit": "72c13446b432915f75a21e887b3ee6bbb655f757",
      "tree": "a80bbd5c4b8113ff5615d5a094f158bbf142f6ce",
      "parents": [
        "559f184a89315ff646c55b12e0f9664abff72a7e",
        "67e988e0e96dcd0f9c8f07e5b685dc7c8224a884"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:09:37 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:09:37 2012 -0700"
      },
      "message": "am 67e988e0: Merge \"docs:  for AU basic training on fragments including ZIP for sample app\" into ics-mr1\n\n* commit \u002767e988e0e96dcd0f9c8f07e5b685dc7c8224a884\u0027:\n  docs:  for AU basic training on fragments including ZIP for sample app\n"
    },
    {
      "commit": "c169366f2cc44fc395dba76c763505ac2bd61640",
      "tree": "4830c7f2592f721081080725908f8156674bf5e9",
      "parents": [
        "8c44c181dea290c86f591c44f8955682512a136c"
      ],
      "author": {
        "name": "Brian Colonna",
        "email": "bcolonna@google.com",
        "time": "Thu Apr 19 11:34:04 2012 -0400"
      },
      "committer": {
        "name": "Brian Colonna",
        "email": "bcolonna@google.com",
        "time": "Thu Apr 19 22:07:30 2012 -0400"
      },
      "message": "Moved biometric sensor selected check into LPKV\n\nThis change moves all of the mBiometricUnlock.installedAndSelected()\nchecks from inside the biometric sensor implementation to\nLockPatternKeyguardView.  There are several reasons for this change:\n\n1) Instead of constructing a BiometricUnlock object and asking it if\nit\u0027s enabled, LPKV can check this for itself and not even bother\nconstructing it if it\u0027s not enabled.\n\n2) Since mBiometricUnlock will not be constructed if biometric unlock\nisn\u0027t enabled, LPKV can simply do null checks to see if it should call\nbiometric unlock functions.  So it serves the dual-purpose of ensuring\nthere will be no null-pointer exceptions with regards to using the\nbiometric unlock.\n\n3) This greatly reduces the chance of bugs being introduced into\nnon-biometric unlock methods because no biometric unlock calls will be\nattempted if biometric unlock is not enabled.  Previously, the calls\nwould be made and then the biometric unlock would check if it was\nenabled and return, which was not only bug-prone, but also\ninefficient.\n\n4) This simplifies the biometric unlock interface by removing an\nunnecessary function call.\n\n5) The biometric unlock implementations do not have to check if they\nare installed every time they do something, which greatly cleans up\nbiometric unlock implementations.  It makes much more sense for the\nbiometric unlock functions to be able to assume that they aren\u0027t\nbeing called unless they should be.\n\n6) Eventually when there is more than one possible biometric unlock\nmethod, it will make much more sense for LPKV to be in charge of\nwhat is constructed and what isn\u0027t.\n\nChange-Id: I5437ac05d8ceb2b182fe372cd6c75ad944ade28f\n"
    },
    {
      "commit": "559f184a89315ff646c55b12e0f9664abff72a7e",
      "tree": "31bfcaa2d4b35bf429f67ba3648839f0f5e23680",
      "parents": [
        "69e67195fdb3805b76031e259b4b27a01b3e7cea",
        "6ea11c0a20db6b808b92cfa40ef7f916825cee5e"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Apr 19 19:06:51 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Apr 19 19:06:51 2012 -0700"
      },
      "message": "am 6ea11c0a: Merge \"docs: Add 101 class on activity lifecycle including ZIP for sample app\" into ics-mr1\n\n* commit \u00276ea11c0a20db6b808b92cfa40ef7f916825cee5e\u0027:\n  docs: Add 101 class on activity lifecycle including ZIP for sample app\n"
    }
  ],
  "next": "67e988e0e96dcd0f9c8f07e5b685dc7c8224a884"
}
