)]}'
{
  "log": [
    {
      "commit": "8a2ed1d7c0c4f6476e39cc37d9ebd29c7562ce01",
      "tree": "7e05d0d286de56965fcb0ead8c27bd568f26bbe9",
      "parents": [
        "93f770b59fa1bd0f2a5c18fcfaffd2a1fc54f585"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 29 15:18:29 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 29 15:18:29 2013 -0800"
      },
      "message": "Improve configuration of default preferred apps.\n\nThe file that defines default preferred apps is now more\nrobust.  It is no longer a raw dump of the package\nmanager settings, but instead a more general list of a\ntarget activity and filter.  When reading it, the remaining\ninformation (match value, set of potential matches) is\ndetermined dynamically.\n\nChange-Id: I0edc6e0d2ed3dd2a6e2238992f18f7fc1f51d8d4\n"
    },
    {
      "commit": "93f770b59fa1bd0f2a5c18fcfaffd2a1fc54f585",
      "tree": "e0f65902782d568b864500a672ab653149b77224",
      "parents": [
        "96bf00fe92d824b1da4619b875ed779ed283d11d",
        "0798149082a22ac16ee1d44ee88779716cb96784"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 28 20:35:47 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 28 20:36:59 2013 +0000"
      },
      "message": "Merge \"Fix bug where we could get stuck repeatedly launching an activity.\""
    },
    {
      "commit": "0798149082a22ac16ee1d44ee88779716cb96784",
      "tree": "d796ad5febcdd2475701c9dec79303f17b4ed436",
      "parents": [
        "b9781fe08c5b1afba086857aa18b46862550ae88"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 28 11:36:23 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 28 11:38:26 2013 -0800"
      },
      "message": "Fix bug where we could get stuck repeatedly launching an activity.\n\nA previous change to avoid losing activities if their process\nhappens to be gone at the point of launch (by counting that\nactivity as having its state saved) has resulted in a problem\nwhere an activity that crashes during launch will be repeatedly\nrelaunched.\n\nThis is fixed here by explicitly keeping track of our attempts\nto launch the activity since it was last able to save its state,\nand not keeping it around if it looks like the launch is\nrepeatedly failing.\n\nChange-Id: Icefd952443b7eb1222f233db95e0157fc3dd72d1\n"
    },
    {
      "commit": "de07d41f6396f9f040fed2b6780932d8e5dbb482",
      "tree": "9ffe4379de57a1630ca6d7043e860bfac30f27da",
      "parents": [
        "e6a6d83845d40526cab2d91d0c92b32d4267f5e1",
        "54ca7aef2e12b240caa6fb1a1e65abd234bea337"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Mon Jan 28 17:07:39 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 28 17:07:39 2013 +0000"
      },
      "message": "Merge \"Annotate Locations coming from mock providers\""
    },
    {
      "commit": "b9781fe08c5b1afba086857aa18b46862550ae88",
      "tree": "844f0c2260640afb4245acf91a11ed88aa85cb57",
      "parents": [
        "1c2df38242c29cd7f359a6fb13dc13b387264310",
        "5e45ee6752528791deb66b83d76250685de15d47"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 25 19:32:52 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 25 19:33:11 2013 +0000"
      },
      "message": "Merge \"App ops: you can now turn off operations.\""
    },
    {
      "commit": "5e45ee6752528791deb66b83d76250685de15d47",
      "tree": "d60220c4aa9feae8b5b3a45946b88f46865ab5ff",
      "parents": [
        "d8ba6cc9217e2e042106870e9d2e70cfd80426d6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 24 19:13:44 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 25 11:25:48 2013 -0800"
      },
      "message": "App ops: you can now turn off operations.\n\nAlso add new ops for calendar and wi-fi scans, finish\nimplementing rejection of content provider calls, fix\nissues with rejecting location calls, fix bug in the\nnew pm call to retrieve apps with permissions.\n\nChange-Id: I29d9f8600bfbbf6561abf6d491907e2bbf6af417\n"
    },
    {
      "commit": "377fc095e142b160b5093ed1d3717d0b18aff0f9",
      "tree": "1ca3e0cca27b21397b0b5b35ee8e2eb9cf88191a",
      "parents": [
        "de71ce1ab3cda6030b5838f4cadb4fe974d522c2",
        "7b5aeca50b3069b1f8bd4db0317a3829c4b540a2"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Jan 24 23:42:03 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 24 23:42:03 2013 +0000"
      },
      "message": "Merge \"Fix GpsLocationProvider.enable/disable/isEnabled\""
    },
    {
      "commit": "7b5aeca50b3069b1f8bd4db0317a3829c4b540a2",
      "tree": "dc55c2f8ef45200acdc09d75164a21c2f226e107",
      "parents": [
        "00dcbf8f58c36e3e8803336aa947a333411f43d0"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Jan 24 15:10:24 2013 -0800"
      },
      "committer": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Jan 24 15:26:02 2013 -0800"
      },
      "message": "Fix GpsLocationProvider.enable/disable/isEnabled\n\nFix the issue where GpsLocationProvider.isEnabled() returns true when it\nis really false (and the other way around), when the handler hasn\u0027t\nprocessed the enable/disable messages yet.\n\nThis can be systematically reproduced when the caller code is using the\nsame thread as the thread of the handler in GpsLocationProvider.\n\nFor example, this was happening in LocationManagerService.switchUser().\nIt would start by disabling all the providers (with\nupdateProviderListenersLocked()), then re-enable them in\nupdateProvidersLocked() only when isEnalbed()\u003d\u003dfalse, which was in the\nwrong state since the GpsLocationProvider.ENABLE message hadn\u0027t been\nprocessed yet. As a result, the GpsLocationProvider was disabled upon\nstartup of the phone.\n\nThis is a slight problem for the enable() contract, which specifies that\ngetStatus() must be handled, getStatus() will be handled but might have\nslighty not-up-to-date info in this case.\n\nBug: 8028017\n\nChange-Id: Iff91a11cc150e9029a6db85b64a10a926e12b0ba\n"
    },
    {
      "commit": "d8ba6cc9217e2e042106870e9d2e70cfd80426d6",
      "tree": "005a8e898ee1a6561ad80294ec0306fb4e23b830",
      "parents": [
        "51ff575d1bd0337a68ae173ee699ff8298ddb703",
        "f9c5e0fe837a3090820da502ecaabc5accc00ace"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 23 22:47:56 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 23 22:47:57 2013 +0000"
      },
      "message": "Merge \"Add new API to propagate contextual data to the assist action\""
    },
    {
      "commit": "51ff575d1bd0337a68ae173ee699ff8298ddb703",
      "tree": "0e423b22a15483c44dcc7800860c855d1cbc61b1",
      "parents": [
        "846dda3fa7a194b57acdb977e443c93c7cddcea1",
        "c4d27a7d55760d7897352906abe1e2c579283f5e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 23 22:45:51 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 23 22:46:01 2013 +0000"
      },
      "message": "Merge \"Fix issue #7649720: ANR occur when OTA with lower version...\""
    },
    {
      "commit": "846dda3fa7a194b57acdb977e443c93c7cddcea1",
      "tree": "d924a9451f3be63d2b8bd5012933b4fef4419f36",
      "parents": [
        "00dcbf8f58c36e3e8803336aa947a333411f43d0",
        "fd7adedebf88427162a3ce27fcc9cfd3893c869d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 23 22:43:11 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 23 22:43:11 2013 +0000"
      },
      "message": "Merge \"Add new disabled state for \"optional\" built-in apps.\""
    },
    {
      "commit": "f9c5e0fe837a3090820da502ecaabc5accc00ace",
      "tree": "bbc72079c958f69d9906f4a4ae803dd88fcf8083",
      "parents": [
        "cc7433470f00fac3bbe7835de3ded4b9bf121244"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 23 14:39:13 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 23 14:39:13 2013 -0800"
      },
      "message": "Add new API to propagate contextual data to the assist action\n\nWhen launching an assist, we have a new API allowing the\ncurrent foreground activity/application to provide additional\narbitrary contextual information that is stuffed in the\nassist intent before it is launched.\n\nChange-Id: I0b2a6f5a266dc42cc0175327fa76774f814af3b4\n"
    },
    {
      "commit": "c4d27a7d55760d7897352906abe1e2c579283f5e",
      "tree": "ccdce74d424b7dbaa8efedb5ab3062758d2b7662",
      "parents": [
        "cc7433470f00fac3bbe7835de3ded4b9bf121244"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 22 18:30:17 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 22 18:30:17 2013 -0800"
      },
      "message": "Fix issue #7649720: ANR occur when OTA with lower version...\n\n...of Play Store is included\n\nThe issue is that the name of the play store apk on the system\nimage has changed, and the package manager has a bug when this\nhappens and it is being hidden by an updated version of the\napplication that is still a newer version.  In this case it\ndoesn\u0027t do the normal scan of the system apk, but just leaves\nits old disabled state.  However if the code path has changed,\nthis will trip up other code that thinks the system apk has\ndisappeared (since when it checks for the existence of the apk\nwith the stored code path, it doesn\u0027t find anything).\n\nThe fix here is to add a special case to make sure the code\npath is updated even if we are otherwise ignoring the hidden\nsystem image package data.\n\nChange-Id: Ic5118f94c078da7a30b53b9cadf7c9844f7ba866\n"
    },
    {
      "commit": "fd7adedebf88427162a3ce27fcc9cfd3893c869d",
      "tree": "d9dfb04e5d0972a6ae7bf92431b0d48925e97b48",
      "parents": [
        "cc7433470f00fac3bbe7835de3ded4b9bf121244"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 22 17:10:23 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 22 17:10:23 2013 -0800"
      },
      "message": "Add new disabled state for \"optional\" built-in apps.\n\nThe disabled state allows you to make an app disabled\nexcept for whatever parts of the system still want to\nprovide access to them and automatically enable them\nif the user want to use it.\n\nCurrently the input method manager service is the only\npart of the system that supports this, so you can put\nan IME in this state and it will generally look disabled\nbut still be available in the IME list and once selected\nswitched to the enabled state.\n\nChange-Id: I77f01c70610d82ce9070d4aabbadec8ae2cff2a3\n"
    },
    {
      "commit": "172175fea9f2c1d2967b53944e33b2f03c021875",
      "tree": "1ee1629d2cb30eb2d54058b0c06c8cee48651bf5",
      "parents": [
        "806f133e418e65ad321950877ab9e9133b6a4a69",
        "05f1f0ece8f39e77c96825fb2e3451ebd388adad"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Jan 22 15:51:14 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 22 15:51:14 2013 -0800"
      },
      "message": "am 05f1f0ec: am 555b07df: am 2c64b539: am 596532d9: Properly initialize recognition service if the recognizer component changed.\n\n* commit \u002705f1f0ece8f39e77c96825fb2e3451ebd388adad\u0027:\n  Properly initialize recognition service if the recognizer component changed.\n"
    },
    {
      "commit": "05f1f0ece8f39e77c96825fb2e3451ebd388adad",
      "tree": "4860647575300552158bbe03aa71976489824337",
      "parents": [
        "58fb00025daa78360a3d033b223d15364d49086f",
        "555b07df08dd4c2472374d0767926ebab928dede"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Jan 22 15:48:10 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 22 15:48:10 2013 -0800"
      },
      "message": "am 555b07df: am 2c64b539: am 596532d9: Properly initialize recognition service if the recognizer component changed.\n\n* commit \u0027555b07df08dd4c2472374d0767926ebab928dede\u0027:\n  Properly initialize recognition service if the recognizer component changed.\n"
    },
    {
      "commit": "555b07df08dd4c2472374d0767926ebab928dede",
      "tree": "22b12944168677bcd43dc810bc18455d08abb395",
      "parents": [
        "fe88f1be3d197987a874f6c29fefdeb11db183f6",
        "2c64b53976a99f28bc7c0612648581f9b93bf8b0"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Jan 22 15:46:25 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 22 15:46:25 2013 -0800"
      },
      "message": "am 2c64b539: am 596532d9: Properly initialize recognition service if the recognizer component changed.\n\n* commit \u00272c64b53976a99f28bc7c0612648581f9b93bf8b0\u0027:\n  Properly initialize recognition service if the recognizer component changed.\n"
    },
    {
      "commit": "2c64b53976a99f28bc7c0612648581f9b93bf8b0",
      "tree": "60dcf119d719633677055cf8004d5b03e7ca39c6",
      "parents": [
        "3599f0a02129c238177806ce3d6db20853230d4d",
        "596532d9dbea3460dbc989b0316c721ca69f4915"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Jan 22 15:43:53 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 22 15:43:53 2013 -0800"
      },
      "message": "am 596532d9: Properly initialize recognition service if the recognizer component changed.\n\n* commit \u0027596532d9dbea3460dbc989b0316c721ca69f4915\u0027:\n  Properly initialize recognition service if the recognizer component changed.\n"
    },
    {
      "commit": "596532d9dbea3460dbc989b0316c721ca69f4915",
      "tree": "6d55cb09d7ab6342ab3e001cdabd2f9c613da324",
      "parents": [
        "0cf97d32178b689184866e731c0a4105d8223d80"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Jan 18 11:04:09 2013 -0800"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Jan 22 15:35:49 2013 -0800"
      },
      "message": "Properly initialize recognition service if the recognizer component changed.\n\nThe getServiceInfo() call directly to IPackageManager does not throw an exception.\nThe return value needed to be checked for null.\n\nBug: 8031032\nChange-Id: I701b9e8cf3b2406a3b35a486183330489b3d46f5\n"
    },
    {
      "commit": "54ca7aef2e12b240caa6fb1a1e65abd234bea337",
      "tree": "162f4680a75081bbfe363a6c48a3d97367d4bd43",
      "parents": [
        "f25febf01453733e8bdd1ac241ecd9d3bcbef475"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Tue Jan 08 09:39:50 2013 -0800"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Tue Jan 22 09:39:47 2013 -0800"
      },
      "message": "Annotate Locations coming from mock providers\n\nLocationManagerService now annotates incoming Location objects that\nhave come from mock location providers. The new isFromMockProvider()\nmethod can be called on any Location to determine whether the\nprovider that supplied the Location was a mock location provider.\n\nBug: 6813235\nChange-Id: Ib5140e93ea427f2e0b0036151047f87a02b4d23a\n"
    },
    {
      "commit": "72e3983d38f656cfa8c7a038eb80bdd9ea06768e",
      "tree": "6bde32531354a8b09058b60bc702a9ec3c6f6b6b",
      "parents": [
        "e95724aebec3a4a121fde3dfba761b80d2cd6922"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 18 18:36:09 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 18 18:36:09 2013 -0800"
      },
      "message": "New API to get app op information about a single package.\n\nChange-Id: I986453d9bb4161da467fb820b12502464e936483\n"
    },
    {
      "commit": "20da885caa27ee8148c61be0ff56451ad6bf8146",
      "tree": "a504a38829026af0c0f0b467589a338f4615df36",
      "parents": [
        "8fea4e72e4dcff9fa76168b9e26cf5907102f70b",
        "63837f455d08605173985042a89d5f9ba06883d1"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Sat Jan 19 00:35:48 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 19 00:36:12 2013 +0000"
      },
      "message": "Merge \"Revert \"Second pass tying into dns cache per interface\"\""
    },
    {
      "commit": "63837f455d08605173985042a89d5f9ba06883d1",
      "tree": "255916695ca7d523020f5c70961ccddb5174c0b3",
      "parents": [
        "f60f94a89e49c125f4aff6496710a0fb66579545"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Sat Jan 19 00:34:07 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 19 00:34:07 2013 +0000"
      },
      "message": "Revert \"Second pass tying into dns cache per interface\"\n\nThis reverts commit f60f94a89e49c125f4aff6496710a0fb66579545\n\nChange-Id: If52dffd5100a6b03275da0eabfa05e24c5ecada9\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": "52dda54b081f3a3fb1cc475128eec820e3d5b21e",
      "tree": "a59f079c0d412438594edf60e5ca4c7e2acf9d9a",
      "parents": [
        "3e7959ab4d5215002a96e1a43c232d2d8885bf62",
        "82413d0b2acad73b9a008e0c53392a54f9555cf8"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Jan 18 18:41:39 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 18 18:41:39 2013 +0000"
      },
      "message": "Merge \"Clean up published network condition reporting.\""
    },
    {
      "commit": "82413d0b2acad73b9a008e0c53392a54f9555cf8",
      "tree": "8d07c530baf43f02043459bb1a77d1df9acf7a90",
      "parents": [
        "0f8d155363c361199a9d9aa5dcdbc4088990f893"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Jan 18 09:31:13 2013 -0800"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Fri Jan 18 09:31:13 2013 -0800"
      },
      "message": "Clean up published network condition reporting.\n\nChange-Id: I371c04bcb0547f1133e7ce12a6871aad3b3fdc6b\n"
    },
    {
      "commit": "2d43bf6ba587e1754828b72371832eb89cbdf13b",
      "tree": "a3e09587678e9916637848da864b803b6bfcaf58",
      "parents": [
        "5a0252da779a98b98c0ef5053c2d20b7bd66de34",
        "04dd24d4baf7f78e7b47c9f91e82dfb44fd48190"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Fri Jan 18 07:03:31 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 18 07:03:32 2013 +0000"
      },
      "message": "Merge \"Ensure that the input method dialog is dismissed when changing the hardware keyboard state.\""
    },
    {
      "commit": "04dd24d4baf7f78e7b47c9f91e82dfb44fd48190",
      "tree": "d11f738de5c4827820806056fe317634310df887",
      "parents": [
        "b6cf3c02de06dfe2358009e3811055fdef7e10b0"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Fri Jan 18 13:44:37 2013 +0900"
      },
      "committer": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Fri Jan 18 13:44:57 2013 +0900"
      },
      "message": "Ensure that the input method dialog is dismissed when changing the hardware keyboard state.\n\nChange-Id: I51882ecd2b1a12116f43afff7c23454164a6272b\n"
    },
    {
      "commit": "0f8d155363c361199a9d9aa5dcdbc4088990f893",
      "tree": "93547179c8847f8d16fe051b2deae8f462327903",
      "parents": [
        "6d191ed99491f209168e88f3d570e89c6836285b",
        "f60f94a89e49c125f4aff6496710a0fb66579545"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Jan 17 16:15:28 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 17 16:15:33 2013 +0000"
      },
      "message": "Merge \"Second pass tying into dns cache per interface\""
    },
    {
      "commit": "2125dd57cc3c1c43da9793a2ee4bb8a7bf19f083",
      "tree": "fbe39f761d3b18199de133332bbabdaacc766f49",
      "parents": [
        "b2efa40bc37bc83410ef38652f708ea7ef6ab845",
        "e799175b6ba3aadd972f4b861758d675d1f93987"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 17 02:51:09 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 17 02:51:11 2013 +0000"
      },
      "message": "Merge \"AppOps: fix nested op tracking, new API to get apps using permissions.\""
    },
    {
      "commit": "e799175b6ba3aadd972f4b861758d675d1f93987",
      "tree": "2468fd79769eecff660a7c2d2163fb8ae0a11fca",
      "parents": [
        "35654b61e8fe7bc85afcb076ddbb590d51c5865f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 16 17:56:46 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 16 18:10:40 2013 -0800"
      },
      "message": "AppOps: fix nested op tracking, new API to get apps using\npermissions.\n\nChange-Id: I20c7bd58febc01d6911a90440867eaacd133c464\n"
    },
    {
      "commit": "79d59f0968ffcb803f615527d52718322af0f89b",
      "tree": "c854d9fad38475ac2a8b48be9dfd74a13cdac321",
      "parents": [
        "4a0f95cffbb9925e95c216aea41f3450885d4061"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Wed Jan 16 12:51:04 2013 -0800"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Wed Jan 16 17:37:21 2013 -0800"
      },
      "message": "DO NOT MERGE Prevent OOM death for services under ServiceWatcher\u0027s care.\n\nChange-Id: If87be5769b55368edaf4776189e8f6e51a21eb03\n\nConflicts:\n\n\tservices/java/com/android/server/ServiceWatcher.java\n"
    },
    {
      "commit": "fd08d1ece50e9dd0a3dff690911bd3df3c089978",
      "tree": "34a77ba789d3a66d6574dd2b1560dc89b7506e84",
      "parents": [
        "5ebefec5bdb99a646e338997617d46e3ae0162ed"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Wed Jan 16 12:51:04 2013 -0800"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Wed Jan 16 16:21:41 2013 -0800"
      },
      "message": "Prevent OOM death for services under ServiceWatcher\u0027s care.\n\nChange-Id: If87be5769b55368edaf4776189e8f6e51a21eb03\n"
    },
    {
      "commit": "d4fe37bee7c7433f32c23cee100c6e05ba0f3b2b",
      "tree": "76ea7e540dfa63062ae6fa6e4920dccb40c0aa14",
      "parents": [
        "d05efe727b61e321a6c2720166988d52629c050c",
        "27b89e6658a0d233a53f5d7ca20dc57fec82d955"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Wed Jan 16 23:26:30 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 16 23:26:30 2013 +0000"
      },
      "message": "Merge \"Rename bindService to bindServiceAsUser to follow convention.\""
    },
    {
      "commit": "27b89e6658a0d233a53f5d7ca20dc57fec82d955",
      "tree": "3bc24a15905546e7ea38fb37994d67414349b3db",
      "parents": [
        "57b59e025bc10056daf42cd741b626843ff344f5"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Wed Jan 16 12:30:11 2013 -0800"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Wed Jan 16 12:30:11 2013 -0800"
      },
      "message": "Rename bindService to bindServiceAsUser to follow convention.\n\nThis is for the multi-user version of bindService, not the original.\n\nChange-Id: Ib2de35941196accf387b1a276a77e6f9af805ec0\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": "f849124b6bc769bdaf98909279124ff9716c9107",
      "tree": "72a3d57ffe326ac7943a786313ac7364705d9b2c",
      "parents": [
        "278afa73b21023856aa5b39436138abe1b1271bf",
        "ca6486e7f579fa885b6213513f26ce2ca49f873b"
      ],
      "author": {
        "name": "Sasha Levitskiy",
        "email": "sanek@google.com",
        "time": "Tue Jan 15 16:55:41 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 15 16:56:30 2013 -0800"
      },
      "message": "Merge \"Removed Throttle Manager as obsolete\""
    },
    {
      "commit": "ea78b85bb7b688a513fcf456f0e1aeee11e106ea",
      "tree": "a76f630e795b99dc3a448c35a8e01814ee2381ea",
      "parents": [
        "8217635056efa9fb285bd4a0eb26a1789c5cd557"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Tue Jan 15 10:39:28 2013 -0800"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Tue Jan 15 10:39:28 2013 -0800"
      },
      "message": "fix NPE in updateClientUids\n\nBug: 8009908\nChange-Id: I54d97c587a3fa9d003f654f98fdfdbe21af791d6\n"
    },
    {
      "commit": "07f943d4176fac15995985db2ac562f11fd7ffef",
      "tree": "3cc1a4515b3597d741c4fafff90f3dc46d17992f",
      "parents": [
        "92325abb2c07e8499d88b92cf262955aba6f1e54",
        "6cfa7292cffac750d344c0cad8085ccd533b5215"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jan 15 09:10:10 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 15 09:10:10 2013 -0800"
      },
      "message": "Merge \"Add Overrides, remove trailing whitespace.\""
    },
    {
      "commit": "6cfa7292cffac750d344c0cad8085ccd533b5215",
      "tree": "8919e6597acdf37225f305854f44f3ca39c82393",
      "parents": [
        "9003007d35c6ae1cdeac4ca831a036292b7089e9"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jan 15 09:05:42 2013 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jan 15 09:05:42 2013 -0800"
      },
      "message": "Add Overrides, remove trailing whitespace.\n\nOnce and for all.\n\nChange-Id: I0835515696c1a8ec7dff719fb734cbbd0b4252d6\n"
    },
    {
      "commit": "8e303cc5dd4860b6050d5725ce60ca7e6fb00c7b",
      "tree": "8d28ba2ffea81e5321fe5a8f6fe97a30796f845d",
      "parents": [
        "0152360d8b419ddd0fd5b1d701932f96d5839276"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Fri Jan 11 15:55:28 2013 +0900"
      },
      "committer": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Tue Jan 15 12:52:47 2013 +0900"
      },
      "message": "Refactor utilities for InputMethodManagerSerivce that we want to share with the Settings application\n\nBug: 7872918\n\nChange-Id: I0bc9954f163a3ec38d08b9ba842a8a31176eb6a6\n"
    },
    {
      "commit": "ca6486e7f579fa885b6213513f26ce2ca49f873b",
      "tree": "2bd8579677f10c991538b1dd3ab9dea656b1dff2",
      "parents": [
        "707a71e39e8e3bf284422265b680b73a7c63debf"
      ],
      "author": {
        "name": "Sasha Levitskiy",
        "email": "sanek@google.com",
        "time": "Mon Jan 14 16:59:33 2013 -0800"
      },
      "committer": {
        "name": "Sasha Levitskiy",
        "email": "sanek@google.com",
        "time": "Mon Jan 14 16:59:33 2013 -0800"
      },
      "message": "Removed Throttle Manager as obsolete\n\nChange-Id: I63e8514f34c880d0badaab33a347f54a80c84da6\n"
    },
    {
      "commit": "0d31c74b2eff3ce37133a2fe9fb57db7d4d84a91",
      "tree": "e46e79af181a43496c06b4cbbc013f7bb3777afb",
      "parents": [
        "d8c7527297798a341f60a8a943162d9189972fd5",
        "002a54e2291eeb3a3fd0b6b3f9dbc96a7c805062"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 14 10:38:14 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 14 10:38:14 2013 -0800"
      },
      "message": "Merge \"WorkSource can now track package names.\""
    },
    {
      "commit": "002a54e2291eeb3a3fd0b6b3f9dbc96a7c805062",
      "tree": "03e3db9e65e24f904a5c138306a9221f9a8547b7",
      "parents": [
        "0bdb1e35ec09a2558fcdb2be51c032fb3c4bbc58"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 10 17:34:55 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 11 17:37:04 2013 -0800"
      },
      "message": "WorkSource can now track package names.\n\nUse this to track the package name of applications\naccessing GPS.\n\nAnd now the app ops service can enforce that callers\nmust provide valid package names.\n\nChange-Id: I842a0abe236ea85f77926d708547f0f95c24bd49\n"
    },
    {
      "commit": "5ae8e45ff390d660c5694f27e2df14cf7b8fb81d",
      "tree": "cfda436cb88219cc38f5b03d0161353ea0d45b8e",
      "parents": [
        "919129832daa12f44295bb2751dcc1ef08203413",
        "13131e74ea93d82c004ab1567351eadcedd799a5"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Jan 11 16:41:26 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 16:41:40 2013 -0800"
      },
      "message": "Merge \"Make DimLayer track changes to WindowState layer.\""
    },
    {
      "commit": "f60f94a89e49c125f4aff6496710a0fb66579545",
      "tree": "2ee2ab3c947e502e2c75a1451ef0c268894b0925",
      "parents": [
        "a268ba51f77527585363e48aec1be45b9ec97061"
      ],
      "author": {
        "name": "Mattias Falk",
        "email": "mattias.falk@sonyericsson.com",
        "time": "Tue Aug 23 14:15:13 2011 +0200"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Jan 11 15:47:08 2013 -0800"
      },
      "message": "Second pass tying into dns cache per interface\n\nSet dns servers for secondary nets and attach the\nprocesses (pids) that are using the secondary nets\nto the secondary nets associated dns cache.\n\nChange-Id: Id865c2c3fdc0ec1c3e30c134e9ea4109f4f2fbeb\nbug:5465296\n"
    },
    {
      "commit": "13131e74ea93d82c004ab1567351eadcedd799a5",
      "tree": "895ce85d1e64f3e02d2c26a5d36d005258be1d54",
      "parents": [
        "14e066df1ca863667c6c6d745ad61bb07ac5082c"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Jan 11 11:03:33 2013 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Jan 11 11:03:33 2013 -0800"
      },
      "message": "Make DimLayer track changes to WindowState layer.\n\nThe DimLayer behind popups was not changing when the popup layer\nchanged. It will now.\n\nFixes bug 7974415.\n\nChange-Id: Ia486efa83d623716a09d73a22493a4222823c573\n"
    },
    {
      "commit": "3fef446a149408378a4cb93a4773bec778f6161d",
      "tree": "0d109b8c3d5687c8c9d9ad4f7483e668550cd3cf",
      "parents": [
        "9062fd8d554fe609ad6096791e5d69ceab9878fb",
        "ec64c30bfc221fea888efe5eac62f7c5303aeeb0"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Fri Jan 11 10:54:46 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 11 10:54:46 2013 -0800"
      },
      "message": "am ec64c30b: am cc52272b: am a3e79199: Merge \"TIME_TICK was not occurred for one hour\"\n\n* commit \u0027ec64c30bfc221fea888efe5eac62f7c5303aeeb0\u0027:\n  TIME_TICK was not occurred for one hour\n"
    },
    {
      "commit": "9062fd8d554fe609ad6096791e5d69ceab9878fb",
      "tree": "bc8536c4e401455bf286482389147e140e0c966f",
      "parents": [
        "b70d9df780b50f2aab2ff006e5cbfbd1a43ba332",
        "50fc82fdf025bc1fee8f0eb50fa88e4591c8daae"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Fri Jan 11 10:54:31 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 11 10:54:31 2013 -0800"
      },
      "message": "am 50fc82fd: am 30b074fc: am 2495d08a: am 5327322a: Merge \"Revert \"Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\"\" into jb-mr1.1-dev\n\n* commit \u002750fc82fdf025bc1fee8f0eb50fa88e4591c8daae\u0027:\n  Revert \"Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\"\n"
    },
    {
      "commit": "b70d9df780b50f2aab2ff006e5cbfbd1a43ba332",
      "tree": "89ab898ac8ccc2be4887f8f939050bae5b7c6799",
      "parents": [
        "1d6a7bd97340eab85920b37c3c83ee66fbebfed1",
        "1ec3c2ccedde5cd8ff6e94c9b1566a913d5e8db0"
      ],
      "author": {
        "name": "Sascha Prueter",
        "email": "saschap@google.com",
        "time": "Fri Jan 11 10:53:49 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 11 10:53:49 2013 -0800"
      },
      "message": "am 1ec3c2cc: am 28608bbb: am d692ea6d: am b5e4835e: Merge \"Improve heuristics for detecting wireless chargers.\" into jb-mr1.1-dev\n\n* commit \u00271ec3c2ccedde5cd8ff6e94c9b1566a913d5e8db0\u0027:\n  Improve heuristics for detecting wireless chargers.\n"
    },
    {
      "commit": "885bfcd523bb7f237b007f5ad1bdc6b123a034f5",
      "tree": "b9a6128054928f635235db97d534324311d4b4f3",
      "parents": [
        "c19b54975214a12225a1669ae18b0005a1357189",
        "9e6575bc52f421484fe262aff224db247e70d830"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 11 10:53:19 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 11 10:53:19 2013 -0800"
      },
      "message": "am 9e6575bc: am 854458f4: am 0287ca3c: am e62fa825: Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog\n\n* commit \u00279e6575bc52f421484fe262aff224db247e70d830\u0027:\n  Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog\n"
    },
    {
      "commit": "ec64c30bfc221fea888efe5eac62f7c5303aeeb0",
      "tree": "eac88a968afad3b501171844ea7f52d06cd420a8",
      "parents": [
        "50fc82fdf025bc1fee8f0eb50fa88e4591c8daae",
        "cc52272b4fa27ab36ba20e22a53f872fedc8bb45"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Fri Jan 11 08:58:34 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 11 08:58:34 2013 -0800"
      },
      "message": "am cc52272b: am a3e79199: Merge \"TIME_TICK was not occurred for one hour\"\n\n* commit \u0027cc52272b4fa27ab36ba20e22a53f872fedc8bb45\u0027:\n  TIME_TICK was not occurred for one hour\n"
    },
    {
      "commit": "cc52272b4fa27ab36ba20e22a53f872fedc8bb45",
      "tree": "53bb1eb46b2f10bba72a63e6a2a6870897e11acf",
      "parents": [
        "c02bbfb3ea64ec9f4f3e6eff796b0bfe571bda9b",
        "a3e7919932199e2178792cbae8870e9b48c57523"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Thu Jan 10 18:26:50 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 10 18:26:50 2013 -0800"
      },
      "message": "am a3e79199: Merge \"TIME_TICK was not occurred for one hour\"\n\n* commit \u0027a3e7919932199e2178792cbae8870e9b48c57523\u0027:\n  TIME_TICK was not occurred for one hour\n"
    },
    {
      "commit": "50fc82fdf025bc1fee8f0eb50fa88e4591c8daae",
      "tree": "0162da5f2bed5ebe9501fb3c983b5b97845c289a",
      "parents": [
        "1ec3c2ccedde5cd8ff6e94c9b1566a913d5e8db0",
        "30b074fcbff6263db4044ff4e8f36eb5d4e136eb"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Thu Jan 10 18:20:56 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 10 18:20:56 2013 -0800"
      },
      "message": "am 30b074fc: am 2495d08a: am 5327322a: Merge \"Revert \"Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\"\" into jb-mr1.1-dev\n\n* commit \u002730b074fcbff6263db4044ff4e8f36eb5d4e136eb\u0027:\n  Revert \"Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\"\n"
    },
    {
      "commit": "30b074fcbff6263db4044ff4e8f36eb5d4e136eb",
      "tree": "b799f359cb4a5e9df71c527338124baed90eb3ac",
      "parents": [
        "28608bbb2fb6daf3d261cb10eaeb1849781cf77d",
        "2495d08a5c06556deb7c3993add337037b8b492e"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Thu Jan 10 18:17:35 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 10 18:17:35 2013 -0800"
      },
      "message": "am 2495d08a: am 5327322a: Merge \"Revert \"Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\"\" into jb-mr1.1-dev\n\n* commit \u00272495d08a5c06556deb7c3993add337037b8b492e\u0027:\n  Revert \"Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\"\n"
    },
    {
      "commit": "5327322ab94711a654d41a5b53be3bf6a3a28a39",
      "tree": "0403bc5fd4a5aae3e63cfa3c83aef57fcb738a6c",
      "parents": [
        "b5e4835e3a4ff37693891a59841fcefa5c3aa648",
        "9d08143fa72ad87572a7d5c714f379262a73e1b2"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Thu Jan 10 18:12:43 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 10 18:12:44 2013 -0800"
      },
      "message": "Merge \"Revert \"Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\"\" into jb-mr1.1-dev"
    },
    {
      "commit": "b5eb550fb10ad7c54be489a89a08fc3fb10fbe53",
      "tree": "829796e0a1ed36a1b1ddfc1702027fc02e9e67f9",
      "parents": [
        "14e066df1ca863667c6c6d745ad61bb07ac5082c"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Jan 10 17:29:30 2013 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Jan 10 17:29:30 2013 -0800"
      },
      "message": "Call assignLayersLocked when InputMethod is moved.\n\nCall was removed by over-ambitious editing in CL 259410.\n\nFixes bug 7966824.\n\nChange-Id: I9feb2ec27907f4e03b9424710adc2743a8b512d8\n"
    },
    {
      "commit": "1ec3c2ccedde5cd8ff6e94c9b1566a913d5e8db0",
      "tree": "e340a68a93aa001852653fe5c0bbbfbe08c9c978",
      "parents": [
        "c8eb3b41d5ade3d0900d617d518a7b7b673a01ad",
        "28608bbb2fb6daf3d261cb10eaeb1849781cf77d"
      ],
      "author": {
        "name": "Sascha Prueter",
        "email": "saschap@google.com",
        "time": "Thu Jan 10 11:19:20 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 10 11:19:20 2013 -0800"
      },
      "message": "am 28608bbb: am d692ea6d: am b5e4835e: Merge \"Improve heuristics for detecting wireless chargers.\" into jb-mr1.1-dev\n\n* commit \u002728608bbb2fb6daf3d261cb10eaeb1849781cf77d\u0027:\n  Improve heuristics for detecting wireless chargers.\n"
    },
    {
      "commit": "28608bbb2fb6daf3d261cb10eaeb1849781cf77d",
      "tree": "f82f206abe911953e78c517f659e13f4ff7e79fe",
      "parents": [
        "d6ddb51b3d4ec1bb2e6305823681cdeb05c0ea7b",
        "d692ea6dd297fbd39885525a29bdf6637a3640f2"
      ],
      "author": {
        "name": "Sascha Prueter",
        "email": "saschap@google.com",
        "time": "Thu Jan 10 11:16:51 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jan 10 11:16:51 2013 -0800"
      },
      "message": "am d692ea6d: am b5e4835e: Merge \"Improve heuristics for detecting wireless chargers.\" into jb-mr1.1-dev\n\n* commit \u0027d692ea6dd297fbd39885525a29bdf6637a3640f2\u0027:\n  Improve heuristics for detecting wireless chargers.\n"
    },
    {
      "commit": "b5e4835e3a4ff37693891a59841fcefa5c3aa648",
      "tree": "7a99f8329bb42ec98dbd7ce10547859699e69251",
      "parents": [
        "ec7ffa145572eae2566cb1c763bcf50d8d1e8d6b",
        "3b971598ed28d45c176e3f9b076fc743a406296d"
      ],
      "author": {
        "name": "Sascha Prueter",
        "email": "saschap@google.com",
        "time": "Thu Jan 10 11:11:20 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 10 11:11:20 2013 -0800"
      },
      "message": "Merge \"Improve heuristics for detecting wireless chargers.\" into jb-mr1.1-dev"
    },
    {
      "commit": "3b971598ed28d45c176e3f9b076fc743a406296d",
      "tree": "bf1911234e5906757f80496b754a27a6e08eb748",
      "parents": [
        "93a4ab2fa2efd8908c30298796af710c1ec0f85f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jan 09 18:46:37 2013 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Jan 10 10:01:56 2013 -0800"
      },
      "message": "Improve heuristics for detecting wireless chargers.\n\nOn some devices, we need to apply heuristics to determine whether\nthe device is docked on a wireless charger because the charging\ncircuits do not provide sufficient information to know whether\nthe device is on the charger unless it is actually receiving\npower.\n\nThe previous heuristics only considered the battery level to\nsuppress spurious dock signals.\n\nThe new heuristics also take into account whether the device\nappears to have moved from its previous position on the dock.\n\nBug: 7744185\nChange-Id: I5ba885dac25b37840b6db46b8a0f30968a06776c\n"
    },
    {
      "commit": "9d08143fa72ad87572a7d5c714f379262a73e1b2",
      "tree": "d0260cf6c539e7e905d8586b0f386c57e3d90375",
      "parents": [
        "481102eed6d8eaff07489717bde7fc59a5dea5bf"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Jan 09 23:44:28 2013 -0800"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Thu Jan 10 17:42:56 2013 +0900"
      },
      "message": "Revert \"Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\"\n\nThis reverts commit 32b812054cce27d1c70b53ba8ac729c7186b105e\n\nBug: 7976890\n\nChange-Id: I75ab60734153719b199cf7281d23f5eb1ad2d1bc\n"
    },
    {
      "commit": "563914a9a1b0a8b897e5d912370cf03b07c0eaf8",
      "tree": "bf01250e0448b3172f9ac1f21b30471a8b7afece",
      "parents": [
        "9fae2ecc5fb777230bde74e4a099fb4e98bf34b4"
      ],
      "author": {
        "name": "Sungmin Choi",
        "email": "sungmin.choi@lge.com",
        "time": "Thu Jan 10 17:28:40 2013 +0900"
      },
      "committer": {
        "name": "Sungmin Choi",
        "email": "sungmin.choi@lge.com",
        "time": "Thu Jan 10 17:33:26 2013 +0900"
      },
      "message": "TIME_TICK was not occurred for one hour\n\nTIME_TICK was not occurred at the end of DST for one hour\n\nStep to reproduce:\n1. Settings -\u003e Date \u0026 time\n2. uncheck Automatic date \u0026 time and Automatic time zone\n3. select Time zone -\u003e select Brussels\n4. set date -\u003e Oct. 28. 2012\n5. set time -\u003e 1:59 AM\n\nBug: 7922117\nChange-Id: I2e78bd97b508d6a38471425cfbaca45fb4b89c1e\n"
    },
    {
      "commit": "9e6575bc52f421484fe262aff224db247e70d830",
      "tree": "71536052f31d3020f54557ca794cc3c55455889c",
      "parents": [
        "79cc4a2ab0130acca83de5945a43adf9925beac1",
        "854458f4d52937f9a1385559d759bd8019eb3294"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 09 19:01:26 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 09 19:01:26 2013 -0800"
      },
      "message": "am 854458f4: am 0287ca3c: am e62fa825: Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog\n\n* commit \u0027854458f4d52937f9a1385559d759bd8019eb3294\u0027:\n  Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog\n"
    },
    {
      "commit": "854458f4d52937f9a1385559d759bd8019eb3294",
      "tree": "c221ae1f7f3fe87b64b8dfc3bb397f1a71cc5de8",
      "parents": [
        "d17792073fd3ab963bd5e0a7edcb312720fcea26",
        "0287ca3ca36ad98004ddabfa189105e6324a820e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 09 19:00:06 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 09 19:00:06 2013 -0800"
      },
      "message": "am 0287ca3c: am e62fa825: Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog\n\n* commit \u00270287ca3ca36ad98004ddabfa189105e6324a820e\u0027:\n  Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog\n"
    },
    {
      "commit": "e62fa825794967c2067be86e8b57b83f4b82ee1c",
      "tree": "e61d6cd3995b98d28fb26c24becd34a267176f85",
      "parents": [
        "d29f2d263af9a3017799d3098ed208a49c5ecc69"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 09 18:31:37 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 09 18:51:51 2013 -0800"
      },
      "message": "Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog\n\nThe volume panel now forces us out of the UI modes while it\nis up.\n\nChange-Id: If39fa33b1c52579bf5d376ce4722408cee3ca951\n"
    },
    {
      "commit": "6b0fb368707a2d47dd3fbeaf01c214de5227baa0",
      "tree": "ba599a214dc47552cd87803cfbd812b5e0685597",
      "parents": [
        "daa944a167c3e7365ea6f9b6712950edd5ca2dd4",
        "1506921e8e7897be8297365dcaf15f4c6d6eb472"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jan 09 16:09:55 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 09 16:10:14 2013 -0800"
      },
      "message": "Merge \"Revert \"App home directories are now 0700 for targetSdkVersion \u003e 17\"\""
    },
    {
      "commit": "1506921e8e7897be8297365dcaf15f4c6d6eb472",
      "tree": "2616559fc595745fc7b07962d43ffa6b54329f38",
      "parents": [
        "b102fb8ed5acdfa5f47e60b7d9fef7b5d74bd9fd"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jan 09 15:54:56 2013 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jan 09 15:54:56 2013 -0800"
      },
      "message": "Revert \"App home directories are now 0700 for targetSdkVersion \u003e 17\"\n\nThis reverts commit 92091fa9636403728fe94cc83400495a8612c2d3.\n\nBug: 7966399\nBug: 7208882\n"
    },
    {
      "commit": "a06de0f29b58df9246779cc4bfd8f06f7205ddb6",
      "tree": "c8ecd3323c1112dd46a9470600eab5df022ca85c",
      "parents": [
        "2e9f65f978397d112dbfb134d374588515bb644a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 11 16:34:47 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 09 12:47:47 2013 -0800"
      },
      "message": "New \"app ops\" service.\n\nInitial implementation, tracking use of the vibrator, GPS,\nand location reports.\n\nAlso includes an update to battery stats to also keep track of\nvibrator usage (since I had to be in the vibrator code anyway\nto instrument it).\n\nThe service itself is only half-done.  Currently no API to\nretrieve the data (which once there will allow us to show you\nwhich apps are currently causing the GPS to run and who has\nrecently accessed your location), it doesn\u0027t persist its data\nlike it should, and no way to tell it to reject app requests\nfor various operations.\n\nBut hey, it\u0027s a start!\n\nChange-Id: I05b8d76cc4a4f7f37bc758c1701f51f9e0550e15\n"
    },
    {
      "commit": "c34bc1178b3d5e60651e4b1ffb416ff8235bf388",
      "tree": "c108eceb8c8c673b6958baccca1b9a1a604daf7a",
      "parents": [
        "995c25bbcb0116eaa4010fb2635ea8ad00c0441c"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jan 08 15:02:13 2013 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jan 08 15:02:13 2013 -0800"
      },
      "message": "Turn off debug logging.\n\nChange-Id: I8dcfbb1f91d63e9126822a0c45b34cb21c09fa2a\n"
    },
    {
      "commit": "ef6550195f2f403e5ace27d49ae4f7f38d29cf4a",
      "tree": "09b6d539e9a1b9741d3fb7ea021c50f97722639a",
      "parents": [
        "73164dc7bce52f6658eb2f786c45538e52404ab4"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Jan 03 11:20:24 2013 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jan 08 00:36:16 2013 -0800"
      },
      "message": "Release Session earlier, release Session later.\n\nFor finishDrawingWindow queue the performLayoutAndPlaceSurfaces call\nand return immediately.\n\nFor setTransparentRegionHint call the WindowStateAnimator method\nimmediately, removing the previous queueing of it.\n\nFixes bug 7174665.\n\nChange-Id: Ia52f9a6685842220e4ffca6e214ee366470ff666\n"
    },
    {
      "commit": "73164dc7bce52f6658eb2f786c45538e52404ab4",
      "tree": "86ed8ae4ac4ca7fff157c3a8369709e0e6564e9d",
      "parents": [
        "581068131c192a8c495fac00d3c61807580c7eca",
        "1420b93fa5606979fd67eaf80f50294d4f8c191b"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jan 08 00:23:46 2013 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 08 00:23:46 2013 -0800"
      },
      "message": "Merge \"Combine DimAnimator and DimSurface into DimLayer\""
    },
    {
      "commit": "1420b93fa5606979fd67eaf80f50294d4f8c191b",
      "tree": "dae8e33d3f9e660398e3215b6eaf165d92756285",
      "parents": [
        "a22f980f993876570eab8297d3c2207c7fe3d65e"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Dec 28 17:14:38 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jan 08 00:22:22 2013 -0800"
      },
      "message": "Combine DimAnimator and DimSurface into DimLayer\n\nReplace two classes that did similar things in a complicated manner\nwith one class that does it more simply.\n\nBug 7064755 fixed.\n\nChange-Id: I8c415671f60d1d2ece9da5916421f4d24aed2d65\n"
    },
    {
      "commit": "581068131c192a8c495fac00d3c61807580c7eca",
      "tree": "730101d1db2d4c9eb5da8a7f760143110abc05af",
      "parents": [
        "9a29a5d6790cda3f9eedd8231570d9b4f76c06cd"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Dec 28 12:27:40 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jan 07 23:39:11 2013 -0800"
      },
      "message": "Remove some TODOs.\n\nChange-Id: I52f5a8a76593dde177c2e931f656b13134a3bd2b\n"
    },
    {
      "commit": "9a29a5d6790cda3f9eedd8231570d9b4f76c06cd",
      "tree": "62432befb1e2d4a69c1a9f343379d15803593528",
      "parents": [
        "4b71aa1f8a1a3b7189fd29241ea7c594ce01623c"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Dec 27 19:03:40 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jan 07 23:39:10 2013 -0800"
      },
      "message": "Convert three booleans into single state variable.\n\nMake app transition states easier to understand.\nRemove unnecessary dependence on ActivityOptions.\n\nChange-Id: If3942133e919a4121340f8ef5ca1c50df22f370d\n"
    },
    {
      "commit": "4b71aa1f8a1a3b7189fd29241ea7c594ce01623c",
      "tree": "2df032d5fff2a76836cb210c2e29c8f1259563a0",
      "parents": [
        "ecba50e528b99b581a9d1016bb8790709363699d"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Dec 27 17:20:01 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jan 07 23:38:57 2013 -0800"
      },
      "message": "Move app transition constants\n\nMove app transition constants from WindowManagerPolicy to\nAppTransition.\n\nChange-Id: I8ae6c4d0da1db826c44eb4ea0c6b85016b50b1a3\n"
    },
    {
      "commit": "5cd731a2333479d85b1bdf6dbf8a185df2877146",
      "tree": "645965fde2ab7343fe892cd3c9f4a71c94cd69b7",
      "parents": [
        "4c7f809dd5c934b86b0450e59941998aeb7fb96e"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Wed Dec 19 15:04:21 2012 -0800"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Wed Jan 02 13:25:57 2013 -0800"
      },
      "message": "prevent concurrency issues during LocationManager init\n\nsystemReady() was returning before the LocationManagerService was\nactually ready. Applications making LocationManager transactions\nduring their startup could possibly hit a race condition with the\nyet-uninitialised LocationManagerService.\n\nTo guarantee that LocationManagerService is actually ready before\nreturning from systemReady(), we simply do the startup work on the\nthread that called systemReady(), rather than spin up a secondary\nthread to do the work asynchronously.\n\nLocationWorkerHandler still needs a thread to do its work on, so\nrather than have it run on the secondary thread that was\npreviously used for systemReady()\u0027s work, we create a HandlerThread\nfor it.\n\nAdditionally, LocationManagerService.init() really needed to grab\nlock for some of the things it was doing. I moved all of the code\nthat could benefit from mutex protection to a single section of\nsystemReady() and wrapped it up with a lock while I was at it.\n\nBug: 7723944\nChange-Id: I51d480e2781622c3a14769c3a2019a2407dcfd8a\n"
    },
    {
      "commit": "fa28d45d59cd00163dad560eb3f9c1ed6d6651a0",
      "tree": "2be7f5954ef8bbfefb20794f5746a22401002ad4",
      "parents": [
        "246f4529bb06c454759cf63d64cef3419f8df64a",
        "7f93e7d265509d4ae18f99cbc9a45cca087c4b71"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@android.com",
        "time": "Fri Dec 28 09:47:03 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 28 09:47:03 2012 -0800"
      },
      "message": "am 7f93e7d2: am 88fe4ebc: Merge \"NsdService: Clear client info after resolution request is serviced.\"\n\n* commit \u00277f93e7d265509d4ae18f99cbc9a45cca087c4b71\u0027:\n  NsdService: Clear client info after resolution request is serviced.\n"
    },
    {
      "commit": "273fa2708a208155fedcf22161d2dfd4ab1ec6df",
      "tree": "95a80edcc2458fb908c62da3ca7fc20658b4a574",
      "parents": [
        "c30f45b97f0aeefef05f51208f54eafa3499e40b",
        "72669d18016446d874e4fa1005464e36375124e4"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Wed Dec 26 11:56:30 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 26 11:56:30 2012 -0800"
      },
      "message": "Merge \"Fixes to clean up icon launching during animations.\""
    },
    {
      "commit": "7f93e7d265509d4ae18f99cbc9a45cca087c4b71",
      "tree": "3ee7e0fad99601136254ae61c8cc72d7682e12da",
      "parents": [
        "ac0fd124133b04f555047df8804ecc46ef3751e9",
        "88fe4ebc0b6e0499f247b5d896778dd72304bf9f"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@android.com",
        "time": "Fri Dec 21 10:07:24 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 21 10:07:24 2012 -0800"
      },
      "message": "am 88fe4ebc: Merge \"NsdService: Clear client info after resolution request is serviced.\"\n\n* commit \u002788fe4ebc0b6e0499f247b5d896778dd72304bf9f\u0027:\n  NsdService: Clear client info after resolution request is serviced.\n"
    },
    {
      "commit": "b12428a128f358bbf23a54471e552dd49b2eaef4",
      "tree": "1b16a3cb145382a69c162dcd4e5c2618c2521d70",
      "parents": [
        "5b88cd721870748a071364852f19f266a8ea1de6"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Dec 20 16:07:06 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Dec 20 16:24:58 2012 -0800"
      },
      "message": "Save most recent thumbnail Bitmap for reuse.\n\nThis keeps Recents from taking two identical screenshots, one for\nthe Recents thumbnail and one for the pause activity thumbnail.\n\nFixes bug 7351766.\n\nChange-Id: Ia4d12802151666ec36e4d9b395cf10e1e02dc37f\n"
    },
    {
      "commit": "88fe4ebc0b6e0499f247b5d896778dd72304bf9f",
      "tree": "5d5462608b40ac5583c4cb8a96ffbceefcd2c4b2",
      "parents": [
        "fc56015bd3d86e470fdf3ac8449776809124875e",
        "6727e7351e2a95d64017340c51c35239210f1381"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@android.com",
        "time": "Thu Dec 20 14:43:16 2012 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 20 14:43:17 2012 -0800"
      },
      "message": "Merge \"NsdService: Clear client info after resolution request is serviced.\""
    },
    {
      "commit": "72669d18016446d874e4fa1005464e36375124e4",
      "tree": "1d293d3e900bbbe9ebd5d3963163573908b54149",
      "parents": [
        "5b88cd721870748a071364852f19f266a8ea1de6"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Dec 18 17:23:54 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Dec 20 10:15:58 2012 -0800"
      },
      "message": "Fixes to clean up icon launching during animations.\n\nSeveral problems were causing animations to jump to the end when\nlaunching an app while a previous app was animating away.\n\n- Keep the two app token lists in tighter synch. These were separated\nwhen we hoped to completely separate layout form animation. This is\nnot as critical a goal any more.\n\n- Use new test criteria for starting and stopping animations.\n\nBug 7885350 fixed.\n\nChange-Id: Ib679117f627d0957cda17cc6ffca2bc2cdd6ecdd\n"
    },
    {
      "commit": "321bdf52a1b277a687c8618bcd20c3cfc5a60b40",
      "tree": "8bd5ff861edca6f7309462978dc567a51dd9dc4f",
      "parents": [
        "a2303750fb03839e9c7584a5f573f166465be214"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Dec 18 09:53:24 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Dec 20 09:32:02 2012 -0800"
      },
      "message": "Fade recents thumbnail to transparent earlier.\n\n- Reduce the gpu load by fading the recents thumbnail to an alpha of\n0.0 before the remaining animations are completed. When alpha hits\n0 the gpu treats the layer as hidden and can render the remaining\nlayers faster.\n\n- Refactoring of animations to:\n  o Remove unused setInterpolator() calls on AnimationSet constituents.\n  o Remove unnecessary setFillBefore() calls.\n  o Consolidate setDuration() calls into AnimationSet.\n  o Create Interpolators once.\n  o Group animation set calls with their Animations.\n  o Use same animation timing and Interpolator for all animations.\n\nThis is a partial fix for 7729214.\n\nChange-Id: Ic3c47bcf7c84944128effb699efcdd1f89200fc4\n"
    },
    {
      "commit": "a2303750fb03839e9c7584a5f573f166465be214",
      "tree": "47885ebd0c146b88c0fdcf2c3fd8819c346bf580",
      "parents": [
        "1d25430c9552175d694df289fdc32964772e3769",
        "0bf6ec9e377f9fafb67a36f7fb54d3f6676634fc"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Wed Dec 19 16:39:51 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 19 16:40:18 2012 -0800"
      },
      "message": "Merge changes I1dfe21e5,Ia0218bf8\n\n* changes:\n  Clean up warnings.\n  Minor refactorings.\n"
    },
    {
      "commit": "e422737fda48f73cdd74800c9a9b9d15d0186b6d",
      "tree": "9b1db94b7519f6c75ecffba9d0abfe0f78246bda",
      "parents": [
        "b82f5a6c90e4a36aebf0f5fb10d752f0ba4dd2a0",
        "a90c92a1c97830de5e1766bb64ff421a2a50ed56"
      ],
      "author": {
        "name": "Justin Koh",
        "email": "justinkoh@google.com",
        "time": "Wed Dec 19 11:48:41 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 19 11:48:41 2012 -0800"
      },
      "message": "am a90c92a1: am 86903699: Merge \"Start RecognitionActivity with an upswipe gesture.\" into jb-mr1-aah-dev\n\n* commit \u0027a90c92a1c97830de5e1766bb64ff421a2a50ed56\u0027:\n  Start RecognitionActivity with an upswipe gesture.\n"
    },
    {
      "commit": "52ed1fdf105846e184efe1889fa0aa358ac8a181",
      "tree": "a12b1303b9c2f4fc0c130f4dd6337b426d1ec9a5",
      "parents": [
        "cae1550e910c43508c3d0c7e2f445639c99c65ce",
        "5ce0226708ec75b8636d062ae89aeb410c06659c"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Dec 19 10:27:42 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 19 10:27:42 2012 -0800"
      },
      "message": "am 5ce02267: am 7ad7b2c4: am 32b81205: Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\n\n* commit \u00275ce0226708ec75b8636d062ae89aeb410c06659c\u0027:\n  Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\n"
    },
    {
      "commit": "5ce0226708ec75b8636d062ae89aeb410c06659c",
      "tree": "1b244f60e1a10434c24b4bee8838f3bf8e9287d6",
      "parents": [
        "a8d7b52c88ec0dea889affeaa9311b6f7ae43538",
        "7ad7b2c437d10fb8e7221e6e28aa247217f93681"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Dec 19 10:24:45 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 19 10:24:45 2012 -0800"
      },
      "message": "am 7ad7b2c4: am 32b81205: Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\n\n* commit \u00277ad7b2c437d10fb8e7221e6e28aa247217f93681\u0027:\n  Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\n"
    },
    {
      "commit": "7ad7b2c437d10fb8e7221e6e28aa247217f93681",
      "tree": "a26d33ecacaefcfc9d2e16549dd27c47914cbdc4",
      "parents": [
        "c799aee9b85062a389e444c0b3009b6f0ad512a2",
        "32b812054cce27d1c70b53ba8ac729c7186b105e"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Dec 19 10:23:04 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 19 10:23:04 2012 -0800"
      },
      "message": "am 32b81205: Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\n\n* commit \u002732b812054cce27d1c70b53ba8ac729c7186b105e\u0027:\n  Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\n"
    },
    {
      "commit": "32b812054cce27d1c70b53ba8ac729c7186b105e",
      "tree": "ba4d717ddde02773ceb98a1c227123b025eb359c",
      "parents": [
        "858eb008eb3ea720d9c38346706f4d94bd43f917"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Dec 19 21:06:57 2012 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Dec 19 21:06:57 2012 +0900"
      },
      "message": "Fix a bug where disabled auxilialy IME is unexpectedly re-enabled\n\nBug: 7872918\n\nThis is a serious issue which the disabled system auxilialy IME is unexpectedly re-enabled by re-building internal IMI cache.\n\nChange-Id: I0727cc973dfaea9823194021ce94af8665b98373\n"
    },
    {
      "commit": "ceab6cbf781d084ab4bb1b4985d7202f5c5b9ed0",
      "tree": "a2b90bb8b6fb02d96baf42bd23beb580d999d969",
      "parents": [
        "06f7de4944bbf650e1574c6f25d3ef6a193122bf",
        "2e4dce0dd24aa89ca6adf6559f13d3e342ff8558"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 18 17:45:00 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 17:45:34 2012 -0800"
      },
      "message": "Merge \"Fix metered SSID matching regression.\""
    },
    {
      "commit": "2e4dce0dd24aa89ca6adf6559f13d3e342ff8558",
      "tree": "fd3a63837c3715a6bd6c6b3e614a21b2d5dd2e07",
      "parents": [
        "4e7ec240cabbdf3ac9776a691be0a46ea4e2e69e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 18 17:06:06 2012 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Dec 18 17:07:01 2012 -0800"
      },
      "message": "Fix metered SSID matching regression.\n\nWifiInfo changed to return SSIDs with quotes included, so relax our\nidentity matching to accept matches regardless of quotedness.\n\nBug: 7695807\nChange-Id: Ib5d06666035e06b2d4b2f7cb498767d63b1b1828\n"
    },
    {
      "commit": "12174a1c62f1a21c76f4b10eef71438019dce716",
      "tree": "882fda7d8304ff2428f2b40bbcfbd23631574f8f",
      "parents": [
        "ddf6d2907ba55159a0b053e3cf557768e0b5959c",
        "48576911a2de25c46ecfbecdf7dcb373b70be3a5"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Dec 18 15:52:45 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Dec 18 15:52:45 2012 -0800"
      },
      "message": "am 48576911: Merge from AOSP staging branch\n\n* commit \u002748576911a2de25c46ecfbecdf7dcb373b70be3a5\u0027:\n  Return error upon attempt to use non-existent APN\n  Memory leak due to bad destroy sequence\n"
    },
    {
      "commit": "48576911a2de25c46ecfbecdf7dcb373b70be3a5",
      "tree": "108659138abd42e51d77aac4fa8366f4e4b3c4da",
      "parents": [
        "0c1badc64e5340b643640d37120bf926142dda1b",
        "9b64c4906be5314a6c2cde520317b8cb36e7b3e4"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Dec 18 15:14:08 2012 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Dec 18 15:14:12 2012 -0800"
      },
      "message": "Merge from AOSP staging branch\n\nChange-Id: Iad3df4845e6fae16c4ae6dbddcad0121d4775dcd\n"
    },
    {
      "commit": "9b64c4906be5314a6c2cde520317b8cb36e7b3e4",
      "tree": "b4324db151d1f0cfa9c15b425ad976fadbf86943",
      "parents": [
        "7979b58a7ade37c3b6d574fd647e633c5b57c3f1",
        "342a7cb69f8e0cfe208b12cc451c445ae8583e04"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Dec 18 11:02:51 2012 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 18 11:02:52 2012 -0800"
      },
      "message": "Merge \"Return error upon attempt to use non-existent APN\""
    },
    {
      "commit": "0bf6ec9e377f9fafb67a36f7fb54d3f6676634fc",
      "tree": "b0eb5cc9b7ff7dd8c0bbc585f31c2d94a7737d5c",
      "parents": [
        "2268e7ee5c450c45121ebd5796221592c087ed73"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Dec 18 08:33:27 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Dec 18 10:03:21 2012 -0800"
      },
      "message": "Clean up warnings.\n\nChange-Id: I1dfe21e5f64364c90565b594e28074cabe7daa64\n"
    },
    {
      "commit": "342a7cb69f8e0cfe208b12cc451c445ae8583e04",
      "tree": "c32f4e5ddee2db228289d2f18f11594c62e078cb",
      "parents": [
        "568f923ba4cf522f699837bee0d8cba318343345"
      ],
      "author": {
        "name": "Mikael Hedegren",
        "email": "mikael.hedegren@sonyericsson.com",
        "time": "Fri Dec 14 15:52:52 2012 +0100"
      },
      "committer": {
        "name": "Zoran Jovanovic",
        "email": "zoran.jovanovic@sonymobile.com",
        "time": "Tue Dec 18 15:32:48 2012 +0100"
      },
      "message": "Return error upon attempt to use non-existent APN\n\nstartUsingNetworkFeature will ignore errors from\nreconnect - causing ConnectivityService to send\nfaulty information back to requester.\n\nChange-Id: I4e0fcc1addd84da409cdc1eed1a95d25d925e020\n"
    },
    {
      "commit": "f8f147d167ed2a6cf5ba4b1b3a633401ecc5d384",
      "tree": "f9a42447fb57aa48a2550808ee520bc43d5e843d",
      "parents": [
        "c06052e6728a4e26f1745dc0939cdf4a534c8466",
        "81e3c9ed66ce6968a331c4eafb969f66234d6e8a"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Dec 17 19:00:00 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 17 19:00:00 2012 -0800"
      },
      "message": "am 81e3c9ed: am d2a21d7f: Merge \"Fade recents thumbnail to transparent earlier.\" into jb-mr1.1-dev\n\n* commit \u002781e3c9ed66ce6968a331c4eafb969f66234d6e8a\u0027:\n  Fade recents thumbnail to transparent earlier.\n"
    },
    {
      "commit": "81e3c9ed66ce6968a331c4eafb969f66234d6e8a",
      "tree": "eb4bd015e71fbf5e8f9c95e058f9c21941341ae6",
      "parents": [
        "baca4e5a5d70894ab576c8b4efe6289e709ea8df",
        "d2a21d7fee7ba3c9596baf16cadc76dd607a5cb1"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Dec 17 18:57:22 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 17 18:57:22 2012 -0800"
      },
      "message": "am d2a21d7f: Merge \"Fade recents thumbnail to transparent earlier.\" into jb-mr1.1-dev\n\n* commit \u0027d2a21d7fee7ba3c9596baf16cadc76dd607a5cb1\u0027:\n  Fade recents thumbnail to transparent earlier.\n"
    },
    {
      "commit": "3be73abc69eaef80c6d27169ca5f15e283a9debc",
      "tree": "e9cf02b46cc2f5e674cc93c9e0d14068d04f05b5",
      "parents": [
        "da013c48d74aae3c5723eb569ebb324a94db27f2"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Dec 17 17:21:55 2012 -0800"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Dec 17 17:35:58 2012 -0800"
      },
      "message": "Fade recents thumbnail to transparent earlier.\n\nReduce the gpu load by fading the recents thumbnail to an alpha of\n0.0 before the remaining animations are completed. When alpha hits\n0 the gpu treats the layer as hidden and can merge the remaining\nlayers in time.\n\nThis is a partial fix for 7729214.\n\nChange-Id: I9761bbd0554db6454c7eec0485be798b11672ff5\n"
    }
  ],
  "next": "0bf39c8073f662b02bf5421729522a43692c0c54"
}
