)]}'
{
  "log": [
    {
      "commit": "c623fff00c53f6002a8ec6c98cf4fdd6b1b2ad12",
      "tree": "6dea32bc92bfec73c5232dd8ddd8181164d6a54f",
      "parents": [
        "6cf32312aaee6716ffd1df7098838b08d80054e4",
        "597eec8c3d13fa68c3476b12005744c42522d960"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jan 31 17:45:56 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 31 17:45:56 2011 -0800"
      },
      "message": "Merge \"Fix keyboard hidden flag.\" into honeycomb"
    },
    {
      "commit": "6cf32312aaee6716ffd1df7098838b08d80054e4",
      "tree": "8b005ffc24e0dc2f8c8a6a2c482e2cd1b3aab837",
      "parents": [
        "122106cb9be37fb97c0315b927771ec6fcb94aa4",
        "4c3915a0f73e51d0c70d93fe5b9ed125d5739b93"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 31 17:41:09 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 31 17:41:09 2011 -0800"
      },
      "message": "Merge \"Do not check features in PackageManagerService\" into honeycomb"
    },
    {
      "commit": "597eec8c3d13fa68c3476b12005744c42522d960",
      "tree": "0fa80de753fdca2e53509ac33c793acea312a223",
      "parents": [
        "ccfcd9e813d090ec9b4390b5217b32f73dd8263d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jan 31 17:12:25 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jan 31 17:12:25 2011 -0800"
      },
      "message": "Fix keyboard hidden flag.\n\nConfiguration.hardKeyboardHidden should be set to\nHARDKEYBOARDHIDDEN_YES when no keyboard is present or when it is\ndisabled.  The code in PhoneWindowManager.adjustConfigurationLw\ndoes the right thing.  It also takes care of setting keyboardHidden\ncorrectly when only a soft keyboard is available.\n\nSo it turns out that all we need to do to disable the hard keyboard\nis to set Configuration.keyboard to KEYBOARD_NOKEYS *before* asking\nthe policy to adjust the configuration.\n\nBug: 3406101\nChange-Id: I3519d02af30d8068198cb3d6b8fdde601c2fe8b4\n"
    },
    {
      "commit": "4c3915a0f73e51d0c70d93fe5b9ed125d5739b93",
      "tree": "c2eb0fe88340b9820d32c9312a3ba422ff1bc324",
      "parents": [
        "cb9d4d28be41c72a8c6f254bf8fdaac5f41e0b6f"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jan 31 16:36:32 2011 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jan 31 16:59:12 2011 -0800"
      },
      "message": "Do not check features in PackageManagerService\n\nPackageManagerService shouldn\u0027t check features that a package declares\nthat it uses because this will cause problems in the future when we add\nmore features that older phones didn\u0027t explicitly declare. We must rely\non markets to know about phones and filter them for us to avoid this\nsituation.\n\nBug: 3409434\nChange-Id: I419a5b936be3572b83a485081a6c81b2f1c8741c\n"
    },
    {
      "commit": "4d733290a112fbe7ca5631ee870094b538f39d80",
      "tree": "139cd58c159b2e74030a6c41fb135d59595d5fe3",
      "parents": [
        "11f9647e03d4e1141bc4312626c8dc9116f1f470"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Jan 31 22:14:32 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Feb 01 09:01:58 2011 +0900"
      },
      "message": "Not to update IME when Settings version is older than the last updated version.\n\n- Check if just old version or not.\n\n- Sometimes, ContentObserver.onChange is called before finishing to save the actual value.\nThis can be verified by checking the system settings version. If the version is not updated,\ncached value will be returned from Settings.Secure, and this should not be handled.\n\nBug: 3406300\n\nChange-Id: Ie3f5b484b5574e10a41dfc209ed31271a474b828\n"
    },
    {
      "commit": "4de68baed4bf18b33dc38f89f25410d3d5edfecf",
      "tree": "c9ad4cd8efefce840dec5daec3342d3a62373e6c",
      "parents": [
        "236b9872140599d1856d48e53b8e109e506fd88f",
        "ac0ee89bd985c024870fefca9a3422c4585b62d4"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Sun Jan 30 16:00:52 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jan 30 16:00:52 2011 -0800"
      },
      "message": "Merge \"Check for the STATUS_BAR permission for the system UI properties.\" into honeycomb"
    },
    {
      "commit": "ac0ee89bd985c024870fefca9a3422c4585b62d4",
      "tree": "cce936ac79d2843f86e32d84f45e89a47dbe5336",
      "parents": [
        "f2057d907b5d9c75086337e840f70b5061b2a5aa"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Sun Jan 30 15:38:30 2011 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Sun Jan 30 15:38:30 2011 -0800"
      },
      "message": "Check for the STATUS_BAR permission for the system UI properties.\n\nIf the app doesn\u0027t have that permission, just mask out the bits.\nAlso makes the systemUiVisibility field visible in hierarchyviewer.\n\nChange-Id: Ic3d3a3aed96b5c6448832755b4b2e6175117e5be\n"
    },
    {
      "commit": "628845056282a0c5b1a212ce5aeeaac092b91ec8",
      "tree": "eac60b66d962192fbbc81b1c8ea401675483668f",
      "parents": [
        "71a22b3bc7cb4a721378ef38d43bce94f5b0e5bd",
        "2ece4cdc3fd0f8a45a889c711dba7165729e8ca5"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Sun Jan 30 15:00:44 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jan 30 15:00:44 2011 -0800"
      },
      "message": "Merge \"Reset ANativeWindow crop on buffer geometry changes.\" into honeycomb"
    },
    {
      "commit": "b2abd8c424a68eb6a5e3615a99f66c0bd46e6063",
      "tree": "ecc88a31068aa40c9244b2d88cdd06ad520fe617",
      "parents": [
        "3c89f6d1bd0821d0ae0205a5b48176156735aaac",
        "43abedde5f714beff82dbb5e94425fce6c13b8cd"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Sun Jan 30 12:40:32 2011 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Sun Jan 30 12:40:38 2011 -0800"
      },
      "message": "Mass merge from gingerbread - do not merge\n\nChange-Id: I45dc3596bf4211d8f91c64f2d1d00588878df629\n"
    },
    {
      "commit": "3c89f6d1bd0821d0ae0205a5b48176156735aaac",
      "tree": "30382e4015501f192e45c6b597a458ed038c2de5",
      "parents": [
        "e97a12e340dfdc246b531dfb49596628bd24e81b",
        "2992ea782fa61780d8e0de7a36a2a84622f8694b"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Jan 30 12:07:49 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jan 30 12:07:49 2011 -0800"
      },
      "message": "Merge \"Add \"Use physical keyboard\" option to system bar IME button.\" into honeycomb"
    },
    {
      "commit": "e97a12e340dfdc246b531dfb49596628bd24e81b",
      "tree": "e38a1f5da0889941736f2cd6f7d1f15c4000da00",
      "parents": [
        "51990f9b0c7c0a22e1a3440c620ab97ebe4209c9"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Jan 29 13:22:02 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Jan 30 10:31:30 2011 -0800"
      },
      "message": "Fix screen size compatibility mode.\n\nChange-Id: I2c06bbb586b4e54fc7ec52ec914cf95a18006217\n"
    },
    {
      "commit": "8710e76a897cd546a79ee4338a4147eeb9f3e068",
      "tree": "de4d05b8dd81598f0c653e62d956f0d907238913",
      "parents": [
        "a2e765ef1ad2cb907a4ae0a93bb15e4764ebb59a"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Sun Jan 30 11:02:09 2011 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Sun Jan 30 11:02:09 2011 +0900"
      },
      "message": "Follow up change to I741642ac\n\nFix wrong constant.\n\nbug: 3404788\nChange-Id: Ic5f849e6640a78a70951cf819d7e8ce53a9c2585\n"
    },
    {
      "commit": "a2e765ef1ad2cb907a4ae0a93bb15e4764ebb59a",
      "tree": "49a2a76be9d8aa05ac82549ba252ee67d666ad48",
      "parents": [
        "e40dea0d06ec1c04db80191fd2965363b4fac781",
        "f7b3cd4efd40b7631f36ea014407a850f7dc637e"
      ],
      "author": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Sat Jan 29 12:02:19 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 29 12:02:19 2011 -0800"
      },
      "message": "Merge \"Update the encryption password when the device password is changed.\" into honeycomb"
    },
    {
      "commit": "80838d256d79400f126bc9110e50274c439607fd",
      "tree": "2e3bdb76e59a87f0d5d30759e789ca12408459e2",
      "parents": [
        "a8d5dbbccdbd989e96669fdcbdb75374ed2799f4",
        "0ef579939e6c96fcd2b42b164c5debf535a6a53b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Sat Jan 29 11:03:55 2011 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Sat Jan 29 11:04:41 2011 -0800"
      },
      "message": "Merge 0ef57993 from gingerbread\n\nChange-Id: If10fee1ae387a8130356dd62fe678495402d5edf\n"
    },
    {
      "commit": "c68a657f128a2d5afda855c9698fd5ac186866df",
      "tree": "8245ae3e8296c73db4b26c0b88982537a0c30c92",
      "parents": [
        "593dadd68353a6d28fe12d2188cdd7fc00c76a24",
        "138757db4f19cb626ef5c1d371d4fca004304a08"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sat Jan 29 09:48:07 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Jan 29 09:48:07 2011 -0800"
      },
      "message": "am 138757db: Merge \"Make OBB results a one-way call\" into gingerbread\n\n* commit \u0027138757db4f19cb626ef5c1d371d4fca004304a08\u0027:\n  Make OBB results a one-way call\n"
    },
    {
      "commit": "e40dea0d06ec1c04db80191fd2965363b4fac781",
      "tree": "b788e2017fbf344487420af304d5415c08929e9a",
      "parents": [
        "19eecb028fe094e5f41d9ddeb1e6aac1d096da43"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Sun Jan 30 01:14:02 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Sun Jan 30 02:03:48 2011 +0900"
      },
      "message": "Fix a bug that IME switch disappiers at switching IME subtype.\n\nBug: 3404788\n\nChange-Id: I741642ac690a1b4c6ca1225ee271bffe39164170\n"
    },
    {
      "commit": "2992ea782fa61780d8e0de7a36a2a84622f8694b",
      "tree": "9b783448b055ff8ca6ff5b466d2a6322d363c5e2",
      "parents": [
        "f597f750392a26e1bc33430ff52e2dd3674c875b"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 28 22:04:14 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 28 22:06:36 2011 -0800"
      },
      "message": "Add \"Use physical keyboard\" option to system bar IME button.\n\nBug: 3391067\nChange-Id: I136087ca4f726d0068d5983d7d3686787ba60c55\n"
    },
    {
      "commit": "231da079c93664fa7d81c7e957990f17a6334b17",
      "tree": "e2543dc1d188ec5cfbbb50c8f33ac025810a981e",
      "parents": [
        "bd08c7c0c99fa84dbf3c043f4e6dff07320410b7",
        "1723b049c60a298e9016f40bbbaa13ca8fe69b65"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jan 28 18:38:58 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 28 18:38:58 2011 -0800"
      },
      "message": "Merge \"fix [3389263] OMX.Nvidia.h264.decode fails to shutdown\" into honeycomb"
    },
    {
      "commit": "1723b049c60a298e9016f40bbbaa13ca8fe69b65",
      "tree": "d131eec0d780382c361a8164e214b4466e567a79",
      "parents": [
        "10e4148b62c9bfed945c1bcea9dd5eea2a17b0d0"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jan 28 18:23:24 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jan 28 18:23:24 2011 -0800"
      },
      "message": "fix [3389263] OMX.Nvidia.h264.decode fails to shutdown\n\nWe were still destroying an ANativeWindow\u0027s buffer pretty soon\nafter it was removed from the window manager. This time\nwe really wait for the ISurace to go away.\n\nChange-Id: I329273fedaeef76ee92836f6180c2c3808389330\n"
    },
    {
      "commit": "2ece4cdc3fd0f8a45a889c711dba7165729e8ca5",
      "tree": "a76c7f3eed692edcce369a6ae198202fdd1c7500",
      "parents": [
        "0982dc6488a921d9d54d23b9180a9acf33c61526"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jan 28 18:21:54 2011 -0800"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Fri Jan 28 18:21:54 2011 -0800"
      },
      "message": "Reset ANativeWindow crop on buffer geometry changes.\n\nThis changes the ANativeWindow API and the two implementations to reset\nthe window\u0027s crop rectangle to be uncropped when the window\u0027s buffer\ngeometry is changed.\n\nBug: 3359604\nChange-Id: I64283dc8382ae687787ec0bebe6a5d5b4a0dcd6b\n"
    },
    {
      "commit": "739f6bc675c0caa11a1d46b18de24e6c884f723a",
      "tree": "253a4925628285060141b1285094285065988a8a",
      "parents": [
        "430dde3ef3b9b82bfca4ae51e225c6ad88aee514"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jan 28 16:43:12 2011 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jan 28 17:01:29 2011 -0800"
      },
      "message": "Keep never as the default wifi sleep settings\n\nBug: 3404049\nChange-Id: I824b8cb7b28223cfb4eb89cabc7cb237a4e1e6db\n"
    },
    {
      "commit": "cfd0bafdebf1fccd3f5a0baed5cad8a539546e9b",
      "tree": "124bf95ae0258ca0eeacb95083857ae3fcb5b301",
      "parents": [
        "94eb3d0f7e77eb94c9fee8523c013fbc0f9032c4",
        "4671ce56cd041be7ade960d244753a739d2c08f2"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Jan 28 13:40:45 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 28 13:40:45 2011 -0800"
      },
      "message": "Merge changes Iaa7bc042,Icc312fc9,I50ba06ed into honeycomb\n\n* changes:\n  Make keyguard also ask to turn the back button off, now that it is controlled separately.\n  Allow independent control of the back and the other navigation buttons.\n  Allow the status bar disable flags to be used as View\u0027s system ui visibility fields.\n"
    },
    {
      "commit": "94eb3d0f7e77eb94c9fee8523c013fbc0f9032c4",
      "tree": "5fb8f6f49ea195e23a621c3578283a12e0d45744",
      "parents": [
        "10e4148b62c9bfed945c1bcea9dd5eea2a17b0d0",
        "857fd9b8562c29913e03ed29288bd1802d37dc60"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Jan 28 13:40:28 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 28 13:40:28 2011 -0800"
      },
      "message": "Merge \"Plumb whether an input view is actually visible or not through from the IME to the status bar.\" into honeycomb"
    },
    {
      "commit": "420829ef78c5d86e470fc445279c7c10be6b5dbe",
      "tree": "561954431672600b668579be3c66901f2ad6b0d6",
      "parents": [
        "256a09b2fa5cc06775818428de771c7957403452"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 28 11:30:35 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 28 12:21:54 2011 -0800"
      },
      "message": "Fix issue #3291173: Problem report for NewsRoom - RSS News Reader\n\nThe framework had started using the LayoutInflator\u0027s factory\nfor itself, which breaks apps that want to use it.  Add a hack for\nthe framework to insert its own private factory.\n\nAlso fix a deadlock in the system process.\n\nChange-Id: Iaf80186a5d7e4029faf89e968e184abdaabe514a\n"
    },
    {
      "commit": "f7b3cd4efd40b7631f36ea014407a850f7dc637e",
      "tree": "cc2a86833ffd52163560191a5ea8461aa37ee6c5",
      "parents": [
        "47db84cca867c5efdd4760cdf451a9c402097668"
      ],
      "author": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Thu Jan 27 09:28:25 2011 -0600"
      },
      "committer": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Fri Jan 28 13:52:37 2011 -0600"
      },
      "message": "Update the encryption password when the device password is changed.\n\n* Added changeEncryptionPassword() to the MountService.\n* Update LockPatternUtils to call changeEncryptionPassword()\n  when the password is changed.\n\nNote we only require the new password to change the\nencryption password.\n\nBug: 3382129\nChange-Id: I26a7e919e325e75e22fa4290da0a8b1b57b55a80\n"
    },
    {
      "commit": "256a09b2fa5cc06775818428de771c7957403452",
      "tree": "85dc47f0d1f07ec4f92c780da4edb1b1c41f7109",
      "parents": [
        "d23316bc8b49f269e5adcc91eae5698549faa0a3",
        "e75d87266b59fc76cfb1b9bbc9a4734b8fd1664f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 27 22:48:58 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 27 22:48:58 2011 -0800"
      },
      "message": "Merge \"Fix issue #3392073: At times soft keyboard comes up in...\" into honeycomb"
    },
    {
      "commit": "e75d87266b59fc76cfb1b9bbc9a4734b8fd1664f",
      "tree": "ae73c7cc248d11204cc4057e77574bf466d1f0c0",
      "parents": [
        "e31ecf61042171242e6f31f22df7691c40f189b2"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 27 19:37:40 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 27 21:56:33 2011 -0800"
      },
      "message": "Fix issue #3392073: At times soft keyboard comes up in...\n\n...gallery while attaching picture to gmail message\n\nIn various places we could block switching the IME target incorrectly.\n\nChange-Id: I7e647fb35f4ea6f2e39eb7efd911420ea9ee64fa\n"
    },
    {
      "commit": "7bb8eeb90cf55f409a282c1f36ca08aa48c10543",
      "tree": "b31770a3b19b5206ced7152b4794423fd7345b22",
      "parents": [
        "857fd9b8562c29913e03ed29288bd1802d37dc60"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Jan 27 16:00:58 2011 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Jan 27 21:41:24 2011 -0800"
      },
      "message": "Allow the status bar disable flags to be used as View\u0027s system ui visibility fields.\n\nBug: 3363046\nChange-Id: I50ba06ed9a4d2f5d0e0c807437aea9900f44fee9\n"
    },
    {
      "commit": "857fd9b8562c29913e03ed29288bd1802d37dc60",
      "tree": "52ba5103ba8cb5c75c0734a5cc118f3a8de63daa",
      "parents": [
        "e31ecf61042171242e6f31f22df7691c40f189b2"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Jan 27 15:08:35 2011 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Jan 27 21:19:46 2011 -0800"
      },
      "message": "Plumb whether an input view is actually visible or not through from the IME\nto the status bar.\n\nBug: 3391067\nChange-Id: I049531155bf7ee0b29874916c0b5b0a45b73c09e\n"
    },
    {
      "commit": "83a6f450bde23e1bfd07ee1c218dab35053dec76",
      "tree": "98be4fbf1fe77956ade107e3a3648fc9ef3cce4b",
      "parents": [
        "eea200a96a561d8eb9e26831aa6aaf7ddf6ad5a5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 27 17:17:19 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jan 27 17:17:19 2011 -0800"
      },
      "message": "Maybe fix issue #3358322: Status and nav bar died while watching youtube\n\nOr at least make it better.  Now if we get a failure locking the surface,\nwe mark to do a full relayout pass later to try to get a new good surface.\n\nAlso fix some bugs in how activity manager was classifying processes for\ntheir OOM adjustment to make better choices in what to kill.\n\nChange-Id: I8e4aa86744211ba7693f9828291d8bbf2698274f\n"
    },
    {
      "commit": "111df679afd212115bff88481874715d98b04cdf",
      "tree": "c7a7c8091f96985e2bb685a200cee073572b0d21",
      "parents": [
        "ba3dd32357b47ab0b55a1976bbafc225df78a59d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 27 11:32:34 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 27 11:32:34 2011 -0800"
      },
      "message": "Fix issue 2988031.\n\nLimit SYSTEM stream volume when a headset is connected and music is playing.\n\nChange-Id: Ieb44ae5bb53ffa9cd5fe8e317798eed279b78df8\n"
    },
    {
      "commit": "13a8f2a59c063b988502de9b7197d83b5db487d9",
      "tree": "bea1569be99e7cacf8f824ea0d1e6136c1122825",
      "parents": [
        "0f2e2b8b82c7b589bcc603ce57f8ff3d1c947784",
        "9f7a0b2b0270b1ad59d2103839b1d4b02f910a90"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jan 26 17:29:32 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 26 17:29:32 2011 -0800"
      },
      "message": "Merge \"Comment out the isAvailable optimization.\" into honeycomb"
    },
    {
      "commit": "8c0ac8708761872082c75aedc5fa4b25d1286fd0",
      "tree": "fb35928328775ac51b4ac895da6195cfce2598fc",
      "parents": [
        "2d63144ed94dff0832d051ec355f56649244dd4e",
        "428ecb65b52438e390d48b98d649b1dbb29bb28d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 26 16:27:40 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 26 16:27:40 2011 -0800"
      },
      "message": "Merge \"Fix another part of #3387855: Menu flashes on left side of screen\" into honeycomb"
    },
    {
      "commit": "428ecb65b52438e390d48b98d649b1dbb29bb28d",
      "tree": "2b356063220561175226975163dbaa140535cf58",
      "parents": [
        "66a9f48bbf9c2dfc25c1e520fcc05e3d5c2abe84"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 26 14:53:23 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 26 16:26:48 2011 -0800"
      },
      "message": "Fix another part of #3387855: Menu flashes on left side of screen\n\nWhen task switching while dialog windows were up, the exit animation\nwouldn\u0027t be seen.  The animation needs to force Z-order its windows\nto the top.\n\nAlso fix a bug where the lock screen fade-out was immediately\nZ-ordering the wallpaper to the bottom if the activity behind was\nnot on top of the wallpaper.\n\nChange-Id: Icd45cd8ccfff9829822c1682931413246eb9601b\n"
    },
    {
      "commit": "2d63144ed94dff0832d051ec355f56649244dd4e",
      "tree": "dc7eb583c7d72598f57aad40e9d94f58bae18899",
      "parents": [
        "278a04eb7a56459c2f9e3b47dcced6522a87f1d1",
        "57f1ac41337b019f6ad568769264ec519f917cf7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 26 16:25:49 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 26 16:25:49 2011 -0800"
      },
      "message": "Merge \"Fix issue #3380072: Switching in and out of gmail not preserving position in label\" into honeycomb"
    },
    {
      "commit": "9f7a0b2b0270b1ad59d2103839b1d4b02f910a90",
      "tree": "cecaaa03abf30098f6fdfa1f48c64221c05a7b64",
      "parents": [
        "373d357a8b13dc2cdc82d9e1d6144fb26e3bb202"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jan 26 15:43:49 2011 -0800"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jan 26 15:43:49 2011 -0800"
      },
      "message": "Comment out the isAvailable optimization.\n\nAs the comment says this causes problems if the connection\nis handling errors. This removes the optimization for now.\n\nBug: 3386481\nChange-Id: I6cb00abe8b1949e9b79b4906a6bdab5872b5054d\n"
    },
    {
      "commit": "57f1ac41337b019f6ad568769264ec519f917cf7",
      "tree": "dc82fd33cb98c9a7677186ecbe6dfaa86826f1c5",
      "parents": [
        "66a9f48bbf9c2dfc25c1e520fcc05e3d5c2abe84"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 26 13:28:16 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 26 13:28:16 2011 -0800"
      },
      "message": "Fix issue #3380072: Switching in and out of gmail not preserving position in label\n\nWe were doubly-decreasing the task\u0027s activity count, so when selected\nfrom recent tasks it would re-launch the last Intent rather than\nswitching to its current state.\n\nChange-Id: I6e58c930a0755ae0142604d42b5cd2c668a2b492\n"
    },
    {
      "commit": "a0f40033c03a0b64538bf1c22f83d3c9a325ff87",
      "tree": "9a9385bf9ff3f266c08ef60f4aa2e4674975d111",
      "parents": [
        "2c070bae4493cd1976c5086ec4cbf6ce10482742",
        "d35c6667c8233385f31aa203f486b2cb826bf6be"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jan 26 12:41:02 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 26 12:41:02 2011 -0800"
      },
      "message": "Merge \"fix [3385504] Surface flinger hang when adding dim surface\" into honeycomb"
    },
    {
      "commit": "2c070bae4493cd1976c5086ec4cbf6ce10482742",
      "tree": "2ced53244db2f66e13700581be425135d05ad17a",
      "parents": [
        "e9b644fcef08b0716efd3843ca7152e75cde3447",
        "16c8d8a558f94ec14ef52bb5ac11044e2d0d902c"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Wed Jan 26 12:30:26 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 26 12:30:26 2011 -0800"
      },
      "message": "Merge \"Re-enabling queued unbinding of services after requests to the service. (3394210)\" into honeycomb"
    },
    {
      "commit": "16c8d8a558f94ec14ef52bb5ac11044e2d0d902c",
      "tree": "a93705ea69ec4682b420b55534e7bf26a85924cc",
      "parents": [
        "5dcc9bd7261d6b19135bf972cf603b355b5316f4"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Thu Jan 20 16:19:33 2011 -0800"
      },
      "committer": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Wed Jan 26 12:09:27 2011 -0800"
      },
      "message": "Re-enabling queued unbinding of services after requests to the service. (3394210)\n\n- Fix for crash when detaching from window\n- Potential fix for occasional IllegalStateException when updating List based widgets\n\nChange-Id: I3d3f2bb691552a1136111043db686c4926b510c6\n"
    },
    {
      "commit": "2ba92c71b5684dce700cf848bf157153c156df1d",
      "tree": "4a5fd1c92f47a6557552adbb65898c35866d9662",
      "parents": [
        "138757db4f19cb626ef5c1d371d4fca004304a08"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Nov 15 12:11:32 2010 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jan 26 11:20:01 2011 -0800"
      },
      "message": "do not merge bug 3370834 Cherrypick from master\n\nCherripick from master CL 79833, 79417, 78864, 80332, 87500\n\nAdd new audio mode and recording source for audio communications\n other than telelphony.\n\nThe audio mode MODE_IN_CALL signals the system the device a phone\n call is currently underway. There was no way for audio video\n chat or VoIP applications to signal a call is underway, but not\n using the telephony resources. This change introduces a new mode\n to address this. Changes in other parts of the system (java\n and native) are required to take this new mode into account.\nThe generic AudioPolicyManager is updated to not use its phone\n state variable directly, but to use two new convenience methods,\n isInCall() and isStateInCall(int) instead.\n\nAdd a recording source used to designate a recording stream for\nvoice communications such as VoIP.\n\nUpdate the platform-independent audio policy manager to pass the\n nature of the audio recording source to the audio policy client\n interface through the AudioPolicyClientInterface::setParameters()\n method.\n\nSIP calls should set the audio mode to MODE_IN_COMMUNICATION,\n Audio mode MODE_IN_CALL is reserved for telephony.\n\nSIP: Enable built-in echo canceler if available.\n1. Always initialize AudioRecord with VOICE_COMMUNICATION.\n2. If echo canceler is available, disable our echo suppressor.\n\nNote that this CL is intentionally not correcting the\n getAudioSourceMax() return value in MediaRecorder.java as the\n new source is hidden here.\n\nChange-Id: Ie68cd03c50553101aa2ad838fe9459b2cf151bc8\n"
    },
    {
      "commit": "f4b2c0422cdb7496195707a9c8e92a328387195c",
      "tree": "cbb2a405d21a3b420155e5256e32579e8a5abc66",
      "parents": [
        "72cadd2b447db43da6532e9f9005fc6cba8854af",
        "91c459ec7dba6d56816ff5cbd92c627e0f718915"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jan 26 11:00:20 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 26 11:00:20 2011 -0800"
      },
      "message": "am 91c459ec: Copy user info from PackageSetting as well\n\n* commit \u002791c459ec7dba6d56816ff5cbd92c627e0f718915\u0027:\n  Copy user info from PackageSetting as well\n"
    },
    {
      "commit": "55bf3809b98dad0b8268804e684d63ea59124148",
      "tree": "923efd45edc8354265fbb95eecd3538f48531da5",
      "parents": [
        "644f9c3ad93f6674abff4143b78404cd222b5e30"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Jan 25 13:42:10 2011 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Jan 26 10:32:18 2011 -0800"
      },
      "message": "Make TabletStatusBar call into StatusBarManagerService when it goes out of lights out mode on its\nown.\n\nBug: 3241144\nChange-Id: Id09437a4f32f1d64daa7ae65e41c99897b5964d7\n"
    },
    {
      "commit": "644f9c3ad93f6674abff4143b78404cd222b5e30",
      "tree": "a3d1ef8e1a04c9afc4c6efb448858604164dcfac",
      "parents": [
        "d8b525c398aeda1f583ed4ed90450e0a0fc9b6ef"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Jan 25 12:06:23 2011 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Jan 26 10:32:18 2011 -0800"
      },
      "message": "Make FLAG_FULLSCREEN not go into lights out mode anymore.\n\nChange-Id: I4a0aa8789f537717f82df4efb6a35108e1ab1784\n"
    },
    {
      "commit": "138757db4f19cb626ef5c1d371d4fca004304a08",
      "tree": "d761d5d2fdb1200da1f849775aa525f2a0d97aac",
      "parents": [
        "c33acae9060162c5d2c28613b71c3bb1e0ef4c1c",
        "b7db2726e91f1d9480359d0f83b9cb7769906b34"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jan 26 09:17:28 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 26 09:17:28 2011 -0800"
      },
      "message": "Merge \"Make OBB results a one-way call\" into gingerbread"
    },
    {
      "commit": "d35c6667c8233385f31aa203f486b2cb826bf6be",
      "tree": "7e565ff5bc3df082b597ecd9d8f94bbff6a374e9",
      "parents": [
        "2aaa776429f58069e25c8160a9e5b9a969f6e993"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jan 25 20:17:45 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jan 25 20:52:46 2011 -0800"
      },
      "message": "fix [3385504] Surface flinger hang when adding dim surface\n\nChange-Id: I8e0cda414bcad5854d2ca5dde8370bfd8b2e5ea4\n"
    },
    {
      "commit": "1b0cee368b35262a8de49c7a3c28e12195817533",
      "tree": "aa9cc46711f2ba7f5ea12325450afd899d1f45f9",
      "parents": [
        "b1e0a870e4099490127bb917bb4fc7a8f48db893",
        "7fe57bfa0d2de6bd711b05c5fea17c2b980a4b1e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Jan 25 18:18:10 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 25 18:18:10 2011 -0800"
      },
      "message": "Merge \"Disable mouse support.  (DO NOT MERGE)\" into honeycomb"
    },
    {
      "commit": "7fe57bfa0d2de6bd711b05c5fea17c2b980a4b1e",
      "tree": "519cc773150b581f90edec3f877bfc978e5992d6",
      "parents": [
        "b8942108826893657ca0b8b6d5d6d153739a76f6"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Jan 25 17:52:01 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Jan 25 17:52:01 2011 -0800"
      },
      "message": "Disable mouse support.  (DO NOT MERGE)\n\nChange-Id: Ica9703a18195079d227caff8c2389c750559f3d0\n"
    },
    {
      "commit": "b7db2726e91f1d9480359d0f83b9cb7769906b34",
      "tree": "2809e6d70848dae6a4d5d649c6b44efc0da344eb",
      "parents": [
        "c929677e017759047d94599faa1b80ebe278fefb"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jan 25 16:39:35 2011 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jan 25 17:29:59 2011 -0800"
      },
      "message": "Make OBB results a one-way call\n\nOBB result back to an application needs to be a one-way binder call.\n\nBug: 3353699\nChange-Id: I0e625914d18a001c2fa9d764ea6463f34cf96743\n"
    },
    {
      "commit": "58a2da843f2f22f406df8df1f011738eb8b7fcb1",
      "tree": "716c12630d5d9fe98e29e197287dc950eaa4a01c",
      "parents": [
        "30bc34f191ca8a009af313fc751e5b4bff6e39a1"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Jan 25 16:02:22 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Jan 25 16:02:22 2011 -0800"
      },
      "message": "Fix crashes caused by some input devices.\n\nThe touch screen sometimes reports more than 10 pointers even though that\u0027s\nall we asked for.  When this happens, we start dropping events with more\nthan 10 pointers.  This confuses applications and causes them to crash.\nRaised the limit to 16 pointers.\nBug: 3331247\n\nThe default behavior was to identify all touch devices as touch screens.\nExternal devices that are plugged in are more likely to be touch pads\nnot attached to a screen.  Changed the default to be a touch pad\nand renamed some internal constants to avoid confusion.\n\nA certain mouse happens to also behave like a touch pad.  That caused\nproblems because we would see multiple concurrent traces of motion events\ncoming from the same input device so we would batch them up.\nAdded code to ensure that we don\u0027t batch events unless they come from\nthe same *source* in addition to coming from the same *device*.\n\nDue to batching or misbehaving drivers, it\u0027s possible for the set of\npointer ids to be different from what we expect when it comes time to\nsplit motion events across windows.  As a result, we can generate motion\nevents with 0 pointers.  When we try to deliver those events, we cause\nan error in the InputTransport so we tear down the InputChannel and kill\nthe application.\nAdded code to check out assumption about pointer ids and drop the\nevent gracefully instead.\n\nPatched up the tests to take into account the change in default behavior\nfor identifying touch screens and touch pads.\n\nChange-Id: Ic364bd4cb4cc6335d4a1213a26d6bdadc7e33505\n"
    },
    {
      "commit": "21956040a77808909ebda426fbd3cce6c8ed059f",
      "tree": "caef5eb4375780074435043e54323cd256c07dfc",
      "parents": [
        "68d3478860fecc9b8fbf256796a832a037434555"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jan 18 15:51:30 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jan 25 14:19:13 2011 -0800"
      },
      "message": "fix [3361121] hang in glClear() - device unresponsive, OTA fails (DO NOT MERGE)\n\nGenerally we never want to lock a buffer for write access if it is at\nthe \"head\" on the surfaceflinger side. The only exception (1) is when\nthe buffer is not currently in use AND there is at least one queued\nbuffer -- in which case, SurfaceFlinger will never use said buffer\nanymore, because on the next composition around, it will be able to\nretire the first queued buffer.\n\nThe logic above relies on SurfaceFlinger always retiring\nand locking a buffer before composition -- unfortunately this\ndidn\u0027t happen during a screenshot.\n\nThis could leave us in a situation where a buffer is locked by the\napplication for write, and used by SurfaceFlinger for texturing,\ncausing a hang.\n\nHere, we fix this issue by never assuming the exception (1), it was\nintended as an optimization allowing ANativeWindow::lockBuffer() to\nreturn sooner and was justified when most of SF composition was\ndone in software. The actual buffer locking is now ensured by\ngralloc. We could have handled screenshots in a similar way to\na regular composition, but it could have caused glitches on screen,\nessentially, taking a screenshot could cause to skip a frame.\n\nnow that we removed the notion of a \"inUse\" buffer in surfaceflinger\na lot of code can be simplified / removed.\n\nnoteworthy, the whole concept of \"unlockClient\" wrt. \"compositionComplete\"\nis also gone.\n"
    },
    {
      "commit": "68d3478860fecc9b8fbf256796a832a037434555",
      "tree": "1672d4b5edd7658c9a32b3bd2d933206e971a8b7",
      "parents": [
        "8aa11d82f33be8089a53feb3ba3c40fd8a33ad95"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jan 14 17:37:42 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jan 25 14:19:13 2011 -0800"
      },
      "message": "partially fix [3306150] HTML5 video with H/W acceleration blackout (DO NOT MERGE)\n\nWe used to guarantee that a layer in SurfaceFlinger would never be\ndestroyed before all references (to its ISurface) on the client\nside would be released. At some point, this guarantee got\nrelaxed to allow to free gralloc resources sooner. This last\nchange was incorrect, because:\n- in implementations with reference-counting the gralloc resources\nwouldn\u0027t be released anyways, until all the mapping were gone\n- in implementations without ref counting, the client side\nwould most likely crash or do something bad\n- it also caused the SharedBufferStack slot to be reallocated\nto another surface, which could be problematic if the client\ncontinued to use the surface after the window manager destroyed it.\n\nSo, we essentially reinstate the guarantee that layers won\u0027t be\ndestroyed until after all references to their ISurface are\nreleased.\n\nNOTE: This doesn\u0027t entirely fix 3306150 because there is another\nproblem there where the Browser continues to use a surface after it\nhas been destroyed.\n\nalso improve SurfaceFlinger \u0027dumpsys\u0027 log\n\nlist the purgatory, which shows windows that have been closed,\nbut for which the client still has references.\n"
    },
    {
      "commit": "8aa11d82f33be8089a53feb3ba3c40fd8a33ad95",
      "tree": "c29f00cc241a54b4f1eba03cdf23aab6982057a7",
      "parents": [
        "84c6f5a44c431a36a9e4395a7e23ab26480ba689"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Dec 16 18:46:17 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jan 25 14:18:58 2011 -0800"
      },
      "message": "fix a small bug that caused screenshot to show garbage in some cases (DO NOT MERGE)\n\nwe were not clearing the screen entirely, which caused garbage when\nthe screen wasn\u0027t entirely covered by windows.\n\nChange-Id: Ia7aa13c36a8a314e0e8427d419b16b9aa2165ddf\n"
    },
    {
      "commit": "84c6f5a44c431a36a9e4395a7e23ab26480ba689",
      "tree": "659eacdd03cc6e2b5d46c43db2333a4289faef43",
      "parents": [
        "728d849fc92bbf9b3bfd8c3903344ff58f3d5d06"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Dec 15 14:41:59 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jan 25 14:18:29 2011 -0800"
      },
      "message": "workaround [3201922] display not on: log full of gralloc errors (DO NOT MERGE)\n\nwe make sure to call compositionComplete after everytime we do\ncomposition with the GPU (even for the screenshot case), which is\nwhere the buffer locks are released.\n\nChange-Id: I450430d1e4d1ee9ce1023970642378c42cdcfa4c\n"
    },
    {
      "commit": "728d849fc92bbf9b3bfd8c3903344ff58f3d5d06",
      "tree": "59811b37615d1e4d7c227b71cd3a378206449cb0",
      "parents": [
        "c929677e017759047d94599faa1b80ebe278fefb"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Dec 13 16:47:31 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jan 25 14:18:15 2011 -0800"
      },
      "message": "minor clean-up. SurfaceFlinger doesn\u0027t need libpixelflinger.so. (DO NOT MERGE)\n\nChange-Id: I1ddbbbec4fa5b2521ef3787bc28efe1bc90d0060\n"
    },
    {
      "commit": "d14239a2fb12d775f7b2345286d36ac02234e0a7",
      "tree": "2347050bd15ede0f1b6b15f65fd7602691d52e66",
      "parents": [
        "c1e7f2d371aa6c2aa9ed3207689cb53a1f704cbc",
        "05d8936f275762bab0d66c6337e352388c8eeee0"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Jan 25 10:27:51 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 25 10:27:51 2011 -0800"
      },
      "message": "Merge \"Fix tethering when switching default connection\" into honeycomb"
    },
    {
      "commit": "c445bcd0bce630948ee029d7c70b28226f0b6c9c",
      "tree": "5b5c2963b28df9fa65b3740c532e2ab19579e4d8",
      "parents": [
        "4989aa7da319e4fcf95a92c4a2d6f2cf1ed6d563"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jan 25 18:57:24 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Jan 26 00:49:51 2011 +0900"
      },
      "message": "Fix the return value of switch to last ime.\n\nChange-Id: I5fe8cc696433a7ee72973d16d8f121d3362ab0e0\n"
    },
    {
      "commit": "5d9d03a0234faa3cffd11502f973057045cafe82",
      "tree": "7dbde1fb5e09b2d77ac5249f14591e8f958f046a",
      "parents": [
        "169fafe6797dc4c7ae17eba29b72034be6c9c8ec"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 24 13:15:09 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 24 21:23:03 2011 -0800"
      },
      "message": "Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException...\n\n...Invalid index 0, size is 0 at\nandroid.app.ActivityThread.performPauseActivity(ActivityThread.java:2326)\n\nIt looks like if an arrow key is dispatched between the time the\nlist view is told its data set has changed and it does the resulting\nlayout pass, we could try to move the position to a now invalid\nindex.  This may prevent that from happening.\n\nAlso put in a better error message if saving state of a fragment\nwhose target is no longer in the fragment manager.\n\nAnd fix a bug in PackageManager where we could return a null from\nqueryIntentActivities().\n\nAnd add a new API to find out whether a fragment is being removed,\nto help fix issue #3306021: NPE at\nandroid.app.AlertDialog.getDefaultDialogTheme(AlertDialog.java)\n\nNext, for new HC apps we can delay committing data to\nstorage until the activity is stopped.\n\nFinally, use the new multi-threaded AyncTask executor in a few\nplaces, so we don\u0027t have worked blocked by long-running tasks from\nthe application.\n\nChange-Id: I27b2aafedf2e1bf3a2316309889613fa539760f3\n"
    },
    {
      "commit": "3431f47b47436210d441befb39f2d011b00bcdf2",
      "tree": "188e862b987b578b21d1f1b40a4301c2761a1080",
      "parents": [
        "d2d31dadb02b45bf938761bfb6264dc599d81b3d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jan 24 18:13:54 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jan 24 18:13:54 2011 -0800"
      },
      "message": "tone down the log spew regarding taking screenshots.\n\nChange-Id: I673806bda23eba6aab25f7505b7e0170afc9920b\n"
    },
    {
      "commit": "2e44b0788f450f06c0d4e3b8dc26aff43ead587d",
      "tree": "38df24e89f2bb05918cfcb0aa8b53b723fb16cec",
      "parents": [
        "aaa55d3f45744814907d0809befb49281ced462e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jan 24 15:21:56 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jan 24 16:44:18 2011 -0800"
      },
      "message": "Fix regression setting input windows.\n\nChange-Id: I24d58a02f69ae40f03b133d487354a883585e93e\n"
    },
    {
      "commit": "57ffc00239edcfe733832771e1429fca20182207",
      "tree": "1698e6deb57a849aac26d3a39a2ed55a03918836",
      "parents": [
        "9c265fcc846699050bee169f60defff4f5a73b5c"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jan 25 00:11:47 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jan 25 00:52:53 2011 +0900"
      },
      "message": "Add a way that subtype will be excluded from a last input method\n\nBug: 3382702\n\n- Added SUBTYPE_EXTRAVALUE_EXCLUDE_FROM_LAST_IME and if subtype has this extra value,\nIt will be excluded from a last input method which will be called from switchToLastInputMethod\n\nChange-Id: I03ae10e07f978dcc3a83dd77b10613048dce7f22\n"
    },
    {
      "commit": "4c541b1303b0ee2b9b0d19bee85d3780c5c4c110",
      "tree": "74f17a86f6b48fa5b0fa579b206611b6512d161e",
      "parents": [
        "2bed570bba183249c6ca9ca1151d1d23808de8c1",
        "664644d9e012aa2a28ac96f305b1ce6499ec8806"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Sun Jan 23 19:26:13 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jan 23 19:26:13 2011 -0800"
      },
      "message": "Merge \"visibility (\"lights out\") API.\" into honeycomb"
    },
    {
      "commit": "664644d9e012aa2a28ac96f305b1ce6499ec8806",
      "tree": "d8db43b09de516fefd82adf4fc4ec22417dda648",
      "parents": [
        "fac86056b285bf59c1c3e774f1cb9f6de0be59ba"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Sun Jan 23 17:53:23 2011 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Sun Jan 23 19:22:52 2011 -0800"
      },
      "message": "visibility (\"lights out\") API.\n\n1. Views may setSystemUiVisibility() to recommend that\nthe system chrome (status bar or other UI) show or hide\nitself.  (This functionality was previously available only\nvia the FLAG_FULLSCREEN window flag for some SystemUI\nimplementations.)\n\n2. Views may register a OnSystemUiVisibilityChangedListener\non a view, and find out when the system UI actually\nappears or disappears, allowing apps to coordinate the\nappearance of their own UI if desired.\n\nBug: 3241144\nChange-Id: Ia1758d94099182d49a1e3688ea2738ae4995b829\n"
    },
    {
      "commit": "89ba6750e5310c4da51786bd7eb559a43cab3982",
      "tree": "ae4cd499a4b566ce03ea6fa32d96ba424293d2c2",
      "parents": [
        "9d97b63d0e0c7c9deb2d140c1dd579b51f52c1af"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Jan 23 16:51:16 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Jan 23 17:35:08 2011 -0800"
      },
      "message": "Fix issue #3215261: NPE in WiFi Settings\n\nAnd also fix #3343369: EGL_BAD_DISPLAY and/or broadcast intent\nTIME_SET before boot completion\n\nAnd a few more tweaks to animations to keep the wallpaper displayed\nwhen needed.\n\nAnd make more use of the drag and drop \"rotation disabled\" thing to\nalso use it while animating the screen rotation, since if we try to\nstart a new rotation while doing the animation we end up with a mess.\n\nChange-Id: I373af305a6e23a92835abed96229a83e173f67ce\n"
    },
    {
      "commit": "05d8936f275762bab0d66c6337e352388c8eeee0",
      "tree": "44d9018f036719a92730455496c696771aa67f40",
      "parents": [
        "9d97b63d0e0c7c9deb2d140c1dd579b51f52c1af"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Sun Jan 23 16:04:05 2011 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Sun Jan 23 16:04:05 2011 -0800"
      },
      "message": "Fix tethering when switching default connection\n\nIf the default connection is suitable use that rather than a random interface.\nThis permits us to deterministically switch back to wifi after hanging out on\nDUN APN.\n\nbug:3374236\nChange-Id: Iee5137b9f09c358f262e7a62f20282e79f7d889f\n"
    },
    {
      "commit": "c9ce1f24df4c50e27ffe50495aef968e6cbe7f6f",
      "tree": "40bd1c2d23d284fe531daf632c572466b46acff5",
      "parents": [
        "f41806799ad70085722dd7d11e3f8043109290bf",
        "fbae722d2a4e3f606a101a118b1b506dc6ecc29b"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Jan 23 13:39:10 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jan 23 13:39:10 2011 -0800"
      },
      "message": "Merge \"Fix spurious resizes during rotation animation.\" into honeycomb"
    },
    {
      "commit": "fbae722d2a4e3f606a101a118b1b506dc6ecc29b",
      "tree": "8ebbaedfbae55bc7aa49c5b52d6f31777042ad5d",
      "parents": [
        "892bd76881e2df9b4915a30144efc5428f7ab5a3"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Jan 23 13:07:25 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Jan 23 13:07:25 2011 -0800"
      },
      "message": "Fix spurious resizes during rotation animation.\n\nFixed a bug in WindowManagerService where it would set mSurfaceResized\nto true even if the surface was just moved and not resized.  As a result,\nwe would send dozens of spurious resize messages to all applications\nduring orientation changes since the rotation animation changes the\npositions of surfaces as they swing into place.  Among other things,\nthe spurious resizes caused the wallpaper to be redrawn dozens of time.\n\nChange-Id: I2be7278c0d6a00aaef665a65e268d8da1771e51f\n"
    },
    {
      "commit": "ff801ec71399f7e8aa95bcbb9937c53144fe17c5",
      "tree": "af9e1ee21e7edbb363b83d8fb0e19b142275d9e0",
      "parents": [
        "f36af16479e252bec168ed181885ec21d9df46f5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Jan 22 18:05:38 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Jan 22 18:13:13 2011 -0800"
      },
      "message": "Fix issue #3302006: Cannot see the dialog lunched from a transparent activity.\n\nThe activity manager was not performing the layout pass on the new window,\nbecause its app token was still hidden, because the activity manager / window\nmanager were still waiting for it to be ready to show.\n\nJust ignore whether the app token is hidden for this case.\n\nAlso fixes some problems with animations, and tweaks the ViewConfiguration\nvalues for xlarge screens.\n\nChange-Id: Icbe9c77ba8127d1e02df2d6f27b8e86ec842e50a\n"
    },
    {
      "commit": "5503d803ecee63d417128d3849717b59b971fc08",
      "tree": "4c34d2b501bb979b8dde88fd11cd5511cb623fab",
      "parents": [
        "b2ee64edffe3dfe7316baa435566f777e657d9a0",
        "4eba96bb314d8ff773ea33d6cb3179f25751ecce"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Jan 22 11:38:48 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 22 11:38:48 2011 -0800"
      },
      "message": "Merge \"Fix issue #3377999: Activities need to be stopped when sleeping\" into honeycomb"
    },
    {
      "commit": "75a0e44831d08d9cbfec9f150be4e78b2d1aabf5",
      "tree": "2134fa966c79225fc3de247b7c1b0716129f09fd",
      "parents": [
        "cab114906df621d77bf59d9492f89182e34cd3e4",
        "8db9ac4b7d5f97b0d48cbc0dff5c5730641c9844"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 21 15:29:46 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 21 15:29:46 2011 -0800"
      },
      "message": "Merge \"Optimize call to drawBitmap during screen rotation.\" into honeycomb"
    },
    {
      "commit": "cab114906df621d77bf59d9492f89182e34cd3e4",
      "tree": "395ea0e35eae4123b966ecd78bcbf71fbfeb8775",
      "parents": [
        "8dac54c5855cdb3334ea31ff1b5f04972515ff7f",
        "3a22cd90bc5413314295df5688385b5ced7d8167"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 21 15:29:39 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 21 15:29:39 2011 -0800"
      },
      "message": "Merge \"Reduce number of calls to updateInputWindows by 60%.\" into honeycomb"
    },
    {
      "commit": "8db9ac4b7d5f97b0d48cbc0dff5c5730641c9844",
      "tree": "c5a99786527ed7404903ff88f22cf759d73b5153",
      "parents": [
        "2cb866b948c38923b31331a9b2f031eb9d791e6e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 21 14:39:52 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 21 14:39:52 2011 -0800"
      },
      "message": "Optimize call to drawBitmap during screen rotation.\n\nUsing SRC mode reduces drawBitmap time from 50ms to 15ms.\n\nChange-Id: Ibde82f358d92bd330b8c78c9db1ded6a0b4ba135\n"
    },
    {
      "commit": "3a22cd90bc5413314295df5688385b5ced7d8167",
      "tree": "133170997c15675893fee2968d87f98cddfc5394",
      "parents": [
        "2cb866b948c38923b31331a9b2f031eb9d791e6e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 21 13:59:04 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jan 21 14:09:43 2011 -0800"
      },
      "message": "Reduce number of calls to updateInputWindows by 60%.\n\nChange-Id: Ida9069dd58be2070f3c9d312aa9d868bd98eb8e2\n"
    },
    {
      "commit": "4eba96bb314d8ff773ea33d6cb3179f25751ecce",
      "tree": "cac35a94f631043414175614e8045bb5edb3612e",
      "parents": [
        "d8b9d7cd1b2327b02e41edcddf94e64d481419d1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 21 13:34:36 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jan 21 13:42:26 2011 -0800"
      },
      "message": "Fix issue #3377999: Activities need to be stopped when sleeping\n\nThis is a band-aid over the existing kludgy stopping mechanism\nwhere the semantics of stop are different in the activity manager\nthan in the clients.\n\nThis change is intended to be as unobtrusive as possible, only\nimpacting the sleep case.  I have a different change that\ncompletely reworks how we stop activities to simply this all\na lot by unifying the semantics between the server and client.\nHowever, it is too late in HC for such an extensive change.  Later\nI\u0027ll revert this one and put in the better solution.\n\nChange-Id: Id77f2db1ec83469cdd888acb8fbc4679daa7766e\n"
    },
    {
      "commit": "0512d080a5ae7eccb154be4302aaf4b5fb8aa5a6",
      "tree": "f0ee758511f4b7454ae993d8abfd0ca41901f676",
      "parents": [
        "0f2ef34b5a7158ab105edfb0d6c5904ae23e89fa",
        "8888c597c4bc3002e48738b6aea6fd43f69c0f78"
      ],
      "author": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Fri Jan 21 11:59:15 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 21 11:59:15 2011 -0800"
      },
      "message": "Merge \"Add and enforce the permission for encrypting/decrypting.\" into honeycomb"
    },
    {
      "commit": "0f2ef34b5a7158ab105edfb0d6c5904ae23e89fa",
      "tree": "9bc119f3e035a06dadc3d7ab444e761a6109693b",
      "parents": [
        "4569f1a561b4db77cc87f649e04c352415b65605",
        "9ed98bcdc9ef3445075fdba1933d0ec2b4bc147e"
      ],
      "author": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Fri Jan 21 11:39:15 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 21 11:39:15 2011 -0800"
      },
      "message": "Merge \"Update encryption commands.\" into honeycomb"
    },
    {
      "commit": "c2ff2ec0d987dd1372183d2a18ea59a0c4d71c2c",
      "tree": "fc3c5033e118f0b4569edd1166fac5c07b40f314",
      "parents": [
        "500657387d834a8eb712e9c56bb00b64173cc1a9",
        "0fe45dea927dc87c19d6afd4502658b36177aa07"
      ],
      "author": {
        "name": "Andy Stadler",
        "email": "stadler@google.com",
        "time": "Fri Jan 21 10:27:46 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 21 10:27:46 2011 -0800"
      },
      "message": "Merge \"Read actual device encryption status\" into honeycomb"
    },
    {
      "commit": "bb4aa0683c8a0a1e617c6d5f03eda33f49b89ed9",
      "tree": "aaa773517cf958ac1a7a0542e91ab7d636d6302d",
      "parents": [
        "6828656220f4ed5ae803e4c11fb75fb56bc3ea25"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Jan 19 21:40:27 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jan 21 20:20:02 2011 +0900"
      },
      "message": "Show implicitly enabled subtypes in the input method selection dialog\n\nbug: 3367646\n\nChange-Id: I9550f17f163950d80113fbcb8c9dd8a7d014cf6a\n"
    },
    {
      "commit": "8888c597c4bc3002e48738b6aea6fd43f69c0f78",
      "tree": "0a4f7ea7f805a877f09b4c953c6382c49932232f",
      "parents": [
        "9ed98bcdc9ef3445075fdba1933d0ec2b4bc147e"
      ],
      "author": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Thu Jan 20 22:46:41 2011 -0600"
      },
      "committer": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Fri Jan 21 00:07:49 2011 -0600"
      },
      "message": "Add and enforce the permission for encrypting/decrypting.\n\nChange-Id: Ia292d8a5981266c2703743beb79fd786d77b375d\n"
    },
    {
      "commit": "9ed98bcdc9ef3445075fdba1933d0ec2b4bc147e",
      "tree": "27258cb1eb3ad5660f30c481a9b22dfd1daba89f",
      "parents": [
        "04fba96bb7e3fdac2fe3b396ff5cc6560c13ecb5"
      ],
      "author": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Mon Jan 17 09:58:35 2011 -0600"
      },
      "committer": {
        "name": "Jason parks",
        "email": "jparks@google.com",
        "time": "Fri Jan 21 00:06:20 2011 -0600"
      },
      "message": "Update encryption commands.\n\n* Changed to inplace encryption.\n* Changed decryption to return the proper error code. It will now return success or the number of failed attempts.\n* Be lazy and post a message 2 seconds later to call restart. I don\u0027t feel like messing with binder interfaces for a proper callback.\n\nChange-Id: Iae2de7057aa66f248fd2df3f29777ad3368442f0\n"
    },
    {
      "commit": "0e5bf5051b02bc382fb7e6c975511af499b31624",
      "tree": "b77095db8e09a0e30057fe25da9133770415a8cf",
      "parents": [
        "cdd5626da62cb2dc013cded470e264232617f635",
        "865b97761cc58053f45a8b06b531d60d8e482c3a"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Thu Jan 20 19:47:43 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 20 19:47:43 2011 -0800"
      },
      "message": "Merge \"Show ime switch icon when there is a hard keyboard\" into honeycomb"
    },
    {
      "commit": "865b97761cc58053f45a8b06b531d60d8e482c3a",
      "tree": "6216a1909755a6a19d7e138ce63f4a469e8329e4",
      "parents": [
        "4c4332250d9e6d2cb746625cc232052561c4d450"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jan 21 02:45:06 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jan 21 12:28:01 2011 +0900"
      },
      "message": "Show ime switch icon when there is a hard keyboard\n\nChange-Id: Ife3a8733b1a1bf43b195ecf4b8c5082b6538d0a0\n"
    },
    {
      "commit": "0fe45dea927dc87c19d6afd4502658b36177aa07",
      "tree": "b86bdc163a33ea7ee4090a0fd27c6d0b63da1e34",
      "parents": [
        "913d04aa3b187beffd7691acb1e61a8b09810bbe"
      ],
      "author": {
        "name": "Andy Stadler",
        "email": "stadler@google.com",
        "time": "Thu Jan 20 16:35:09 2011 -0800"
      },
      "committer": {
        "name": "Andy Stadler",
        "email": "stadler@google.com",
        "time": "Thu Jan 20 16:35:09 2011 -0800"
      },
      "message": "Read actual device encryption status\n\nBug: 3346770\nChange-Id: Ie70c14b1b4584a5f340a27102145f7860ba9e14b\n"
    },
    {
      "commit": "35e4a497f4463adb78d35a57f22847bec0eaab1a",
      "tree": "29e7cc807bdc1df38bbc9809533a75bbd37dfc5b",
      "parents": [
        "a423d868009b9961597365ce7f190aef23f4b1cc",
        "45491690d8f21d2648cad9247115720fa90046b4"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jan 20 12:25:33 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 20 12:25:33 2011 -0800"
      },
      "message": "Merge \"fix [3369743] SurfaceFlinger reads hardware composer hints before calling hwc.prepare()\" into honeycomb"
    },
    {
      "commit": "a423d868009b9961597365ce7f190aef23f4b1cc",
      "tree": "755aab7bd7af26b40e43ea2b38d2ed6f0641e19e",
      "parents": [
        "2e0f0bb3fe63c51fa3154f8ed17bfaf611edbf5d",
        "1d4549ab0312319a79fb37068a3fc63bbb0a3adc"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jan 20 12:25:26 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 20 12:25:26 2011 -0800"
      },
      "message": "Merge \"clean-up unneeded code\" into honeycomb"
    },
    {
      "commit": "1d4549ab0312319a79fb37068a3fc63bbb0a3adc",
      "tree": "32a0c3dcb3fcae1354342ad938abb6a7d9c747e4",
      "parents": [
        "ed58d8ed8a50cbd8c5e01c4e51bcbbe4341d1dfd"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jan 19 18:02:20 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jan 20 12:10:11 2011 -0800"
      },
      "message": "clean-up unneeded code\n\nnow that we removed the notion of a \"inUse\" buffer in surfaceflinger\na lot of code can be simplified / removed.\n\nnoteworthy, the whole concept of \"unlockClient\" wrt. \"compositionComplete\"\nis also gone.\n\nChange-Id: I210413d4c8c0998dae05c8620ebfc895d3e6233d\n"
    },
    {
      "commit": "ab1fe306aeaa3753d33d7052df5d7300c75b86f1",
      "tree": "a1f299f3b08385af5e8da771a57721a533f7e1a4",
      "parents": [
        "65d39eeb9b032e5507a01daa25afff62b29bffe4"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 19 18:36:13 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 20 12:05:25 2011 -0800"
      },
      "message": "do not merge - Fix issue 3371096.\n\nEffectModule::process() was copying effect chain input buffer to\noutput buffer if no effect was active instead of accumulating it.\n\nChange-Id: If4ca75601ea69a088d0f71d88aec53e90a1dec89\n"
    },
    {
      "commit": "404946fc260e5dff23c8a0db12e33ff842ab4b47",
      "tree": "85246e8447acaa5c76db0a8fb8ee723b9c26647c",
      "parents": [
        "19484fac336ce1606a9f0b464d6bfc33ae0523e7",
        "67b5ed31ed1b2ab894a517e0f3d3ee8fbbfdaf16"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jan 20 10:31:21 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 20 10:31:21 2011 -0800"
      },
      "message": "Merge \"Fix issue 3371096.\" into honeycomb"
    },
    {
      "commit": "586f051375d8d7aeece05329921f9f66fc6164cb",
      "tree": "2cdeb843626523ff02d0294e9c9efa1723de2021",
      "parents": [
        "317b2ea16a9ba681ee185d5b7a0c385a1fdbe1d5"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Jan 20 22:31:01 2011 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Fri Jan 21 01:02:58 2011 +0900"
      },
      "message": "Refine InputMethodInfo API\n\nbug: 3370297\nChange-Id: I2a18f3bdbe2fccb22e22cdae0f75aec5c703ad6d\n"
    },
    {
      "commit": "2548020c364c4119d134c84cc7a00ffca2dcbe7b",
      "tree": "a15dd66692ae53745a043e36e9f15685659cb358",
      "parents": [
        "90fcb2ad9378ee89f6795942c2b065a32bc83895"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Jan 20 23:13:02 2011 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Fri Jan 21 00:15:29 2011 +0900"
      },
      "message": "Add android.provider.Settings.EXTRA_INPUT_METHOD_ID\n\nChange-Id: Iecb7a9c265cafe96e7eec099341133da8e966f6f\n"
    },
    {
      "commit": "90fcb2ad9378ee89f6795942c2b065a32bc83895",
      "tree": "c5dfa3b8e46604a8a66e9011d1ab695b49f28eae",
      "parents": [
        "7ccaba693bd328968baf3f117b286659ce4a2a75",
        "f49688fa17b70313c0734f00df73bc3308a749e9"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Jan 20 05:17:51 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 20 05:17:51 2011 -0800"
      },
      "message": "Merge \"Rename action to ACTION_INPUT_METHOD_SUBTYPE_SETTINGS\" into honeycomb"
    },
    {
      "commit": "f49688fa17b70313c0734f00df73bc3308a749e9",
      "tree": "cce39c617b6b2d169a4d4f683af5400f99aaba96",
      "parents": [
        "961d2c6acf9a4a61648f040aaaf1e40a83674d59"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Jan 20 17:56:13 2011 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Jan 20 22:02:56 2011 +0900"
      },
      "message": "Rename action to ACTION_INPUT_METHOD_SUBTYPE_SETTINGS\n\nChange-Id: I27c318777355991ae4ad72d0b2480e93c8c5044e\n"
    },
    {
      "commit": "6b818de29a5c273aad99eb3f5456f88169c911f4",
      "tree": "13f303f6b238e6f932e16b16e9b9ffa2fc306dba",
      "parents": [
        "e25c4d1077071e33795ec0316b504f6cd2a0ba08"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Wed Jan 19 16:48:38 2011 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Jan 20 12:51:43 2011 +0800"
      },
      "message": "Make VpnService synchronous API.\n\nThis eases VpnSettings on dealing with multiple-activity-instance problem\n(i.e., SettingsActivity and VpnSettingsActivity).\n\n+ Most of the code is moved from the VpnServices package to vpn/java/.\n+ VpnManager and VpnServiceBinder are revised to provide synchronous API.\n+ Add a new method isIdle() to IVpnService.aidl.\n\nRelated bug: 3293236 (need to deal with multiple-activity-instance problem)\n\nChange-Id: I03afa3b3af85d7b4ef800683cd075c356a9266c4\n"
    },
    {
      "commit": "8b9df97826f94e2e871eff734b174a4752b0d5f9",
      "tree": "6a053cb549551238ed25b6ad9d3a1e1f812555c8",
      "parents": [
        "af3227ff772e8d5d577fd6fa10338837b435e99f",
        "89de57a8d252a25ef2412a11a66089a9ff6ffe29"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jan 19 18:54:11 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 19 18:54:11 2011 -0800"
      },
      "message": "Merge \"Fix getSwitchState.\" into honeycomb"
    },
    {
      "commit": "89de57a8d252a25ef2412a11a66089a9ff6ffe29",
      "tree": "26c27db9de6f06bfd9ea0e3bb6ddae805fcccbcb",
      "parents": [
        "2cb866b948c38923b31331a9b2f031eb9d791e6e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jan 19 18:41:38 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jan 19 18:41:38 2011 -0800"
      },
      "message": "Fix getSwitchState.\n\nInputReader::getSwitchState always returns AKEY_STATE_UNKNOWN\nbecause SwitchInputMapper::getSources() returns 0 which cannot\nmatch any source mask including AINPUT_SOURCE_ANY.  As a result\ninitial lid switch detection is broken.\n\nThis change adds a new source constant AINPUT_SOURCE_SWITCH\nthat indicates that the source has switches.\n\nChange-Id: I5321ecf0ce84f1c2b4535f6c163d3f4dcf9b7a9b\n"
    },
    {
      "commit": "67b5ed31ed1b2ab894a517e0f3d3ee8fbbfdaf16",
      "tree": "0a2e235c9f9b7e0452ff7e2c37a56742ddde2c7c",
      "parents": [
        "54973710d769e4722dc21778f8fcb7b08d2872dd"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 19 18:36:13 2011 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jan 19 18:36:13 2011 -0800"
      },
      "message": "Fix issue 3371096.\n\nEffectModule::process() was copying effect chain input buffer to\noutput buffer if no effect was active instead of accumulating it.\n\nChange-Id: I2838af2e7b6654d0a76547625929a5453da68d02\n"
    },
    {
      "commit": "54714b8b956be92e8f4c5884fd104867872b9001",
      "tree": "ba7da8e5bdefba2189177d3017e9d2bc1f1e6fdf",
      "parents": [
        "961d2c6acf9a4a61648f040aaaf1e40a83674d59",
        "0bcd713977be17cf1f3c485e9e2277bfaea175af"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jan 19 18:22:35 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 19 18:22:35 2011 -0800"
      },
      "message": "Merge \"fix [3369027] Sensor.TYPE_ROTATION_VECTOR is unstable and returns NaNs when running slowly\" into honeycomb"
    },
    {
      "commit": "0bcd713977be17cf1f3c485e9e2277bfaea175af",
      "tree": "e308b42d686556c7904f3859817223cdb6a88f44",
      "parents": [
        "ed58d8ed8a50cbd8c5e01c4e51bcbbe4341d1dfd"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jan 19 14:26:25 2011 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jan 19 18:20:06 2011 -0800"
      },
      "message": "fix [3369027] Sensor.TYPE_ROTATION_VECTOR is unstable and returns NaNs when running slowly\n\nThe cut-off frequency of the lowpass filter was too high\nfor the sampling rate used by DELAY_NORMAL.\n\nNow we use the same filters used for the gravity vector\n(cascaded biquad at 1.5 Hz)\n\nChange-Id: I319dc4f449a3abd553d61b196a9ddcf7782f912d\n"
    },
    {
      "commit": "a159579778ffb1584bc915e2338efa9f0f21f6b8",
      "tree": "70453c1c7b20ad05c9024efdabc9831cca95e02a",
      "parents": [
        "28f0a53a882a39bc22bc5892250411cadf6c0d5d"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jan 19 17:26:50 2011 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jan 19 17:26:50 2011 -0800"
      },
      "message": "Make the drag input window fullscreen touchable again\n\nHaving it non-touchable was making it possible to e.g.\ntouch buttons and launch new activities out from under\nan in-flight drag operation.\n\nBug 3370698\n\nChange-Id: I46fe70a8fe8fbaa5cca48f6bb478ed7ded1f1cc3\n"
    },
    {
      "commit": "28f0a53a882a39bc22bc5892250411cadf6c0d5d",
      "tree": "88892bc90b5d5903faea8b377e07836dd1081642",
      "parents": [
        "1c0012e103a380489fe4a150247cd226de9a89a6",
        "f01af7551b3cf8853d3a76412c2745a543063434"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jan 19 16:41:14 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 19 16:41:14 2011 -0800"
      },
      "message": "Merge \"Fail more gracefully when window state changes during drags\" into honeycomb"
    }
  ],
  "next": "0fb9c5dcc76af44a1f6e3c9243d03a0a222ad2bb"
}
