)]}'
{
  "log": [
    {
      "commit": "745a42bbb9db8d54af5381ef5fe41828bf6fc352",
      "tree": "320320b05df750612e8af1cbb184e7b98b639c15",
      "parents": [
        "a151ef8c667a52d9fae28c09f780784f19bdb039",
        "1bcc3d691fd1cb68abced62caf3024e2bb228561"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Apr 05 00:22:58 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 05 00:23:11 2013 +0000"
      },
      "message": "Merge \"aapt: add support for optional uses-permission\" into jb-mr2-dev"
    },
    {
      "commit": "1bcc3d691fd1cb68abced62caf3024e2bb228561",
      "tree": "d0a53d0ed98af85ef76ad74ae2e837f76c9b9be7",
      "parents": [
        "55cfcd75691581ffc4f88034711a2442db619a53"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Apr 03 09:00:02 2013 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Apr 03 16:32:40 2013 -0700"
      },
      "message": "aapt: add support for optional uses-permission\n\nApplications can request a permission with android:required\u003d\"false\".\nFor example:\n\n\u003cuses-permission android:name\u003d\"android.permission.READ_PHONE_STATE\" android:required\u003d\"false\" /\u003e\n\nMake aapt understand such permissions.\n\nBug: 8522021\nChange-Id: I7d3af64e7c3eca608316d5bea19c4ea639dd2b7a\n"
    },
    {
      "commit": "b1b9a8ac07ea7d438eda613f4c798dd8b10a66ce",
      "tree": "842924f02503946c4cde9d1cc21817b2a4d3af48",
      "parents": [
        "da160ec313d844b09818a91463631440a1b8a09c"
      ],
      "author": {
        "name": "Brian Colonna",
        "email": "bcolonna@google.com",
        "time": "Fri Mar 29 11:52:42 2013 -0400"
      },
      "committer": {
        "name": "Brian Colonna",
        "email": "bcolonna@google.com",
        "time": "Fri Mar 29 18:35:43 2013 -0400"
      },
      "message": "FUL now restarts when flipping tablet 180 (bug 7484464)\n\nWhen a tablet rotates, FUL must be stopped and restarted in a new\nposition.  90 degree rotations cause a configuration change, causing\nFUL to be automatically reconstructed in the new location.  However,\na 180 degree rotation is not a configuration change, so FUL was not\nrestarting.  A 180 degree rotation happens more often than one might\nthink.  If you set the tablet down and later picked it up in the\nopposite orientation, FUL would not work prior to this fix.\n\nThis change adds a rotation watcher to KeyguardFaceUnlockView.  It\nwatches for 180 degree rotations and stops and restarts FUL\naccordingly.\n\nThe rotation watcher callback must be unregistered when\nKeyguardFaceUnlockView is recreated (as during 90 degree rotation\nchanges), otherwise the number of rotation watcher callbacks will keep\ngrowing and they will never go away.  This is a problem not just\nbecause there are many callbacks hanging around, but also because the\nold callbacks end up trying to access biometric unlock views that no\nlonger exist, resulting in crashes.  So, a simple function was added\nto the window manager to unregister a rotation watcher.\n\nChange-Id: Ie1ef20a9a22b8f4e39918987dff2b8ad444fcfd1\n"
    },
    {
      "commit": "f3d46ce88f0777dddfbecebc9bd7f2f216206365",
      "tree": "93877901d285b49c7dfc48f6a1e3972a214234e8",
      "parents": [
        "3bcc2fbaad4064360cee26708d702b7ee575f448"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 26 18:00:42 2013 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 26 18:00:42 2013 -0700"
      },
      "message": "Fix build.\n\nChange-Id: I51b87ee5f0b7f396aad7e239893d9f0764f04bb6\n"
    },
    {
      "commit": "4ec6cc51087f310acf6f933ae2b69f1520b78453",
      "tree": "090fffb4c9e84a683dae619d55d4cf0cd88537f9",
      "parents": [
        "43abdc486d19c137b79a2bde9ce4706c91656bda"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 05 10:28:05 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 05 10:28:05 2013 -0800"
      },
      "message": "Fix build.\n\nChange-Id: Iaa70b05a3cfd372518ec35aa8bcea2f9d78b8292\n"
    },
    {
      "commit": "2e5528c5e0f354c7b780ca5ab436809efd611dcc",
      "tree": "97c7e8c0bb48c9364d18e5dc9f4b50e36f66b53d",
      "parents": [
        "19a38f6f408d8672ca8d253fb7a6039a7f25c96f",
        "2ad920759b1981eaf526fd37a314fbc5a3ed90ae"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Feb 26 01:08:28 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 26 01:08:28 2013 +0000"
      },
      "message": "Merge \"Revert ActivityManager changes for tasks. DO NOT MERGE\" into jb-mr2-dev"
    },
    {
      "commit": "2ad920759b1981eaf526fd37a314fbc5a3ed90ae",
      "tree": "3835b2fb240c592668afa5019f2dbad7036513f1",
      "parents": [
        "ff4fcdb98c9575642c48f1daeafff4b257769e81"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Feb 25 16:19:24 2013 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Feb 25 17:07:39 2013 -0800"
      },
      "message": "Revert ActivityManager changes for tasks. DO NOT MERGE\n\nKeeping all activity\u003d\u003etask changes in master and removing them\nfrom jb-mr2.\n\nRevert \"Update histories simultaneously.\"\nRevert \"Add null check to setAppGroupId.\"\nRevert \"Fix crashing bug in validator.\"\nRevert \"Switch topRunning* and moveTaskTo*\"\nRevert \"Begin switch over to task based history.\"\nRevert \"Reset and reuse Iterators and don\u0027t new() one.\"\nRevert \"Remove AppWindowToken lists.\"\nRevert \"Fix build.\"\nRevert \"Remove unused App methods.\"\nRevert \"Stop using AppToken movement and start using Task.\"\nRevert \"Replace access to mAppTokens with AppTokenIterator\"\nRevert \"Refactor setAppOpVisibility implementation.\"\nRevert \"Add AppWindowTokens to TaskList.\"\nRevert \"Make ActivityStack.mHistory private.\"\nRevert \"Migrate AppWindowToken lists into DisplayContent.\"\n\nChange-Id: I5722c9a4956dccb52864207e2967690bc58e4ebb\n"
    },
    {
      "commit": "ec559ff78caa16cffcc7b9d688fe911e8945e17d",
      "tree": "1312b153ba9ee001ceb8ed0e09c95fa85ada9bce",
      "parents": [
        "f4b36ad1617920691def64c00179666e2e42d5fa"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Feb 25 15:42:07 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Feb 25 15:42:07 2013 -0800"
      },
      "message": "Fix typo.\n\nChange-Id: I71c8458e02dc9b9a4c59e51ded37b57a930038f9\n"
    },
    {
      "commit": "c4aad01cbbb69c916ef323693e1fd0560b0eccba",
      "tree": "20f636eb690f976e9f83ec0a23e6ac991776b08b",
      "parents": [
        "fb6806570911851fb8cbaaf5bdf275a89f3c3ef4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 22 15:05:25 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 22 19:14:37 2013 -0800"
      },
      "message": "Formalize overscan metrics.\n\nThe window manager now maintains and reports a new formal\n\"overscan insets\" for each window, much like the existing\ncontent and visible insets.  This is used to correctly\nposition the various UI elements in the various combination\nof layout options.  In particular, this allows us to have\nan activity that is using fitSystemWindows to have the content\nof its UI extend out to the visible content part of the screen\nwhile still positioning its fixed UI elements inside the\nstandard content rect (and the entire window extending all\nthe way into the overscan area to fill the screen as desired).\n\nOkay, maybe that is not written so clearly.  Well, it made\nmy head hurt too, so suffer!\n\nThe key thing is that windows now need to know about three\nrectangles: the overall rectangle of the window, the rectangle\ninside of the overscan area, and the rectangle inside of the\ncontent area.  The FLAG_LAYOUT_IN_OVERSCAN option controls\nwhether the second rectangle is pushed out to fill the entire\noverscan area.\n\nAlso did some improvements to debug dumping in the window\nmanager.\n\nChange-Id: Ib2368c4aff5709d00662c799507c37b6826929fd\n"
    },
    {
      "commit": "29ae06633d6e63fdb29f229f75de758a542c6b66",
      "tree": "d1e9e03516fd56a2ac57bfd0676d66a05e9ac1d1",
      "parents": [
        "9c64d95e51454acfc990d560347850d5a1fe874a",
        "ec6156f9e884ba85c76a9c4683f83f18b3f64afa"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Feb 20 17:08:24 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 20 17:08:24 2013 -0800"
      },
      "message": "am ec6156f9: Merge \"Fix the build.\"\n\n* commit \u0027ec6156f9e884ba85c76a9c4683f83f18b3f64afa\u0027:\n  Fix the build.\n"
    },
    {
      "commit": "ef04a9b7e1dee38f191a8f70be89a1542ccbe367",
      "tree": "c3d509fa946c9897c28a647f76af2779652fc5f7",
      "parents": [
        "ab8e936e852b984624087c97dffc4c74b250fc68"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Feb 20 16:58:59 2013 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Feb 20 16:58:59 2013 -0800"
      },
      "message": "Fix the build.\n\nChange-Id: If53878937fe1ca01ad8db9f9d201d0f9aaaec81b\n"
    },
    {
      "commit": "4f7fb00f6cb74ef506e65994fb04af3280e958fc",
      "tree": "3247e2a607451c79cdb01a3619a29434d63dd6fd",
      "parents": [
        "cd85845b6e7ac35065f576fa6fbc823bfa0bbd19",
        "ee973c27e339a23e0b93d816a97b33954af66bea"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 19 13:38:49 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 19 13:38:49 2013 -0800"
      },
      "message": "am ee973c27: Fix build.\n\n* commit \u0027ee973c27e339a23e0b93d816a97b33954af66bea\u0027:\n  Fix build.\n"
    },
    {
      "commit": "ee973c27e339a23e0b93d816a97b33954af66bea",
      "tree": "e4b2ddbac12870c38a4c726e5b91d52c899cd053",
      "parents": [
        "ccacb8e88bb4369225e5a97bd64b8351fe04f1b5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 19 13:36:32 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 19 13:36:32 2013 -0800"
      },
      "message": "Fix build.\n\nChange-Id: I277de38a70f3a2e5c1997a3fe5c2e825692ae9e1\n"
    },
    {
      "commit": "34ab0a4a181cf9a9267625af59a3b52bd2a7b56e",
      "tree": "8df6403861034a496ea2778d69313179e73e7cc2",
      "parents": [
        "8cf1921fc027409fb29ffe45e12da6d25197def8",
        "7c93839d7b41727c11925b034d4ec84491d3dee1"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Fri Feb 15 16:11:26 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 15 16:11:26 2013 -0800"
      },
      "message": "am 7c93839d: Revert \"Tentative fix for aidl import issue\"\n\n* commit \u00277c93839d7b41727c11925b034d4ec84491d3dee1\u0027:\n  Revert \"Tentative fix for aidl import issue\"\n"
    },
    {
      "commit": "7c93839d7b41727c11925b034d4ec84491d3dee1",
      "tree": "65394461734ad752e1b12b716514f6ba25aa3797",
      "parents": [
        "7f84ed31f01997d4906e408c335f783a91d197d5"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Fri Feb 15 16:07:33 2013 -0800"
      },
      "committer": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Fri Feb 15 16:07:56 2013 -0800"
      },
      "message": "Revert \"Tentative fix for aidl import issue\"\n\nFix build.\n\nThis reverts commit 4f115e08cb68aaf77693f3f4598f0eb5f7634777.\n\nChange-Id: Ic4f51e3492f54afec5f0eeb48e08491eb47f3c04\n"
    },
    {
      "commit": "1662cf99b6a596d7fd3b9a57bbcb6b66ae0d1ebd",
      "tree": "13e98a67588111e8d79c5f0f24797d52659390b8",
      "parents": [
        "9002ffeb97ed635e646ad88b9b790dcfa1fca936",
        "8acb27c505c610b4027ec3d140ccc7722ab4faa3"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Fri Feb 15 15:19:22 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 15 15:19:22 2013 -0800"
      },
      "message": "am 8acb27c5: Merge \"Tentative fix for aidl import issue\"\n\n* commit \u00278acb27c505c610b4027ec3d140ccc7722ab4faa3\u0027:\n  Tentative fix for aidl import issue\n"
    },
    {
      "commit": "8acb27c505c610b4027ec3d140ccc7722ab4faa3",
      "tree": "7cbfc23f7d5c8230c9f8d07b347acbb371a954e1",
      "parents": [
        "156a2fc65a2b493a73fa1031f54664a8086c5f4e",
        "4f115e08cb68aaf77693f3f4598f0eb5f7634777"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Fri Feb 15 23:16:07 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 15 23:16:08 2013 +0000"
      },
      "message": "Merge \"Tentative fix for aidl import issue\""
    },
    {
      "commit": "4f115e08cb68aaf77693f3f4598f0eb5f7634777",
      "tree": "60f04cf05eda60bc58fb6e9e1926065416d7958e",
      "parents": [
        "00dcbf8f58c36e3e8803336aa947a333411f43d0"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Feb 14 16:12:54 2013 -0800"
      },
      "committer": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Feb 14 16:12:54 2013 -0800"
      },
      "message": "Tentative fix for aidl import issue\n\nFix issue when aidl generation doesn\u0027t use the right type when\nit is a suffix of a pre-declared type.\n\neg. android.location.Location and foo.android.location.Location. The\naidl generation will never use foo.android.location.Location.\n\nThe tentative fix reverses the order in which Namespace.Search iterates\nthrough the known types.\n\nA better fix would be to annotate the types that are declared in the\naidl import statements to be prioritary in Namespace.Search. Lmk if I\nyou agree with this approach and think that this is worth the work.\nThanks!\n\nChange-Id: I97dd1a1d417075accf1d61f9aba5aba3dea175c6\n"
    },
    {
      "commit": "102f7110435415cf22187dcf6c01e599e544d5ce",
      "tree": "8a9f38a6c070716cb3c2cb7aba63523a432ab335",
      "parents": [
        "9678c61fecfafea3818e7b020e9723bd1c287bb3",
        "534d136aa66fb13f7c1b482513627de45c218c29"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Feb 14 10:16:57 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 14 10:16:57 2013 -0800"
      },
      "message": "am 534d136a: Merge \"Remove unused App methods.\"\n\n# Via Android (Google) Code Review (1) and Craig Mautner (1)\n* commit \u0027534d136aa66fb13f7c1b482513627de45c218c29\u0027:\n  Remove unused App methods.\n"
    },
    {
      "commit": "b0c0b1fd70e3edeb724e2b2fb2c7063eb943f05e",
      "tree": "698cbfec349c6b8b4a02daf5bdb7a30ee157158e",
      "parents": [
        "ee6e27c122491356f5203b105206a55f0e984fe7"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Wed Feb 13 15:22:54 2013 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Wed Feb 13 15:24:14 2013 -0800"
      },
      "message": "Remove unused App methods.\n\nNow that the Task methods have replaced the App methods remove\nthe App methods.\n\nChange-Id: I0e7432f2c6f99708759ed8c871d20eb5bd38c3c2\n"
    },
    {
      "commit": "c932760f667cf56ca7a1aeffde505745dc3632e1",
      "tree": "280d86bf8205c51a2b6b59da6c617e220677e790",
      "parents": [
        "eb26fbe427192bc87bb3dbb7882dbf87f760fab2",
        "7c1a49f5f5ed6613d736464bf5001b777e89ced2"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Feb 13 23:14:26 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 13 23:14:58 2013 +0000"
      },
      "message": "Merge \"Revert \"Merge remote-tracking branch \u0027goog/master-chromium\u0027 into \u0027goog/master\u0027\" DO NOT MERGE\""
    },
    {
      "commit": "7c1a49f5f5ed6613d736464bf5001b777e89ced2",
      "tree": "c6726264bde03f4c5957876921d4b15a835b2c71",
      "parents": [
        "d04892d207d50378356feef181ac4e4eff9652d7"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Feb 13 10:25:12 2013 -0800"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Feb 13 10:50:20 2013 -0800"
      },
      "message": "Revert \"Merge remote-tracking branch \u0027goog/master-chromium\u0027 into \u0027goog/master\u0027\" DO NOT MERGE\n\nThis reverts commit 6c0307dd0aefe9a08794b155fc03ee60ebd14f25, reversing\nchanges made to a2cd828b749c444d55c2c41c7dbb85088ff94b9f.\n\nConflicts:\n\tpackages/SystemUI/res/values-sv/strings.xml\n\nChange-Id: Ia178efe8b14751583d47b2826bfe3d3d5463dd2e\n"
    },
    {
      "commit": "b47e6c77b34da8bde5d706e5a25a413b8cc2e0ba",
      "tree": "5662b3e7cbbea80cebfe08943b46038d7e3ad70d",
      "parents": [
        "4f0dd02d00107fedda0fe42978ed98855dc53b85",
        "56a2301c7a1169a0692cadaeb48b9a6385d700f5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 12 23:54:56 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 12 23:54:56 2013 +0000"
      },
      "message": "Merge \"Implement issue #6646859: 4K!!!!  4K!!!!  4K!!!!\""
    },
    {
      "commit": "4f0dd02d00107fedda0fe42978ed98855dc53b85",
      "tree": "e9839d314ac57b996f33a6f00ea4cd43eb9766c9",
      "parents": [
        "d04892d207d50378356feef181ac4e4eff9652d7",
        "36ee5485b85e34008dc31e0f7bace1b2516c5db5"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Feb 12 15:54:02 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 12 15:54:02 2013 -0800"
      },
      "message": "am 36ee5485: am 5d5c05de: am b7a4aed9: am f70b8c1c: Merge \"Fix DateFormat for layoutlib.\" into jb-mr1.1-dev\n\n# Via Android Git Automerger (3) and others\n* commit \u002736ee5485b85e34008dc31e0f7bace1b2516c5db5\u0027:\n  Fix DateFormat for layoutlib.\n"
    },
    {
      "commit": "36ee5485b85e34008dc31e0f7bace1b2516c5db5",
      "tree": "cb1043e6d429b2978b799a46ae29c9a8f45ff4bd",
      "parents": [
        "2d130ceede3dd3af8bcc1d154fb086188c075803",
        "5d5c05dee9911eaf8add2d4298641e60f2a113d5"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Feb 12 15:52:46 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 12 15:52:46 2013 -0800"
      },
      "message": "am 5d5c05de: am b7a4aed9: am f70b8c1c: Merge \"Fix DateFormat for layoutlib.\" into jb-mr1.1-dev\n\n# Via Android Git Automerger (2) and others\n* commit \u00275d5c05dee9911eaf8add2d4298641e60f2a113d5\u0027:\n  Fix DateFormat for layoutlib.\n"
    },
    {
      "commit": "5d5c05dee9911eaf8add2d4298641e60f2a113d5",
      "tree": "bdd876f3dfa79fd4e6765095803531776f048e9f",
      "parents": [
        "4d9aa17a1efcc76fbbd30c1b20338c0d888ae1e8",
        "b7a4aed94eb02731057fdf78eb7bafc8ececadc9"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Feb 12 15:50:16 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 12 15:50:16 2013 -0800"
      },
      "message": "am b7a4aed9: am f70b8c1c: Merge \"Fix DateFormat for layoutlib.\" into jb-mr1.1-dev\n\n# Via Android (Google) Code Review (1) and others\n* commit \u0027b7a4aed94eb02731057fdf78eb7bafc8ececadc9\u0027:\n  Fix DateFormat for layoutlib.\n"
    },
    {
      "commit": "b7a4aed94eb02731057fdf78eb7bafc8ececadc9",
      "tree": "a5c2d162e9d6a6462401342209206900d133c723",
      "parents": [
        "87db373a091b1126f2233e053f9549042564870a",
        "f70b8c1cebbf873031bc92bb6ae3be813830d300"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Feb 12 15:48:07 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 12 15:48:07 2013 -0800"
      },
      "message": "am f70b8c1c: Merge \"Fix DateFormat for layoutlib.\" into jb-mr1.1-dev\n\n# Via Android (Google) Code Review (1) and Xavier Ducrohet (1)\n* commit \u0027f70b8c1cebbf873031bc92bb6ae3be813830d300\u0027:\n  Fix DateFormat for layoutlib.\n"
    },
    {
      "commit": "56a2301c7a1169a0692cadaeb48b9a6385d700f5",
      "tree": "7dfa8ab456c4e2915c095383d37847caa0d013be",
      "parents": [
        "b41af58f49d371cedf041443d20a1893f7f6c840"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 12 15:41:49 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 12 15:41:49 2013 -0800"
      },
      "message": "Implement issue #6646859: 4K!!!!  4K!!!!  4K!!!!\n\nChange-Id: Ib05a2eb6a03db50074805a437a3639a7d10684a0\n"
    },
    {
      "commit": "47a021f7649799187e2d30d4d43e2363fd8f6bd3",
      "tree": "d89bd0ad73aa5b603a8c465fdfdb90aabcd4b056",
      "parents": [
        "7209135504313c27da4f277235e00db6851b9577"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Feb 12 14:05:32 2013 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Feb 12 14:05:32 2013 -0800"
      },
      "message": "Fix DateFormat for layoutlib.\n\nChange-Id: I389c9d106b93b9f81dd3614398a5b66ba2b39a70\n"
    },
    {
      "commit": "23e500d168e8d649305445f6c1d2b49d8d2c00fd",
      "tree": "788e18e8fc63422b8cb20ea2b00c0ab73114d523",
      "parents": [
        "0984780bc7aed76018b9f88c0d9c3ce300bde39a",
        "6c0307dd0aefe9a08794b155fc03ee60ebd14f25"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Feb 06 12:57:37 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 06 12:57:38 2013 +0000"
      },
      "message": "Merge \"Merge remote-tracking branch \u0027goog/master-chromium\u0027 into \u0027goog/master\u0027\""
    },
    {
      "commit": "961321fe4ed4431a6362d729d9e4ea26bdecde61",
      "tree": "0ddcc0f94b7840ce752fd10a9e57b55c3f2c4d9b",
      "parents": [
        "f51f61269aacdfcf737b2c32b6b216c48ab61e65"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 05 17:22:41 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 05 17:22:41 2013 -0800"
      },
      "message": "App ops: add op for writing settings.\n\nAlso fix a build.\n\nAnd fix a bug that I think was introduced in the multi-user work\nthat removed the permission check for writing to settings...!\n\nChange-Id: I5945682faa789ffc78fd3546c0df7d03693f106d\n"
    },
    {
      "commit": "5cf6f8adfa2c0f83e09bdb4da9fc65f52e916292",
      "tree": "5da0195a467121b2564d20868be8d33872a684d2",
      "parents": [
        "f38a6fad79dd7a5213a9e902c5d1fa104cddb857",
        "573a18ccd883d18046dea600855d34f5c9a57fa8"
      ],
      "author": {
        "name": "Svetoslav",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jan 29 02:15:48 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 29 02:15:48 2013 -0800"
      },
      "message": "am 573a18cc: Merge \"Fixing the build\"\n\n# Via Android (Google) Code Review (1) and Svetoslav (1)\n* commit \u0027573a18ccd883d18046dea600855d34f5c9a57fa8\u0027:\n  Fixing the build\n"
    },
    {
      "commit": "f5f7d9751a43b699b6e1c2e41ea0519bc54e39cd",
      "tree": "c7ab60fe6fd38933e8fe90587e3ce8997ed599d6",
      "parents": [
        "dc4271ce1d6e47a193fe0119ca180bd37f3d1311"
      ],
      "author": {
        "name": "Svetoslav",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jan 29 02:08:54 2013 -0800"
      },
      "committer": {
        "name": "Svetoslav",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jan 29 02:08:54 2013 -0800"
      },
      "message": "Fixing the build\n\nChange-Id: I8d47c7094efc8ff458cdac58a761d5f187c8fc32\n"
    },
    {
      "commit": "c152e16b07b3eb607d018a740f507af635db1e9d",
      "tree": "f3c02a8d24fa0948d80272e8a0d79f42d51dea1a",
      "parents": [
        "53277e977d7fff93eb4cc68e2aff0d9b319849f0",
        "8fea4e72e4dcff9fa76168b9e26cf5907102f70b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 18 16:20:40 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 18 16:20:40 2013 -0800"
      },
      "message": "am 8fea4e72: Merge \"Rework ParceledListSlice to be much easier to use.\"\n\n* commit \u00278fea4e72e4dcff9fa76168b9e26cf5907102f70b\u0027:\n  Rework ParceledListSlice to be much easier to use.\n"
    },
    {
      "commit": "d8e1dbb6bc1fbaf4f2e38c3ba92ced94270deaac",
      "tree": "5f6d8b2c0e66c99289ae085cb6a6a3be168eb000",
      "parents": [
        "f25febf01453733e8bdd1ac241ecd9d3bcbef475"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 17 17:47:37 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 18 13:02:26 2013 -0800"
      },
      "message": "Rework ParceledListSlice to be much easier to use.\n\nTake advantage of this to return better information about\npackages filtered by permissions -- include the permissions\nthey have in the requested array.\n\nAlso fix issue #8026793 (Contact picture shows default pic\nwhile searching for a contact in qsb) by using the base\npackage name of the Context when reporting the app name\nof an operation.  Otherwise you could make a resource-only\ncontext for another application and do calls through that\nand get reported as the wrong app.\n\nChange-Id: I5e0488bf773acea5a3d22f245641828e1a106fb8\n"
    },
    {
      "commit": "73d94a30a25aec25e27aa1d0a328f033465461c0",
      "tree": "b3923f2399b25f84f994a014617317835c407795",
      "parents": [
        "2fd47fea3299ef122e2bc8dc92a4a628b75dfd68",
        "ba1992f8e9e50ca58f007ff528d2f6d2c2b18223"
      ],
      "author": {
        "name": "Justin Koh",
        "email": "justinkoh@google.com",
        "time": "Wed Jan 16 16:21:28 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 16 16:21:28 2013 -0800"
      },
      "message": "am ba1992f8: Merge \"Remove doSingleCrunch call DO NOT MERGE\" into jb-mr1-aah-dev\n\n* commit \u0027ba1992f8e9e50ca58f007ff528d2f6d2c2b18223\u0027:\n  Remove doSingleCrunch call DO NOT MERGE\n"
    },
    {
      "commit": "3944abbb506bb94d8e70b8b62f30225777f50648",
      "tree": "d15f4b56b928d9b660f949106b7bc8ee019e6150",
      "parents": [
        "d50a038340935a0ea8cf8fadce7e21b640b58db0"
      ],
      "author": {
        "name": "Justin Koh",
        "email": "justinkoh@google.com",
        "time": "Wed Jan 16 14:51:29 2013 -0800"
      },
      "committer": {
        "name": "Justin Koh",
        "email": "justinkoh@google.com",
        "time": "Wed Jan 16 14:51:29 2013 -0800"
      },
      "message": "Remove doSingleCrunch call DO NOT MERGE\n\nRemove doSingleCrunch call as it\u0027s breaking jb-mr1-aah-dev.\n\nChange-Id: I0d8ee55344792fd868e74e07f31641a85e71168a\n"
    },
    {
      "commit": "7ed6c6d83b3301280a2150f0697a2a631a0168ad",
      "tree": "d5fcce8959f43f85e6586257eb6b6ab6c096cf8b",
      "parents": [
        "9f7803cbcb8a7733f5861ac521e4358e9bdceab4",
        "35654b61e8fe7bc85afcb076ddbb590d51c5865f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 16 12:14:53 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 16 12:14:53 2013 -0800"
      },
      "message": "am 35654b61: More work on App Ops service.\n\n* commit \u002735654b61e8fe7bc85afcb076ddbb590d51c5865f\u0027:\n  More work on App Ops service.\n"
    },
    {
      "commit": "35654b61e8fe7bc85afcb076ddbb590d51c5865f",
      "tree": "0f42a90b4deaa0156d84df5d79b78cd6f2ac8807",
      "parents": [
        "8a8b047f2d28f6b2d728731a7e71eeaf16f89700"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 14 17:38:02 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 16 12:11:01 2013 -0800"
      },
      "message": "More work on App Ops service.\n\nImplemented reading and writing state to retain information\nacross boots, API to retrieve state from it, improved location\nmanager interaction to monitor both coarse and fine access\nand only note operations when location data is being delivered\nback to app (not when it is just registering to get the data at\nsome time in the future).\n\nAlso implement tracking of read/write ops on contacts and the\ncall log.  This involved tweaking the content provider protocol\nto pass over the name of the calling package, and some\ninfrastructure in the ContentProvider transport to note incoming\ncalls with the app ops service.  The contacts provider and call\nlog provider turn this on for themselves.\n\nThis also implements some of the mechanics of being able to ignore\nincoming provider calls...  all that is left are some new APIs for\nthe real content provider implementation to be involved with\nproviding the correct behavior for query() (return an empty\ncursor with the right columns) and insert() (need to figure out\nwhat URI to return).\n\nChange-Id: I36ebbcd63dee58264a480f3d3786891ca7cbdb4c\n"
    },
    {
      "commit": "4feaa4f945c1dd46cc12c8451755c7d7d77f4c2b",
      "tree": "c0bf08bbc575ff3793fe7b8d0f245550d15034f7",
      "parents": [
        "0728441b932ab806f3616367554fb0618e49d93a",
        "b7de2194d54eb81b1db4b50c171ddd0339831155"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 16:47:29 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 15 16:47:29 2013 -0800"
      },
      "message": "am b7de2194: resolved conflicts for merge of c71c678e to master\n\n* commit \u0027b7de2194d54eb81b1db4b50c171ddd0339831155\u0027:\n  Fix the single crunch command to return the right error code.\n"
    },
    {
      "commit": "b7de2194d54eb81b1db4b50c171ddd0339831155",
      "tree": "03a09c0ff25281d52f69c773bfc44399b68b1716",
      "parents": [
        "e45113a1564c6e701fcc076813bee276d501c576",
        "c71c678e9b6a4278337b69f2c60c0fbe9988bf93"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 16:41:29 2013 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 16:41:29 2013 -0800"
      },
      "message": "resolved conflicts for merge of c71c678e to master\n\nChange-Id: I9e1a6a1151af00f0a13e2010776276b240e0ac3a\n"
    },
    {
      "commit": "c71c678e9b6a4278337b69f2c60c0fbe9988bf93",
      "tree": "f3bbf4e077314b0bf611a2a94ea586c559d4c4cd",
      "parents": [
        "f37d9c07b258ceeea991801f9223ecf071debd08",
        "a4e10cc746caea514216f436e2065b3bbefb25ef"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 14:50:37 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 15 14:50:37 2013 -0800"
      },
      "message": "am a4e10cc7: am 6080cc5f: resolved conflicts for merge of dd52dfed to jb-mr1.1-ub-dev\n\n* commit \u0027a4e10cc746caea514216f436e2065b3bbefb25ef\u0027:\n  Fix the single crunch command to return the right error code.\n"
    },
    {
      "commit": "a4e10cc746caea514216f436e2065b3bbefb25ef",
      "tree": "3dce7e8ed99c06ac9483a48d660024b19b19a04d",
      "parents": [
        "b78714b5dfc871fee251db125ec5e14f4e0aff5f",
        "6080cc5fd7c332c79098a50605c0c37d99d4c481"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 14:48:02 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 15 14:48:02 2013 -0800"
      },
      "message": "am 6080cc5f: resolved conflicts for merge of dd52dfed to jb-mr1.1-ub-dev\n\n* commit \u00276080cc5fd7c332c79098a50605c0c37d99d4c481\u0027:\n  Fix the single crunch command to return the right error code.\n"
    },
    {
      "commit": "6080cc5fd7c332c79098a50605c0c37d99d4c481",
      "tree": "d73683e19eb9236bb62e32409ff0b742557644d2",
      "parents": [
        "5941ff03721005228072dca5b1c808cb5d12a001",
        "dd52dfed52404490d51ca5ed43c2192cbc25a7a7"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 14:24:56 2013 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 14:24:56 2013 -0800"
      },
      "message": "resolved conflicts for merge of dd52dfed to jb-mr1.1-ub-dev\n\nChange-Id: I839981af97e54c39f0ea0b8141a4dd02959263a0\n"
    },
    {
      "commit": "dd52dfed52404490d51ca5ed43c2192cbc25a7a7",
      "tree": "b9b7a58a7eeb8a09ef827c4adb2db9218d81024a",
      "parents": [
        "9af5cf2b38d82d5ddda5ada67aab51314b473800",
        "de3b69e0512c00158333a223f6c53c9eac7b3d34"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 10:49:12 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 15 10:49:12 2013 -0800"
      },
      "message": "am de3b69e0: Merge \"Fix the single crunch command to return the right error code.\" into jb-mr1-dev\n\n* commit \u0027de3b69e0512c00158333a223f6c53c9eac7b3d34\u0027:\n  Fix the single crunch command to return the right error code.\n"
    },
    {
      "commit": "c75d3f5c10bf6d7718ef69c6bbc1cdf64cd8ff04",
      "tree": "89c04bb1b6f41275fa71aec9bf0df80ef701e59e",
      "parents": [
        "22d7cf239d8a9b009ea7adf86d8826a8a8116d03"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Jan 14 18:02:40 2013 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jan 15 10:37:20 2013 -0800"
      },
      "message": "Fix the single crunch command to return the right error code.\n\nCasting from status_t to int doesn\u0027t work for return values\nif the lower 8 bits are all 0.\n\nChange-Id: I88e910dfe46cb72acd1595352e71da3c8eff4ca9\n"
    },
    {
      "commit": "3cd80d949ca88fbef4d8da495992ac8855ad069c",
      "tree": "aec3904c6e390e94b9ac1995b2757e6931987843",
      "parents": [
        "95bdeddb97b2f14e115751041b7831f73d92a4cd",
        "72c6137a7aa5e5ada6a4aeca52f33d060742beb6"
      ],
      "author": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Fri Jan 04 16:05:18 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 04 16:05:18 2013 -0800"
      },
      "message": "am 72c6137a: Handle empty flag attributes, such as gravity\u003d\"\"\n\n* commit \u002772c6137a7aa5e5ada6a4aeca52f33d060742beb6\u0027:\n  Handle empty flag attributes, such as gravity\u003d\"\"\n"
    },
    {
      "commit": "72c6137a7aa5e5ada6a4aeca52f33d060742beb6",
      "tree": "a590aabb109f56de4a4e28d0ba80b7be82ff9e90",
      "parents": [
        "48f7cfb10622f8675741f36bdf5b1f679e3fe37c"
      ],
      "author": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Fri Jan 04 15:46:25 2013 -0800"
      },
      "committer": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Fri Jan 04 15:48:58 2013 -0800"
      },
      "message": "Handle empty flag attributes, such as gravity\u003d\"\"\n\nWithout this, an empty string will be passed into\nXmlUtils.convertValueToInt, which throws an\nindex out of range exception.\n\nChange-Id: Ibd1a140e207653b205852087f33ccb87fbbb9bbc\n"
    },
    {
      "commit": "afa4d8bfafdd42b75dc15d31c0962c252f304138",
      "tree": "abe8d7ef72551c1472178d065165a1a8c8ed75ba",
      "parents": [
        "481102eed6d8eaff07489717bde7fc59a5dea5bf",
        "22d7cf239d8a9b009ea7adf86d8826a8a8116d03"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jan 03 10:43:39 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 03 10:43:39 2013 -0800"
      },
      "message": "am 22d7cf23: Add single crunch command to aapt. do not merge.\n\n* commit \u002722d7cf239d8a9b009ea7adf86d8826a8a8116d03\u0027:\n  Add single crunch command to aapt. do not merge.\n"
    },
    {
      "commit": "22d7cf239d8a9b009ea7adf86d8826a8a8116d03",
      "tree": "80b4db57378fff41d163e2980dd9ff0a7b6e6840",
      "parents": [
        "0dae634b06f5dc6039a5aaa9c0f00250e10c6547"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Dec 21 09:54:02 2012 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jan 02 15:41:52 2013 -0800"
      },
      "message": "Add single crunch command to aapt. do not merge.\n\nPreviously the crunch command would work on a full res folder\nand output a full res folder (with only the drawables). This\nwas only used in the SDK.\n\nThe incremental logic is moved to the SDK build system so we\nchange the crunch command (or rather add a new one) to only\ncrunch a single file.\n\n(cherry picked from commit b1f6ad82dd8d1702617a757a88430604b3131fac)\n\nChange-Id: I3653f67ee321eac37cb8a6d228b1ef6d104ff0be\n"
    },
    {
      "commit": "b71f5b3c9a426dab2b1331d1aaa6c7f886b143df",
      "tree": "979ff103bd080e4fac82cf09884845954dba1fe8",
      "parents": [
        "0f617ba82cab1d9d13a9e2a5abbebd955d32d222",
        "6fb9a983cefd9d0b75c2c68c161c03667afe339e"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jan 02 12:57:53 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 02 12:57:53 2013 -0800"
      },
      "message": "am 6fb9a983: Merge \"Add single crunch command to aapt.\"\n\n* commit \u00276fb9a983cefd9d0b75c2c68c161c03667afe339e\u0027:\n  Add single crunch command to aapt.\n"
    },
    {
      "commit": "b1f6ad82dd8d1702617a757a88430604b3131fac",
      "tree": "becaaa8c87cba0c0bd564fdef39c93f8107a11c1",
      "parents": [
        "2d1eb74a8e5deed8b567426ce448a9e37b11cfee"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Dec 21 09:54:02 2012 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jan 02 10:30:25 2013 -0800"
      },
      "message": "Add single crunch command to aapt.\n\nPreviously the crunch command would work on a full res folder\nand output a full res folder (with only the drawables). This\nwas only used in the SDK.\n\nThe incremental logic is moved to the SDK build system so we\nchange the crunch command (or rather add a new one) to only\ncrunch a single file.\n\nChange-Id: I635ee3e871d035b9db2fb593802d914e48241abf\n"
    },
    {
      "commit": "2fa54cef47887808d006f473a7d4f8dd5fb76704",
      "tree": "bbb9393b5d3f45806ffa244e9cec64c5047e8efa",
      "parents": [
        "6805d4aa8262146594c81f37983a051c0b4b4674",
        "ca79cf69d09efa0c327e9b1237d86a119aea5da7"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Dec 19 06:17:59 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 19 06:18:11 2012 -0800"
      },
      "message": "Merge \"Update framework to support r5967 of Skia.\" into master-chromium"
    },
    {
      "commit": "330dd534848562515c6c67cb3de13067e86866a1",
      "tree": "718eba6eb3a7c17d399353bf0416334d343d8964",
      "parents": [
        "9e83ea46b78bde4d17136a7b410e7c14955c9955"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Tue Dec 18 12:03:11 2012 -0500"
      },
      "committer": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Tue Dec 18 12:03:11 2012 -0500"
      },
      "message": "Remove remaining doc references to StyledAttributes.\n\nIt appears StyledAttributes was renamed to TypedArray\nprior to fw 1.0.  Leaving references to the old name\naround in the public docs is confusing.\n\nDeliberating leaving...\n   tests/coretests/src/android/widget/LabelView.java\n... as is - it\u0027s clearly unused.\n\nChange-Id: I3f66e5f9cbe945d9d86530d37b88369b401f054d\n"
    },
    {
      "commit": "2ec5093e5a908cea532e571aead6a5c024c553f7",
      "tree": "bf5a81d0c58871f86b5ae09278c7875dd8152f71",
      "parents": [
        "545252f4fde6fbb70b07e97a120c7d1405758017"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Dec 14 17:45:44 2012 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Dec 14 17:45:44 2012 -0800"
      },
      "message": "Fixing the build\n\nChange-Id: I01349d65ac5915da090cfb018f99e0a508f9d5ad\n"
    },
    {
      "commit": "ca79cf69d09efa0c327e9b1237d86a119aea5da7",
      "tree": "0fd02203babacee45f23ba19f869f869f3de0f54",
      "parents": [
        "dbc8cee1d500702bc8b1a8cb6a6c0961ab4ae0ed"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Aug 14 16:44:52 2012 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Dec 12 15:28:54 2012 -0500"
      },
      "message": "Update framework to support r5967 of Skia.\n\nbug: 6906025\nChange-Id: Iefdb830ec3aa2ab3472c1c142484a7aa21788a15\n"
    },
    {
      "commit": "f9ae5f75af259437391e41dac7f3c4461c495dd9",
      "tree": "f102e47b480849cf5b5140d73473629bfcd68265",
      "parents": [
        "dac257cd73cce3e63dd21267520660dd6869baf4",
        "23307cbb6b432b658b0fd7437dacfedd6298af94"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 03 16:08:35 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 03 16:08:35 2012 -0800"
      },
      "message": "am 23307cbb: am e0a676a3: Merge \"Fix issue #7649590: Background windows sometimes not being hidden for secondary users\" into jb-mr1.1-dev\n\n* commit \u002723307cbb6b432b658b0fd7437dacfedd6298af94\u0027:\n  Fix issue #7649590: Background windows sometimes not being hidden for secondary users\n"
    },
    {
      "commit": "23307cbb6b432b658b0fd7437dacfedd6298af94",
      "tree": "e0e339294907aba7ee73493f0c707d77f241f192",
      "parents": [
        "9857e24612d97f2e4e9145294375ce88029a52b3",
        "e0a676a3bb0e7b9aced9359a021e4c5d2ffef752"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 03 15:54:34 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 03 15:54:34 2012 -0800"
      },
      "message": "am e0a676a3: Merge \"Fix issue #7649590: Background windows sometimes not being hidden for secondary users\" into jb-mr1.1-dev\n\n* commit \u0027e0a676a3bb0e7b9aced9359a021e4c5d2ffef752\u0027:\n  Fix issue #7649590: Background windows sometimes not being hidden for secondary users\n"
    },
    {
      "commit": "bb4ca5271a806c94a59d98c5c718db7b89728246",
      "tree": "26e3c86678c04445c774e7e5856dd8d0b3e896d1",
      "parents": [
        "f87488095e49028eb3be5a8a53a372e38eba537c"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 03 14:09:06 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 03 14:09:06 2012 -0800"
      },
      "message": "Fix issue #7649590: Background windows sometimes not being hidden for secondary users\n\nThere are two things going on here:\n\n(1) In secondary users, some times theme information such as whether\nthe window is full screen opaque was not being retrieved, so the window\nmanager didn\u0027t know that it could hide the windows behind the app.\nThis would just be a performance problem, except that:\n\n(2) There appear to be a number of applications that declare that they\nare full screen opaque, when in fact they are not.  Instead they are\nusing window surfaces with an alpha channel, and setting some pixels\nin their window to a non-opaque alpha level.  This will allow you to\nsee whatever is behind the app.  If the system happens to completely\nremove the windows behind the app, and somebody is filling the frame\nbuffer with black, then you will see what the app intends -- those\nparts of its UI blended with black.  If one of those cases doesn\u0027t\nhold (and though we have never guaranteed they would, in practice this\nis generally what happens), then you will see something else.\n\nAt any rate, if nothing else than for performance reasons, we need to\nfix issue #1.\n\nIt turns out what is happening here is that the AttributeCache used\nby the activity manager and window manager to retreive theme and other\ninformation about applications has not yet been updated for multi-user.\n\nOne of the things we retrieve from this is the theme information telling\nthe window manager whether an application\u0027s window should be treated\nas full screen opaque, allowing it to hide any windows behind it.  In\nthe current implementation, the AttributeCache always retrieves this\ninformation about the application as the primary user (user 0).\n\nSo, if you have an application that is installed on a secondary user but\nnot installed on the primary user, when the AttributeCache tries to retrieve\nthe requested information for it, then from the perspective of the primary user\nit considers the application not installed, and is not able to retrieve that\ninfo.\n\nThe change here makes AttributeCache multi-user aware, keeping all of its\ndata separately per-user, and requiring that callers now provide the user\nthey want to retrieve information for.  Activity manager and window manager\nare updated to be able to pass in the user when needed.  This required some\nfiddling of the window manager to have that information available -- in\nparticular it needs to be associated with the AppWindowToken.\n\nChange-Id: I4b50b4b3a41bab9d4689e61f3584778e451343c8\n"
    },
    {
      "commit": "152e9bb81aa5b2ab4637f4b2dae04b3ce89fa891",
      "tree": "8e955c6db3279776dc6795e125513c4f2877ea44",
      "parents": [
        "4d58730ff587645778636e87312b1b17846fcac9"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Oct 12 20:15:29 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Dec 03 10:38:48 2012 -0800"
      },
      "message": "Refactoring of the screen magnification feature.\n\n1. The screen magnification feature was implemented entirely as a part of the accessibility\n   manager. To achieve that the window manager had to implement a bunch of hooks for an\n   external client to observe its internal state. This was problematic since it dilutes\n   the window manager interface and allows code that is deeply coupled with the window\n   manager to reside outside of it. Also the observer callbacks were IPCs which cannot\n   be called with the window manager\u0027s lock held. To avoid that the window manager had\n   to post messages requesting notification of interested parties which makes the code\n   consuming the callbacks to run asynchronously of the window manager. This causes timing\n   issues and adds unnecessary complexity.\n\n   Now the magnification logic is split in two halves. The first half that is responsible\n   to track the magnified portion of the screen and serve as a policy which windows can be\n   magnified and it is a part of the window manager. This part exposes higher level APIs\n   allowing interested parties with the right permissions to control the magnification\n   of a given display. The APIs also allow a client to be registered for callbacks on\n   interesting changes such as resize of the magnified region, etc. This part servers\n   as a mediator between magnification controllers and the window manager.\n\n   The second half is a controller that is responsible to drive the magnification\n   state based on touch interactions. It also presents a highlight when magnified to\n   suggest the magnified potion of the screen. The controller is responsible for auto\n   zooming out in case the user context changes - rotation, new actitivity. The controller\n   also auto pans if a dialog appears and it does not interesect the magnified frame.\n\nbug:7410464\n\n2. By design screen magnification and touch exploration work separately and together. If\n   magnification is enabled the user sees a larger version of the widgets and a sub section\n   of the screen content. Accessibility services use the introspection APIs to \"see\" what\n   is on the screen so they can speak it, navigate to the next item in response to a\n   gesture, etc. Hence, the information returned to accessibility services has to reflect\n   what a sighted user would see on the screen. Therefore, if the screen is magnified\n   we need to adjust the bounds and position of the infos describing views in a magnified\n   window such that the info bounds are equivalent to what the user sees.\n\n   To improve performance we keep accessibility node info caches in the client process.\n   However, when magnification state changes we have to clear these caches since the\n   bounds of the cached infos no longer reflect the screen content which just got smaller\n   or larger.\n\n   This patch propagates not only the window scale as before but also the X/Y pan and the\n   bounds of the magnified portion of the screen to the introspected app. This information\n   is used to adjust the bounds of the node infos coming from this window such that the\n   reported bounds are the same as the user sees not as the app thinks they are. Note that\n   if magnification is enabled we zoom the content and pan it along the X and Y axis. Also\n   recomputed is the isVisibleToUser property of the reported info since in a magnified\n   state the user sees a subset of the window content and the views not in the magnified\n   viewport should be reported as not visible to the user.\n\nbug:7344059\n\nChange-Id: I6f7832c7a6a65c5368b390eb1f1518d0c7afd7d2\n"
    },
    {
      "commit": "fac7b0a60306d851d903730ccc408a0272e866db",
      "tree": "78085c2a918fc005c3e03151af27109c78a3fafa",
      "parents": [
        "4317b3418b144c162634ec647df76a484ac35612",
        "5f958e9bfc793b3b653dfc88418bbd7745e633e1"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Nov 29 10:58:26 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 29 10:58:26 2012 -0800"
      },
      "message": "am 5f958e9b: am 67b38c44: Cache resource ID lookups in aapt\n\n* commit \u00275f958e9bfc793b3b653dfc88418bbd7745e633e1\u0027:\n  Cache resource ID lookups in aapt\n"
    },
    {
      "commit": "67b38c44e8b04b97e357664804d593823b2a34ed",
      "tree": "9179968cfd7e832bb87ff45e8e053e4e31ba3f9c",
      "parents": [
        "23cc5d99fcb97c5a369b3ddf7f90505f6bb29363"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Nov 16 15:58:08 2012 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Nov 28 15:32:46 2012 -0800"
      },
      "message": "Cache resource ID lookups in aapt\n\nThis speeds up certain workloads considerably, particularly\nthose involved in buildling apps via the SDK.  Windows-based\nuse should particularly benefit from the change.\n\n(cherry picked from commit d8dde13a63565dcd72bcf03a5088407b737ba793)\n\nChange-Id: I33835bc64ade77688d41e8bfcd371b0a5f59d8fd\n"
    },
    {
      "commit": "68d1b63e6c55599503b6dd4d8fdb57ba2bebfc14",
      "tree": "06c73bfbf02533f6e1e2c54e55315ddeacbe5f2c",
      "parents": [
        "1629c12a6afe633366df459dcb977598289e7822",
        "e659cea645c55fb6ecc744881e288007d53fc9a2"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Nov 27 18:48:42 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 27 18:48:42 2012 -0800"
      },
      "message": "am e659cea6: am d51ffbea: am faeabc7b: Merge \"Cache resource ID lookups in aapt\"\n\n* commit \u0027e659cea645c55fb6ecc744881e288007d53fc9a2\u0027:\n  Cache resource ID lookups in aapt\n"
    },
    {
      "commit": "d8dde13a63565dcd72bcf03a5088407b737ba793",
      "tree": "671cd9a2e230b1f960e673e8c2c1bbd3b535d9cc",
      "parents": [
        "aeb6268645d571dfc9f2d387a7ad2471039ddb54"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Nov 16 15:58:08 2012 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Nov 27 18:28:49 2012 -0800"
      },
      "message": "Cache resource ID lookups in aapt\n\nThis speeds up certain workloads considerably, particularly\nthose involved in buildling apps via the SDK.  Windows-based\nuse should particularly benefit from the change.\n\nChange-Id: I29f4b3a77400b201ee219729cc28a5e359c0c5e8\n"
    },
    {
      "commit": "08bb2316f12743fb43d18af94248c5e8caecfa85",
      "tree": "615d34830f1848d1953c35f115672433312f734a",
      "parents": [
        "34920823fcd8caff517a32c7aff2c080bfa4835a",
        "061b4fae3daf40c90b46e16b12e7f22142eb498c"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Nov 08 15:58:03 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 08 15:58:03 2012 -0800"
      },
      "message": "am 061b4fae: am a2bf6181: am 2c29deaa: am 6be441c5: Merge \"Add mechanism to kick keyguard to show the assistant\" into jb-mr1-lockscreen-dev\n\n* commit \u0027061b4fae3daf40c90b46e16b12e7f22142eb498c\u0027:\n  Add mechanism to kick keyguard to show the assistant\n"
    },
    {
      "commit": "061b4fae3daf40c90b46e16b12e7f22142eb498c",
      "tree": "152e92dd48a0043fae26e6bc18e524f847f3d617",
      "parents": [
        "70eeec5c06db3bf38e94d95a284d393e79bf87a0",
        "a2bf6181dfca0f93461fc041f2bd2444551a4515"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Nov 08 15:47:04 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 08 15:47:04 2012 -0800"
      },
      "message": "am a2bf6181: am 2c29deaa: am 6be441c5: Merge \"Add mechanism to kick keyguard to show the assistant\" into jb-mr1-lockscreen-dev\n\n* commit \u0027a2bf6181dfca0f93461fc041f2bd2444551a4515\u0027:\n  Add mechanism to kick keyguard to show the assistant\n"
    },
    {
      "commit": "d97b09b0f31152bd05ba69ca9249bcaf33d05e14",
      "tree": "83a62800d6b8407c4196498382c01344c1d64c03",
      "parents": [
        "8cd2f5bc64cefa139b7a302658b23d87230d223c",
        "bef827572ce9644253ea42ab91b11b8107d2300f"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Nov 08 15:37:01 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 08 15:37:01 2012 -0800"
      },
      "message": "am bef82757: am c7dc250d: am fe7e94a0: am 088fb915: Merge \"Add isSafeModeEnabled() API to WindowManagerService\" into jb-mr1-lockscreen-dev\n\n* commit \u0027bef827572ce9644253ea42ab91b11b8107d2300f\u0027:\n  Add isSafeModeEnabled() API to WindowManagerService\n"
    },
    {
      "commit": "bef827572ce9644253ea42ab91b11b8107d2300f",
      "tree": "91d080b4f6530643a26032fdf8c927ca85cc9bc3",
      "parents": [
        "6b646e82050c4364b400c1780b70131eea200439",
        "c7dc250d5a3dab93ff87e9986a71ae58ff124399"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Nov 08 15:32:09 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 08 15:32:09 2012 -0800"
      },
      "message": "am c7dc250d: am fe7e94a0: am 088fb915: Merge \"Add isSafeModeEnabled() API to WindowManagerService\" into jb-mr1-lockscreen-dev\n\n* commit \u0027c7dc250d5a3dab93ff87e9986a71ae58ff124399\u0027:\n  Add isSafeModeEnabled() API to WindowManagerService\n"
    },
    {
      "commit": "a2bf6181dfca0f93461fc041f2bd2444551a4515",
      "tree": "6ff5aa54451c772965985395ec17b0a400270802",
      "parents": [
        "79b08a499f5ac7aa4f9dcba4e6c5d9a54463799b",
        "2c29deaa2650091d9206b8fa93f8a447ee247d52"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Nov 08 13:13:23 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Nov 08 13:13:23 2012 -0800"
      },
      "message": "am 2c29deaa: am 6be441c5: Merge \"Add mechanism to kick keyguard to show the assistant\" into jb-mr1-lockscreen-dev\n\n* commit \u00272c29deaa2650091d9206b8fa93f8a447ee247d52\u0027:\n  Add mechanism to kick keyguard to show the assistant\n"
    },
    {
      "commit": "4eeb4f664ac6b5901a8e874dcf70c0382295f792",
      "tree": "8b8ff28c8f7aec9bffc45eb32eae82a013d259d1",
      "parents": [
        "838195db8f69968690971977e4b615df39504465"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Nov 08 00:04:29 2012 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Thu Nov 08 00:39:04 2012 -0800"
      },
      "message": "Add mechanism to kick keyguard to show the assistant\n\nFixes bug 7499778\n\nChange-Id: Ic9ea514feb489feeee6716f40bdb9792842f9515\n"
    },
    {
      "commit": "7b172a49a90ea6784dbfe0002474f9d4fd4ace1a",
      "tree": "05db15b0b2b922fa644199d48d8769624bacbe34",
      "parents": [
        "e4d08f11c49ff4c554df80c12fa2b5b04831e2f5",
        "58ed5d748c0b9b64845975ef5844ad313de7c3f6"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Nov 07 13:08:25 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 07 13:08:25 2012 -0800"
      },
      "message": "am 58ed5d74: am 768d9e1a: Merge \"Correct executable bit for source files\"\n\n* commit \u002758ed5d748c0b9b64845975ef5844ad313de7c3f6\u0027:\n  Correct executable bit for source files\n"
    },
    {
      "commit": "58ed5d748c0b9b64845975ef5844ad313de7c3f6",
      "tree": "507af3879bc894eb854712a1fe6c0953805a895c",
      "parents": [
        "9197d170b770f2b87abd0cd0e13dcf71e5a181c2",
        "768d9e1a72ceee7d4a5f608776b87b62d6ce4a04"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Nov 07 11:52:12 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 07 11:52:12 2012 -0800"
      },
      "message": "am 768d9e1a: Merge \"Correct executable bit for source files\"\n\n* commit \u0027768d9e1a72ceee7d4a5f608776b87b62d6ce4a04\u0027:\n  Correct executable bit for source files\n"
    },
    {
      "commit": "c7dc250d5a3dab93ff87e9986a71ae58ff124399",
      "tree": "2c6c24a7cf2d8df28a7db1df57ad8e848e3cec77",
      "parents": [
        "ae54cd6e3d34bebb344156e36ba2a78c0a3cdf72",
        "fe7e94a094746b608eb926fadc3ee1446bbb0d58"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Wed Nov 07 11:17:08 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 07 11:17:08 2012 -0800"
      },
      "message": "am fe7e94a0: am 088fb915: Merge \"Add isSafeModeEnabled() API to WindowManagerService\" into jb-mr1-lockscreen-dev\n\n* commit \u0027fe7e94a094746b608eb926fadc3ee1446bbb0d58\u0027:\n  Add isSafeModeEnabled() API to WindowManagerService\n"
    },
    {
      "commit": "3a084af2e90849aaa8beb3a610189e3399c63ea0",
      "tree": "ba4b87d227674fd68f9ea395649fde32778620f0",
      "parents": [
        "9d547d6934f64189e368c0b190fb4cf49c95a557"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Nov 07 10:19:47 2012 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Nov 07 10:27:31 2012 -0800"
      },
      "message": "Correct executable bit for source files\n\nMany media files and source code files were marked as executable in Git.\nRemove those.\n\nAlso a shell script and python script were not marked as executable.\n\nChange-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5\n"
    },
    {
      "commit": "bfec0a8616bc197ee3b7b71be6fed1939d0c3c4d",
      "tree": "72832bb9442488065ceae24e5d1ade9297d9f584",
      "parents": [
        "bb8abae507119612b4168b951354516b0bf7112d"
      ],
      "author": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Mon Nov 05 20:05:22 2012 -0800"
      },
      "committer": {
        "name": "Jim Miller",
        "email": "jaggies@google.com",
        "time": "Mon Nov 05 20:27:38 2012 -0800"
      },
      "message": "Add isSafeModeEnabled() API to WindowManagerService\n\nThis adds a means of determining when the device is in safe mode,\nas required by keyguard to disabled some features.\n\nChange-Id: I31d357e6738c92e1837f9e0263e5f3f4de66315a\n"
    },
    {
      "commit": "32d7f8cb867c9ef730d8fc78bccebed1ab7ac269",
      "tree": "c68ad0e80090978fdb237e5db42854ee7defd4e1",
      "parents": [
        "f991659c114a4a41908f8ae10054e7fbfc08fb51",
        "02822d059031d539f4b4b69ae0ee6c4ad52388f2"
      ],
      "author": {
        "name": "Maurice Chu",
        "email": "mochu@google.com",
        "time": "Fri Oct 19 10:34:10 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 19 10:34:10 2012 -0700"
      },
      "message": "Merge \"Enhance AIDL to take an explicit id for methods\""
    },
    {
      "commit": "dc8ae9f758e034d63104a48daf4d8014fe5dc13a",
      "tree": "b0038fb8ab87ca7edeae48bb9478ebd0ddc3595e",
      "parents": [
        "6cb9d909f06433c5b9130c55dc08ce8d55e7dac8",
        "26d76606aff48680fc61f9decaeddff3a568ca58"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Oct 18 15:32:57 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 18 15:32:57 2012 -0700"
      },
      "message": "am 26d76606: am d8149b03: Merge \"Layoutlib: Read and close XML files as soon as possible.\" into jb-mr1-dev\n\n* commit \u002726d76606aff48680fc61f9decaeddff3a568ca58\u0027:\n  Layoutlib: Read and close XML files as soon as possible.\n"
    },
    {
      "commit": "26d76606aff48680fc61f9decaeddff3a568ca58",
      "tree": "e4b0124a533bb86d396c8ee1700783a913f0dfa6",
      "parents": [
        "8c2bc7ccf16f201c10e1a4ffb66f66af63f85a91",
        "d8149b03a8676a49f6ca500eecafe79fadf046a7"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Oct 18 15:30:24 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 18 15:30:24 2012 -0700"
      },
      "message": "am d8149b03: Merge \"Layoutlib: Read and close XML files as soon as possible.\" into jb-mr1-dev\n\n* commit \u0027d8149b03a8676a49f6ca500eecafe79fadf046a7\u0027:\n  Layoutlib: Read and close XML files as soon as possible.\n"
    },
    {
      "commit": "02822d059031d539f4b4b69ae0ee6c4ad52388f2",
      "tree": "142e0033575f86c8793903d17d2e32d0c455c292",
      "parents": [
        "f78283324400487a9acdb5d32536295fa85bd8f3"
      ],
      "author": {
        "name": "Maurice Chu",
        "email": "mochu@google.com",
        "time": "Thu Oct 18 14:47:13 2012 -0700"
      },
      "committer": {
        "name": "Maurice Chu",
        "email": "mochu@google.com",
        "time": "Thu Oct 18 14:47:13 2012 -0700"
      },
      "message": "Enhance AIDL to take an explicit id for methods\n\nThis adds an annotation to methods in AIDL of the form\n\"void myMethod() \u003d 3;\" to explicitly set the onTransact\nid for the method.  Either all methods must have explicitly\nannotated id\u0027s or none of them should be explicitly annotated.\nThere is error checking in the AIDL compiler\nfor duplicate id\u0027s and id\u0027s outside of the valid range.\n\nBug: 7353910\nChange-Id: I868045e3f112c9a279c573cea368a621116cbf77\n"
    },
    {
      "commit": "c48b0b940d632b9862ff6aa32665e37fe9e50845",
      "tree": "409e0ace2155f38c196a12f2e4e28282bfb9fde5",
      "parents": [
        "891b703f7b1e0e396d16477cc66a286da7161b49"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Oct 17 18:38:49 2012 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Oct 18 13:59:51 2012 -0700"
      },
      "message": "Layoutlib: Read and close XML files as soon as possible.\n\nBecause passing an InputStream to KXML does not close the\nstream after the file has been parsed, the files are staying\nlocked on windows until the gc and finalizers are run.\n\nThis change preload the XML files and close their stream,\nand then pass the content in a stream to the parser.\n\nChange-Id: Iabe27989dc616ec9e7de88e52b1ec3af9f007f7c\n"
    },
    {
      "commit": "d5a68ad8b73e2a3d6fcd74cdc11407d3b50cee94",
      "tree": "6589052f0734cc7c0471d4975b6e0000342f60f8",
      "parents": [
        "22bd3726be37a24e956d962d61657d8a3d54c985",
        "441f0672ed65feead06c4a05d7e6bf894ab2a982"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Oct 17 17:24:01 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 17 17:24:01 2012 -0700"
      },
      "message": "am 441f0672: am 9c474738: Merge \"Update layoutlib for jb mr1.\" into jb-mr1-dev\n\n* commit \u0027441f0672ed65feead06c4a05d7e6bf894ab2a982\u0027:\n  Update layoutlib for jb mr1.\n"
    },
    {
      "commit": "441f0672ed65feead06c4a05d7e6bf894ab2a982",
      "tree": "632362e404519f1953742c7638d711112714f1f2",
      "parents": [
        "76a0142477e3ebda381d717572b21b355c172c26",
        "9c474738a29f77359a461035855d6e9b3935ade1"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Oct 17 17:21:36 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 17 17:21:36 2012 -0700"
      },
      "message": "am 9c474738: Merge \"Update layoutlib for jb mr1.\" into jb-mr1-dev\n\n* commit \u00279c474738a29f77359a461035855d6e9b3935ade1\u0027:\n  Update layoutlib for jb mr1.\n"
    },
    {
      "commit": "891b703f7b1e0e396d16477cc66a286da7161b49",
      "tree": "9014f76e1ca354199b55e224eabd246cc9e022f2",
      "parents": [
        "e13ae648504661ca158d15aa415568e351b380c4"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Oct 16 19:56:03 2012 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Oct 17 17:15:31 2012 -0700"
      },
      "message": "Update layoutlib for jb mr1.\n\nStatus bar displayed on all devices.\nUpdate logic for displaying nav bar to whether or not\ndevice has soft button.\n\nUpdate navigation buttons to new look.\nRemove battery and signal from navigation bar.\n\nChange-Id: I8241d71269a17126218a3062ba727e379a8e6c25\n"
    },
    {
      "commit": "50e137c7df4d9781f92a26afc1bdba1d817c703d",
      "tree": "fcc2f3f3a902afd067f665bf278edb1a7e34d34d",
      "parents": [
        "6d016754f6e496ea879852aca01dbb40c88b1ac0",
        "136bd7c6aef8767dc208811ad87f90956333e78f"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 15 15:19:50 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 15 15:19:50 2012 -0700"
      },
      "message": "am 136bd7c6: am 477687c1: Merge \"Fix SDK layout rendering in Eclipse.\" into jb-mr1-dev\n\n* commit \u0027136bd7c6aef8767dc208811ad87f90956333e78f\u0027:\n  Fix SDK layout rendering in Eclipse.\n"
    },
    {
      "commit": "136bd7c6aef8767dc208811ad87f90956333e78f",
      "tree": "7de0319294174fe561f8ded96b43af48a7c47063",
      "parents": [
        "15ed1ba7c3de6ec4a9d48d4b07c2e277d3cd5cc7",
        "477687c1eb1919c54e2bffba2a740df3b4af6668"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 15 15:17:46 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 15 15:17:46 2012 -0700"
      },
      "message": "am 477687c1: Merge \"Fix SDK layout rendering in Eclipse.\" into jb-mr1-dev\n\n* commit \u0027477687c1eb1919c54e2bffba2a740df3b4af6668\u0027:\n  Fix SDK layout rendering in Eclipse.\n"
    },
    {
      "commit": "6dfd0b39a63559999a769f93d5cdb48abe675344",
      "tree": "359dca57c2f65588bfdf06ccad73e63171829063",
      "parents": [
        "732d88e14e4418feba1b80cf1d6010cddb1d5de5"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 15 14:38:31 2012 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 15 15:14:44 2012 -0700"
      },
      "message": "Fix SDK layout rendering in Eclipse.\n\nChange-Id: I0e9e85632012c0929b987ee9d0ccf7c25eece322\n"
    },
    {
      "commit": "337aa27a6307e0f40705ee676551dda4bf6cb894",
      "tree": "9d4721514cc14c709cae12073eb1ea1300365682",
      "parents": [
        "fee7ddedc99e377002aa6a88c3e287cb6e6c405d",
        "8ee7ac22e6aec5df5405a3e2130d593c50bc39b2"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sun Oct 07 11:53:43 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 07 11:53:43 2012 -0700"
      },
      "message": "am 8ee7ac22: am 33877e15: Merge \"Adds showWhenLocked attribute to Activities.\" into jb-mr1-dev\n\n* commit \u00278ee7ac22e6aec5df5405a3e2130d593c50bc39b2\u0027:\n  Adds showWhenLocked attribute to Activities.\n"
    },
    {
      "commit": "8ee7ac22e6aec5df5405a3e2130d593c50bc39b2",
      "tree": "bc4f5d4a5022e763385ea5ad566197cafe460594",
      "parents": [
        "f94da0619c524ec9faf7def068d6888aa5304c96",
        "33877e15b8bfc50bd874027689a4794aa93b923d"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sun Oct 07 11:50:54 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Oct 07 11:50:54 2012 -0700"
      },
      "message": "am 33877e15: Merge \"Adds showWhenLocked attribute to Activities.\" into jb-mr1-dev\n\n* commit \u002733877e15b8bfc50bd874027689a4794aa93b923d\u0027:\n  Adds showWhenLocked attribute to Activities.\n"
    },
    {
      "commit": "33877e15b8bfc50bd874027689a4794aa93b923d",
      "tree": "f2315456796e88f0623bf4fed1f2a43a49f3696d",
      "parents": [
        "786d10921b2c525ed22b78ec40ae2554eec85912",
        "5962b12bedc4a1d0354816c1cd6b06ba04f6d807"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sun Oct 07 11:48:49 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Oct 07 11:48:50 2012 -0700"
      },
      "message": "Merge \"Adds showWhenLocked attribute to Activities.\" into jb-mr1-dev"
    },
    {
      "commit": "5962b12bedc4a1d0354816c1cd6b06ba04f6d807",
      "tree": "b9918fad07cf0e0ff84d510b6e17b31cf48394f9",
      "parents": [
        "88400d3a31139c40c4014faf86c243647087ef6c"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Oct 05 14:45:52 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sat Oct 06 13:09:58 2012 -0700"
      },
      "message": "Adds showWhenLocked attribute to Activities.\n\nThe new attribute allows an Activity such as the alarm to appear\non all users screens.\n\nBug: 7213805 fixed.\nChange-Id: If7866b13d88c04af07debc69e0e875d0adc6050a\n"
    },
    {
      "commit": "4bb6d07a8b93e37b20299374141118c07e7bc80c",
      "tree": "9a3703f080bb1ecb3cb35fb5ed7b2c0127dcf047",
      "parents": [
        "ba074a592add1f027c1fb9f629142622d7c5b695",
        "513b8ea16fdedd7b6debd718798c0220edd61d7f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 05 15:00:47 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 05 15:00:47 2012 -0700"
      },
      "message": "am 513b8ea1: am 3f1246a2: Merge \"Coordinate screen on with the window manager.\" into jb-mr1-dev\n\n* commit \u0027513b8ea16fdedd7b6debd718798c0220edd61d7f\u0027:\n  Coordinate screen on with the window manager.\n"
    },
    {
      "commit": "513b8ea16fdedd7b6debd718798c0220edd61d7f",
      "tree": "fe229c8da436d9e521b96c66f77b298119ad6d20",
      "parents": [
        "3c9376b38b1ed26995324cebe69f10f8a7147408",
        "3f1246a29b58cf78ebe674ec0905ad1795027aac"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 05 14:58:01 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 05 14:58:01 2012 -0700"
      },
      "message": "am 3f1246a2: Merge \"Coordinate screen on with the window manager.\" into jb-mr1-dev\n\n* commit \u00273f1246a29b58cf78ebe674ec0905ad1795027aac\u0027:\n  Coordinate screen on with the window manager.\n"
    },
    {
      "commit": "c38c9be031ddad5cf551b55458889f11e01dc5b2",
      "tree": "12902e6c1bf90145600bebe0aaa847cd243025f6",
      "parents": [
        "b29088540b2ecb3046277fbeb5ee1c87abe74d95"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Oct 04 13:16:19 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Oct 05 14:39:23 2012 -0700"
      },
      "message": "Coordinate screen on with the window manager.\n\nBug: 7267457\nChange-Id: Ic2c322253639e1f0b2e4e72a7b145025d0240f93\n"
    },
    {
      "commit": "451d49b34c8399a3479ca96addcc11857b6afb3e",
      "tree": "4c5d9f65392e664f0f5856fc81319082bdea4c35",
      "parents": [
        "4280233813c22663d3e9d100cac70eaccd0d2afc",
        "a39c5c369af24cc25f77b9ac97dfffae41c73eb6"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Thu Oct 04 18:05:48 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 04 18:05:48 2012 -0700"
      },
      "message": "am a39c5c36: am 327424d6: Merge \"Plumbing to allow keyguard to be shown with user switcher (issue 7175023)\" into jb-mr1-dev\n\n* commit \u0027a39c5c369af24cc25f77b9ac97dfffae41c73eb6\u0027:\n  Plumbing to allow keyguard to be shown with user switcher (issue 7175023)\n"
    },
    {
      "commit": "a39c5c369af24cc25f77b9ac97dfffae41c73eb6",
      "tree": "0ac8f8991f652ec1691dd62364a611d6918c39b3",
      "parents": [
        "0f300c7045f150722532fd50dd78f6fcb4c4f395",
        "327424d69b99213e872e91f05feba2d0a137d6c7"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Thu Oct 04 18:03:36 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 04 18:03:36 2012 -0700"
      },
      "message": "am 327424d6: Merge \"Plumbing to allow keyguard to be shown with user switcher (issue 7175023)\" into jb-mr1-dev\n\n* commit \u0027327424d69b99213e872e91f05feba2d0a137d6c7\u0027:\n  Plumbing to allow keyguard to be shown with user switcher (issue 7175023)\n"
    },
    {
      "commit": "f752202bee88e31ce765483ba2efa6999ae9c9ad",
      "tree": "bdab562d4383a67f3806617d2ca3aa3e53862d67",
      "parents": [
        "17f36d154f1a8ebe72fc35af332f5c0069503364"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Wed Oct 03 20:03:18 2012 -0700"
      },
      "committer": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Thu Oct 04 17:53:01 2012 -0700"
      },
      "message": "Plumbing to allow keyguard to be shown with user switcher (issue 7175023)\n\n-\u003e Also reduced calls to lockNow, and moved this call in ActivityManagerService\n\nChange-Id: I9ba34ca902f7c0f71fa4ec302104688ca8d11f55\n"
    },
    {
      "commit": "85486bd33de1f3665f158df636217166c83199f5",
      "tree": "546a31ce1d6ce7f07b504ec53cda1c13275f3622",
      "parents": [
        "11adf0ad313a53d017bcbab81969b3c2d9547a17",
        "cd09cb8fb79442aa22018db9134ef1ef22059360"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Oct 03 18:50:18 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 03 18:50:18 2012 -0700"
      },
      "message": "am cd09cb8f: am 6fb7fd3a: Merge \"Fix issue #7267494, issue #7212347\" into jb-mr1-dev\n\n* commit \u0027cd09cb8fb79442aa22018db9134ef1ef22059360\u0027:\n  Fix issue #7267494, issue #7212347\n"
    },
    {
      "commit": "cd09cb8fb79442aa22018db9134ef1ef22059360",
      "tree": "5d738287c0b31f3547ad3e5fc1374ee59a00527f",
      "parents": [
        "a521abef83bc329931ef9b8230fe1ae9e1a87b3a",
        "6fb7fd3a0939413d8968fc0d404ed499d7f7dc52"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Oct 03 18:47:51 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 03 18:47:51 2012 -0700"
      },
      "message": "am 6fb7fd3a: Merge \"Fix issue #7267494, issue #7212347\" into jb-mr1-dev\n\n* commit \u00276fb7fd3a0939413d8968fc0d404ed499d7f7dc52\u0027:\n  Fix issue #7267494, issue #7212347\n"
    },
    {
      "commit": "c428aae6429c3fd5e2037c3793af399d9f6e23bf",
      "tree": "ea5452cc311e5440b6e3dbce5f856fbc8915b653",
      "parents": [
        "2e307a61a3730e6b65906f575d85258b197e3494"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Oct 03 16:38:22 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Oct 03 18:07:23 2012 -0700"
      },
      "message": "Fix issue #7267494, issue #7212347\n\n7267494 Calendar is not syncing\nCheck for whether a content provider is dead before returning\nit.  This is kind-of a band-aid, but probably the right thing\nto do; I\u0027m just not sure exactly the full details of why this\nproblem is happening.  Hopefully this \"fixes\" it, though I don\u0027t\nhave a way to repro to tell.\n\n7212347 System power off dialog is only visible to user 0\nMake it visible.  Also turn on some battery debugging stuff and\nclean it up so we can just keep it.\n\nChange-Id: I5add25bf2a763c8dfe1df23bc5c753a9ea5d157a\n"
    },
    {
      "commit": "13176e639cca469268dfb99128b7cdff2d75d098",
      "tree": "49b52b5ce79de30ba4886645fb32328c96d84136",
      "parents": [
        "63808449ca1214e1e321998fec175fa2f61b705a",
        "cd781ce2ebc104cf83d630889ae330a980635c9e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 15:25:30 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 01 15:25:30 2012 -0700"
      },
      "message": "am cd781ce2: am cb6f950f: Merge \"New internal API to eliminate poke locks.\" into jb-mr1-dev\n\n* commit \u0027cd781ce2ebc104cf83d630889ae330a980635c9e\u0027:\n  New internal API to eliminate poke locks.\n"
    }
  ],
  "next": "cd781ce2ebc104cf83d630889ae330a980635c9e"
}
