)]}'
{
  "log": [
    {
      "commit": "bedf9df706ef1fe352c1ba0734f50f9e8ad2533e",
      "tree": "37cf7b90fc41f4abffe7b3933791ff3580fe88b3",
      "parents": [
        "d83d6606d62e27effc27be48d6050914deefe9eb"
      ],
      "author": {
        "name": "Karl Rosaen",
        "email": "krosaen@android.com",
        "time": "Mon Jun 15 16:38:32 2009 -0700"
      },
      "committer": {
        "name": "Karl Rosaen",
        "email": "krosaen@android.com",
        "time": "Mon Jun 15 16:56:01 2009 -0700"
      },
      "message": "Add utility methods to AndroidTestCase for asserting permission requirements for launching activities and accessing ContentProviders.\n"
    },
    {
      "commit": "d83d6606d62e27effc27be48d6050914deefe9eb",
      "tree": "b11ebd6ca82ed3c1f4bd3db1c7b6229317ad5a97",
      "parents": [
        "0304325dd72ff8713c8444e909d387af1447f86f",
        "903f311fdc79b8dc804b63d0e397453d9b0e8d44"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 15 09:37:01 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 15 09:37:01 2009 -0700"
      },
      "message": "Merge change 4106 into donut\n\n* changes:\n  Adjust order of file/section list in output diff\n"
    },
    {
      "commit": "0304325dd72ff8713c8444e909d387af1447f86f",
      "tree": "04d58c9ad8096abc4cb3bdbad3f3172d67d2ff6f",
      "parents": [
        "0fb466836bb654524683152371ecc32142cdf5de"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Mon Jun 15 18:59:01 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Mon Jun 15 19:29:26 2009 +0800"
      },
      "message": "Remove SingleServerProfile.\n\nEnd of refactoring out SingleServerProfile.java.\n"
    },
    {
      "commit": "0fb466836bb654524683152371ecc32142cdf5de",
      "tree": "fdaa3102f92a52889ab1a6ab3d86670f400fcaed",
      "parents": [
        "6d78dd8ef833e22d73fc65df205346e657cf9850",
        "8d17f3f24bbda9a9cd7ea08c5925508dc2c011be"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 15 02:06:39 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 15 02:06:39 2009 -0700"
      },
      "message": "Merge change 3880 into donut\n\n* changes:\n  Run search dialog in the system process.\n"
    },
    {
      "commit": "8d17f3f24bbda9a9cd7ea08c5925508dc2c011be",
      "tree": "cf7e5ebb721354bfffc41d2ab4932cb70ea3c033",
      "parents": [
        "3d59ee7aa66a5b1e80f5042f8d872dd9819b5f40"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Fri Jun 05 13:22:28 2009 +0100"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Mon Jun 15 09:05:26 2009 +0100"
      },
      "message": "Run search dialog in the system process.\n\nFixes http://b/issue?id\u003d1905863\n\nThis is needed to address two security issues with global search:\nhttp://b/issue?id\u003d1871088 (Apps can read content providers through GlobalSearch)\nhttp://b/issue?id\u003d1819627 (Apps can use GlobalSearch to launch arbirtrary intents)\n\nThis also fixes http://b/issue?id\u003d1693153 (SearchManager.OnDismissListener\nnever gets called)\n\nTo fix the security issues, GlobalSearch also needs to require\na non-app permission to access its content provider and launch intents.\n"
    },
    {
      "commit": "6d78dd8ef833e22d73fc65df205346e657cf9850",
      "tree": "85a42f725e363a42a0bb93f588ba68ff9d6a86c7",
      "parents": [
        "3d59ee7aa66a5b1e80f5042f8d872dd9819b5f40",
        "4c424d61c72af64b4fa1da5e1c52eaebf60fe36e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jun 14 23:41:33 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jun 14 23:41:33 2009 -0700"
      },
      "message": "Merge change 4147 into donut\n\n* changes:\n  On the way of refactoring out SingleServerProfile.java.\n"
    },
    {
      "commit": "4c424d61c72af64b4fa1da5e1c52eaebf60fe36e",
      "tree": "173c1b62ae23e4dee284808042fbd601431f56d6",
      "parents": [
        "31390c752828dce0a33d0adeacdf10a49ff847ce"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Mon Jun 15 11:30:11 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Mon Jun 15 13:06:03 2009 +0800"
      },
      "message": "On the way of refactoring out SingleServerProfile.java.\n\n+ Move mServerName from SingleServerProfile and VpnProfile.\n+ Add mSavedUsername to VpnProfile.\n+ Keep empty SingleServerProfile to not break the classes that use it.\n+ Remove use of SingleServerProfile from VpnService.java.\n"
    },
    {
      "commit": "3d59ee7aa66a5b1e80f5042f8d872dd9819b5f40",
      "tree": "b6b25081ea1a143cda4ea38290b2376a8d5ca937",
      "parents": [
        "2fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2",
        "110b50ca5158f75abdead740f0956600da2f212d"
      ],
      "author": {
        "name": "Scott Main",
        "email": "nobody@android.com",
        "time": "Sun Jun 14 20:45:27 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Sun Jun 14 20:45:27 2009 -0700"
      },
      "message": "am 110b50ca: AI 149839: make the home page\\\u0027s announcement block expandable...   primarily, this is to handle various lengths of text due to translations,   but also allows us to be more flexible WRT the content for the top section.\n\nMerge commit \u0027110b50ca5158f75abdead740f0956600da2f212d\u0027 into donut\n\n* commit \u0027110b50ca5158f75abdead740f0956600da2f212d\u0027:\n  AI 149839: make the home page\u0027s announcement block expandable...\n"
    },
    {
      "commit": "2fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2",
      "tree": "985ee68d951d7c141e296aa4fec60d41f667538a",
      "parents": [
        "31390c752828dce0a33d0adeacdf10a49ff847ce"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Jun 12 15:20:04 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Sun Jun 14 19:39:29 2009 -0700"
      },
      "message": "Fix some backup reader/writer issues; make local transport do backup\n\nAs of this change, LocalTransport is successfully propagating data changes from\nthe backup data format into a repository stored in /cache/backup/[packagename].\nEach backup key gets a separate file there for ease of manipulation and testing.\n\nThe general semantics of BackupDataReader have been tweaked, too; it now just\nreturns simple \"we\u0027re done with the data\" when it hits the end, even if no\nfooter has been found, because on the writing side the footer isn\u0027t being\nwritten.  Also, reading an entity now merely requires a \"big enough\" buffer, not\nan exactly-sized one.\n\nThis is all a work in progress, but this is at least working now for purposes of\nthis local transport.\n\nStill to do: proper change vs deletion detection, as well as expanding the data\nformat itself to include necessary metadata etc.\n"
    },
    {
      "commit": "31390c752828dce0a33d0adeacdf10a49ff847ce",
      "tree": "078275a49f25fb8c926b23749e5cb48e870c59d7",
      "parents": [
        "be3615bded04c7414db4da3721f512b6f76e09e2",
        "03f4df4b3bf8b8828e795a0bf1f913e6e08f12f1"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 19:00:22 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 19:00:22 2009 -0700"
      },
      "message": "Merge change 4131 into donut\n\n* changes:\n  Fix the jni initializer.\n"
    },
    {
      "commit": "03f4df4b3bf8b8828e795a0bf1f913e6e08f12f1",
      "tree": "a60622e11180c97d98c39c44949c6eb12585ed8b",
      "parents": [
        "1cf587496fcb1d652bab9fc6792fb106b6fefaa4"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri Jun 12 18:59:25 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri Jun 12 18:59:25 2009 -0700"
      },
      "message": "Fix the jni initializer.\n"
    },
    {
      "commit": "be3615bded04c7414db4da3721f512b6f76e09e2",
      "tree": "218ee88e95c64bc75371ee8c00a6817780dfd40b",
      "parents": [
        "bf0010b5e25549bf736478bc57fbde8d7a892e1a",
        "75b038545edd799836b712e6c32bd4d143f8df28"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 18:03:11 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 18:03:11 2009 -0700"
      },
      "message": "Merge change 4112 into donut\n\n* changes:\n  Fix bug #1812041: activity manager crash with bad args.\n"
    },
    {
      "commit": "bf0010b5e25549bf736478bc57fbde8d7a892e1a",
      "tree": "cca2683496d3d6f570b3031b2ed9f675434c72e9",
      "parents": [
        "6c98c13b2e53e9521e2cee259f918745542e95c5",
        "1cf587496fcb1d652bab9fc6792fb106b6fefaa4"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 16:22:55 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 16:22:55 2009 -0700"
      },
      "message": "Merge change 4085 into donut\n\n* changes:\n  Add RestoreFileHelper, BackupDataInput, and add java wrappers for the methods on BackupDataOutput.\n"
    },
    {
      "commit": "1cf587496fcb1d652bab9fc6792fb106b6fefaa4",
      "tree": "96e989c088b0e2fb8560d5b2e24562188a128e19",
      "parents": [
        "6599426f74371c823fcfe570f61577262eb0df44"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri Jun 12 11:06:24 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri Jun 12 16:21:24 2009 -0700"
      },
      "message": "Add RestoreFileHelper, BackupDataInput, and add java wrappers for the methods on BackupDataOutput.\n"
    },
    {
      "commit": "75b038545edd799836b712e6c32bd4d143f8df28",
      "tree": "274063b7551f42b333eccff6e63dccbb4a8f401b",
      "parents": [
        "cafdea61a85c8f5d0646cc9413a09346c637f43f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 12 15:43:26 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 12 15:43:26 2009 -0700"
      },
      "message": "Fix bug #1812041: activity manager crash with bad args.\n\nThere was old code that would kill the system process in some cases when there\nwas a bad activity token.  This is really no longer used, except in a few\nplaces where it allows apps to kill the system.  So just get rid of it and\nmake the world a better place.\n"
    },
    {
      "commit": "6c98c13b2e53e9521e2cee259f918745542e95c5",
      "tree": "2d386983675a2cad8fae87250b1620dc8fa914b3",
      "parents": [
        "7504da036834a661684185ef11ec2ec50a18ce1b",
        "cde87f45e0fa052d070b88ae33fb03c89870536a"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 15:19:50 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 15:19:50 2009 -0700"
      },
      "message": "Merge change 4104 into donut\n\n* changes:\n  Journal backup requests so that they won\u0027t be lost in a crash\n"
    },
    {
      "commit": "903f311fdc79b8dc804b63d0e397453d9b0e8d44",
      "tree": "ad4d98d9c75c45acda16a15181fe1fc23e727bf3",
      "parents": [
        "7504da036834a661684185ef11ec2ec50a18ce1b"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Jun 12 15:03:45 2009 -0700"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Fri Jun 12 15:03:45 2009 -0700"
      },
      "message": "Adjust order of file/section list in output diff\n"
    },
    {
      "commit": "110b50ca5158f75abdead740f0956600da2f212d",
      "tree": "10d4e91f2888e459f88df7422a29afabe0728ada",
      "parents": [
        "a798dd86295191b095aaa7a02903daf8d1a5e431"
      ],
      "author": {
        "name": "Scott Main",
        "email": "nobody@android.com",
        "time": "Fri Jun 12 14:02:42 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 12 14:02:42 2009 -0700"
      },
      "message": "AI 149839: make the home page\u0027s announcement block expandable...\n  primarily, this is to handle various lengths of text due to translations,\n  but also allows us to be more flexible WRT the content for the top section.\n\nAutomated import of CL 149839\n"
    },
    {
      "commit": "cde87f45e0fa052d070b88ae33fb03c89870536a",
      "tree": "5f0972e6f965cc06bb3d773038f79096e0715ace",
      "parents": [
        "0b77453076a22569f24318d194b378b68f11a63e"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Jun 12 12:55:53 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Jun 12 13:57:39 2009 -0700"
      },
      "message": "Journal backup requests so that they won\u0027t be lost in a crash\n\nWhen an application requests a backup via dataChanged(), we now journal that\nfact on disk.  The journal persists and is only removed following a successful\nbackup pass.  When the backup manager is started at boot time, it looks for any\nexisting journal files and schedules a backup for the apps listed in them, on\nthe expectation that the device shut down or crashed before a backup could be\nperformed.\n"
    },
    {
      "commit": "7504da036834a661684185ef11ec2ec50a18ce1b",
      "tree": "3f4ec63649a1be0ed9b653759ab935da40cb02d1",
      "parents": [
        "6599426f74371c823fcfe570f61577262eb0df44",
        "bbf7c00e06c0f6f39e26f7fdedbc7105b2f5c415"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 13:46:00 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 13:46:00 2009 -0700"
      },
      "message": "Merge change 4080 into donut\n\n* changes:\n  Fix data connection issues.\n"
    },
    {
      "commit": "bbf7c00e06c0f6f39e26f7fdedbc7105b2f5c415",
      "tree": "8ad5f31abcb75d8b1b6d438e5fa45797d462459d",
      "parents": [
        "e8939bb8f1453b44788d4475a8263082d858e533"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Fri Jun 12 12:14:08 2009 -0700"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Fri Jun 12 12:14:08 2009 -0700"
      },
      "message": "Fix data connection issues.\n\na)Fix cleanup connection being called twice when switching to wifi.\nb) Reset the reconnect timer when voice call ends and APN is changed.\n"
    },
    {
      "commit": "6599426f74371c823fcfe570f61577262eb0df44",
      "tree": "d15f0c1efc382c86d99d5b68544042812a564c43",
      "parents": [
        "cafdea61a85c8f5d0646cc9413a09346c637f43f",
        "328769582328192f8f361dcb56f2ad67ad00ae2c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 11:10:56 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 11:10:56 2009 -0700"
      },
      "message": "Merge change 4017 into donut\n\n* changes:\n  Make the date format preference work again.\n"
    },
    {
      "commit": "cafdea61a85c8f5d0646cc9413a09346c637f43f",
      "tree": "4ef69601feb687cf90483f45ef443f9eea8c93ca",
      "parents": [
        "763a5723882ec7924114ba585b49e69b3e828b4a"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jun 12 10:51:36 2009 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jun 12 10:51:36 2009 -0700"
      },
      "message": "Fixes #1914574. An NPE could be causes in lists by ViewGroup.dispatchDraw().\n\nViewGroup was trying to access the AttachInfo without checking whether the\ninfo object is null. The object can be null at varioous times in the lifecycle\nof a list.\n"
    },
    {
      "commit": "763a5723882ec7924114ba585b49e69b3e828b4a",
      "tree": "4ef2f1f5e38b7e23278500edf0d05d6583f34eb1",
      "parents": [
        "e8939bb8f1453b44788d4475a8263082d858e533"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jun 12 10:28:28 2009 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jun 12 10:28:28 2009 -0700"
      },
      "message": "Hide gestures API.\n"
    },
    {
      "commit": "328769582328192f8f361dcb56f2ad67ad00ae2c",
      "tree": "3dcaa23da84eb712ea0b80cdf0d71adee1b44192",
      "parents": [
        "af0e7a7394bf1e2596c46f81c3b0302a56daab96"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jun 11 18:11:09 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Jun 12 10:06:24 2009 -0700"
      },
      "message": "Make the date format preference work again.\n\nIt is only used for numeric dates -- spelled-out dates have such a complex\nvariety of formats that they can only be meaningfully formatted from\nlocale strings.\n\nIn addition, the preference is left null when initializing, on the assumption\nthat the locale will still specify a more useful numeric format than we can\nguess as part of a build-wide configuration.\n\nBut if the user has specified a format, the date will be formatted in the\norder they asked for, with locale-appropriate punctuation substituted in.\n"
    },
    {
      "commit": "e8939bb8f1453b44788d4475a8263082d858e533",
      "tree": "cac08cf51c9c97c1af33d69066ad3e244c1d0efd",
      "parents": [
        "3d4b7065e960cdaecc8d9fd609c2e508a1f9d8f5",
        "a798dd86295191b095aaa7a02903daf8d1a5e431"
      ],
      "author": {
        "name": "Ramanan Rajeswaran",
        "email": "ramanan@google.com",
        "time": "Fri Jun 12 09:49:16 2009 -0700"
      },
      "committer": {
        "name": "Ramanan Rajeswaran",
        "email": "ramanan@google.com",
        "time": "Fri Jun 12 09:49:16 2009 -0700"
      },
      "message": "resolved conflicts for merge of a798dd86 to donut\n"
    },
    {
      "commit": "3d4b7065e960cdaecc8d9fd609c2e508a1f9d8f5",
      "tree": "62f479ab07cbc26e52fecc7abfe02220402edd55",
      "parents": [
        "d670b8c61ebd13324ac21bdbc08d8a02fc0a765a",
        "9bcf401d13d47416043a704430388abd59aef7cd"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 08:33:59 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 08:33:59 2009 -0700"
      },
      "message": "Merge change 4047 into donut\n\n* changes:\n  Fix issue #899198\tMODE_RINGER_STREAMS_AFFECTED does not restore volumes correctly\n"
    },
    {
      "commit": "d670b8c61ebd13324ac21bdbc08d8a02fc0a765a",
      "tree": "c24961f49c83ed6db9784ac9972d683f380f4555",
      "parents": [
        "83bb56c389d003162093eef0aaee251cefc1deed",
        "32f82774884bdd709789ab9f3ccdf5b972ff7681"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 08:32:09 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 08:32:09 2009 -0700"
      },
      "message": "Merge change 3981 into donut\n\n* changes:\n  Removed trailing whitespaces.\n"
    },
    {
      "commit": "9bcf401d13d47416043a704430388abd59aef7cd",
      "tree": "108eaecdc75fd1cd1a3f7d400f13a31783728934",
      "parents": [
        "78f0f8cb2efe9410127c39201e240f6d438eb53c"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 12 06:09:28 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 12 06:09:28 2009 -0700"
      },
      "message": "Fix issue #899198\tMODE_RINGER_STREAMS_AFFECTED does not restore volumes correctly\n\nThe problem is that setRingerModeInt() does not handle streams not affected by ringer mode: when enabling \"Alarm in silent mode\" while in silent mode, setRingerModeInt is called after alarm streamis removed from ringer mode affected streams, and nothing is done.\n\nThe fix constists in also processing streams that are not affected by ringer mode and to restore last audible volume for them. It does not arm reapplying the volume for streams the are never affected by ringer mode as we don\u0027t do this very often.\n\nThe other problem noted in the bug report (ringer volume always restored to non zero value when exiting silent mode even if set to zero before) is also fixed: a new parameter is added to setIndex() and setStreamVolumeInt() to explicitely request to store the volume index as last audible instead of doing it automatically if index \u003e 0.\n"
    },
    {
      "commit": "83bb56c389d003162093eef0aaee251cefc1deed",
      "tree": "04d6bf66798e578db16c290a71417cb806fd721b",
      "parents": [
        "7f50c08fb998786a2963e979cd5b4347e64808e3",
        "f94b6444a3d4dc6d904754f80b2f940be90e432b"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 05:33:40 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 05:33:40 2009 -0700"
      },
      "message": "Merge change 3424 into donut\n\n* changes:\n  Add the VPN services package, VPN service base classes and L2tpIpsecService.\n"
    },
    {
      "commit": "7f50c08fb998786a2963e979cd5b4347e64808e3",
      "tree": "2e4394e1550026dbb916f8610d2e35b604471636",
      "parents": [
        "78f0f8cb2efe9410127c39201e240f6d438eb53c"
      ],
      "author": {
        "name": "Satish Sampath",
        "email": "satish@android.com",
        "time": "Fri Jun 12 11:58:46 2009 +0100"
      },
      "committer": {
        "name": "Satish Sampath",
        "email": "satish@android.com",
        "time": "Fri Jun 12 11:58:46 2009 +0100"
      },
      "message": "Show proper suggestion item hilite on selection.\n\nWith the new implementation of using a SuggestionItemView, we no longer need to draw a solid background for all items in the suggestion listview. Hence removing the code to draw a default white background, and make the item transparent so the listview-drawn selection hilite shows through.\n"
    },
    {
      "commit": "f94b6444a3d4dc6d904754f80b2f940be90e432b",
      "tree": "6929a787d45050a738b8ac24f7322d001aceaf96",
      "parents": [
        "78f0f8cb2efe9410127c39201e240f6d438eb53c"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Mon Jun 08 13:27:11 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Jun 12 15:45:56 2009 +0800"
      },
      "message": "Add the VPN services package, VPN service base classes and L2tpIpsecService.\n\nAlso add android.security.Keystore. This is a quick solution. Will be\nevolved to a more mature implementation.\n\nPATCH SET 2:\n+ Add VpnServiceBinder to hide VpnService and its subclasses.\n+ Add sendCommand2() to AndroidServiceProxy to work with the latest mtpd.\n\nPATCH SET 3:\n+ Rebase to catch up with new commits; no changes made.\n\nPATCH SET 4:\n+ Remove/comment out @Override on interface methods to be compilable for Java 1.5.\n\nPATCH SET 5:\n+ Add L2tpService.java.\n+ Make VpnService to work on SingleServerProfile; add serverIp to\n  connect(); set system property \"net.vpn.server_ip\"; and move\n  getPppOptionFilePath() from L2tpIpsecService to VpnService\n+ Revise VpnManager to start VpnService without worrying about which\n  type (as the type info is in VpnProfile)\n+ Remove installation stuff from VpnManager\n\nPATCH SET 6:\n+ Fix PATCH SET 5 (the patch was messed up). Please ignore PATCH SET 5.\n\nPATCH SET 7:\n+ Fix styles.\n\nPATCH SET 8:\n+ Add CANCELLED to VpnState.\n\nPATCH SET 9:\n+ Make VpnProfile serializable (in order to save them to persistent storage)\n\nPATCH SET 10:\n+ Remove Keystore.java as it\u0027s added in another CL.\n"
    },
    {
      "commit": "78f0f8cb2efe9410127c39201e240f6d438eb53c",
      "tree": "a867c2cdecedb12288837559c04c729e9466c634",
      "parents": [
        "e8966e126388223de119c909d572fb8d1406a3ac",
        "ce88cb15b52998e16c3ba548a4ec49117a835e21"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 19:50:05 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 19:50:05 2009 -0700"
      },
      "message": "Merge changes 3953,3954 into donut\n\n* changes:\n  Make the file backup helper not crash if a file you requested can\u0027t be stated.  This means you don\u0027t need to know if the files you are backing up exist or not -- we\u0027ll figure it out for you.\n  Fix SharedPrefsBackupHelper so it doesn\u0027t hard code the paths to the files.\n"
    },
    {
      "commit": "e8966e126388223de119c909d572fb8d1406a3ac",
      "tree": "05bce3c81331aed5700aa4898b7a666f20425b5c",
      "parents": [
        "f229aff118dc53c3a06f0b4120d9ce22f4c2dd6e",
        "8506ab4ac062d0e1ccde136e5e2f4081560e0c11"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 18:06:17 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 18:06:17 2009 -0700"
      },
      "message": "Merge change 4008 into donut\n\n* changes:\n  Fixes #1886237. Views drawing cache was not generated properly.\n"
    },
    {
      "commit": "8506ab4ac062d0e1ccde136e5e2f4081560e0c11",
      "tree": "37b7c906e5e19050113c7d9295b775870e5119be",
      "parents": [
        "0b77453076a22569f24318d194b378b68f11a63e"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Thu Jun 11 17:35:47 2009 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Thu Jun 11 18:05:56 2009 -0700"
      },
      "message": "Fixes #1886237. Views drawing cache was not generated properly.\n\nIn compatibility mode, a View\u0027s drawing cache was created at the 160 density\nscale instead of the right scale.\n"
    },
    {
      "commit": "32f82774884bdd709789ab9f3ccdf5b972ff7681",
      "tree": "ef2b6af8c2d2c68838b1e10496f3b8cff2e644e0",
      "parents": [
        "cb9534f92007b47d86cccc306dc75ca2d64bd197"
      ],
      "author": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Thu Jun 11 16:33:49 2009 -0700"
      },
      "committer": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Thu Jun 11 16:54:48 2009 -0700"
      },
      "message": "Removed trailing whitespaces.\n"
    },
    {
      "commit": "f229aff118dc53c3a06f0b4120d9ce22f4c2dd6e",
      "tree": "3565ee270881819f5fdda0147de1e8d7d8a1437d",
      "parents": [
        "cb9534f92007b47d86cccc306dc75ca2d64bd197",
        "261a1953232b70f7523d8f14aa70527161df1e53"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 16:20:22 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 16:20:22 2009 -0700"
      },
      "message": "Merge change 3967 into donut\n\n* changes:\n  Update control files (pass/fail/nontext/crash) to results from CRB45\n"
    },
    {
      "commit": "cb9534f92007b47d86cccc306dc75ca2d64bd197",
      "tree": "8267aec53edef5e5f019de600952a304b4ff861c",
      "parents": [
        "657c80b146f8d6319bf059f4aea2fce3b15a50b6",
        "e337d651a5199551ae3d3180176f8ac7d58c9acd"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 15:54:51 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 15:54:51 2009 -0700"
      },
      "message": "Merge change 3907 into donut\n\n* changes:\n  Support SMS cell broadcasting for GSM in RIL.java\n"
    },
    {
      "commit": "e337d651a5199551ae3d3180176f8ac7d58c9acd",
      "tree": "aefdc8dd5a9f591d45cf2fa16f844ca489081ea6",
      "parents": [
        "174231d89adf4a01f28e6074eb8f743240400c26"
      ],
      "author": {
        "name": "johnwang",
        "email": "johnwang@google.com",
        "time": "Thu Jun 11 10:05:29 2009 -0700"
      },
      "committer": {
        "name": "johnwang",
        "email": "johnwang@google.com",
        "time": "Thu Jun 11 15:43:29 2009 -0700"
      },
      "message": "Support SMS cell broadcasting for GSM in RIL.java\n\nenable gsm related cell broadcast requests in RIL.java and add SmsBraodcastConfigInfo class.\n\nThe gsm related cell broadcast requests include\n\nRIL_REQUEST_GET_BROADCAST_CONFIG\nRIL_REQUEST_GET_BROADCAST_CONFIG\nRIL_REQUEST_BROADCAST_ACTIVATION\nRIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS\n\n\tmodified:   BaseCommands.java\n\tmodified:   CommandsInterface.java\n\tmodified:   RIL.java\n\tmodified:   RILConstants.java\n\tmodified:   cdma/CdmaSMSDispatcher.java\n\tnew file:   gsm/SmsBroadcastConfigInfo.java\n\tmodified:   test/SimulatedCommands.java\n"
    },
    {
      "commit": "261a1953232b70f7523d8f14aa70527161df1e53",
      "tree": "0f8e11236a2e601d838305320b91e7d9209dba8b",
      "parents": [
        "fa699ea22a13a92694de75ef948a81da23e71642"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Jun 11 15:42:23 2009 -0700"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Jun 11 15:42:23 2009 -0700"
      },
      "message": "Update control files (pass/fail/nontext/crash) to results from CRB45\n"
    },
    {
      "commit": "657c80b146f8d6319bf059f4aea2fce3b15a50b6",
      "tree": "00bfb9cd8cea9c9baac260af8a9020b95566db08",
      "parents": [
        "116e8ef1f88ce1ead23777826dec5bd98bf99708",
        "41d2676dd634f6d0152181a622e8a6c90b062a3a"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 15:21:02 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 15:21:02 2009 -0700"
      },
      "message": "Merge change 3775 into donut\n\n* changes:\n  DO NOT MERGE.\n"
    },
    {
      "commit": "116e8ef1f88ce1ead23777826dec5bd98bf99708",
      "tree": "1478e592cea29042b9f4acace48cf10512aaebad",
      "parents": [
        "3cf0dd6ad86e725f5170f6484afa90ba9ea1e4c5",
        "91bf30a4779146a14b2c9c5ce168d641cd31cb8e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 15:07:58 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 15:07:58 2009 -0700"
      },
      "message": "Merge change 3949 into donut\n\n* changes:\n  TextToSpeech class cleanups - harmonized private member variable names - added success / failure codes (used for now in initialization) - synchronized access to speech completed listener.\n"
    },
    {
      "commit": "ce88cb15b52998e16c3ba548a4ec49117a835e21",
      "tree": "dc02e85657a63858b45a5eef8f99cbf5efae6339",
      "parents": [
        "23ecae3bbb60c5af940f3a22170d75eb6ac05b69"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 11 11:27:16 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 11 14:51:45 2009 -0700"
      },
      "message": "Make the file backup helper not crash if a file you requested\ncan\u0027t be stated.  This means you don\u0027t need to know if the files\nyou are backing up exist or not -- we\u0027ll figure it out for you.\n"
    },
    {
      "commit": "a798dd86295191b095aaa7a02903daf8d1a5e431",
      "tree": "4c4bdc32ddbb9d01d60fbd66b935434559d01878",
      "parents": [
        "aa25df2452f68d2f732ad620a97fd47b3802fa2e"
      ],
      "author": {
        "name": "Ramanan Rajeswaran",
        "email": "nobody@android.com",
        "time": "Thu Jun 11 14:43:15 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 11 14:43:15 2009 -0700"
      },
      "message": "AI 149797: Have SetupWizard pull the Terms of Service from the web using a new URL\n  which allows us to set the language and country (based on MCC otherwise\n  locale country). If we are unable to retrieve the ToS, or verify the\n  content, we load the default ToS (en_US) from the device.\n  BUG\u003d1856455\n\nAutomated import of CL 149797\n"
    },
    {
      "commit": "91bf30a4779146a14b2c9c5ce168d641cd31cb8e",
      "tree": "16b7e19db34094a0000ae1acf5778008065a5ca0",
      "parents": [
        "35733757bd1644f1fd67dc3a055391d1f167c4f2"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jun 11 14:35:48 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jun 11 14:35:48 2009 -0700"
      },
      "message": "TextToSpeech class cleanups\n- harmonized private member variable names\n- added success / failure codes (used for now in initialization)\n- synchronized access to speech completed listener.\n"
    },
    {
      "commit": "3cf0dd6ad86e725f5170f6484afa90ba9ea1e4c5",
      "tree": "13243fa900e94697b94138b717bc247513d5bb83",
      "parents": [
        "35733757bd1644f1fd67dc3a055391d1f167c4f2",
        "666c11d13fbf7b8e0502d44a94ffa00597ce92eb"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 14:09:11 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 14:09:11 2009 -0700"
      },
      "message": "Merge change 3940 into donut\n\n* changes:\n  dumpstate: Temporarily disable dumping /proc/slabinfo to avoid kernel crash.\n"
    },
    {
      "commit": "666c11d13fbf7b8e0502d44a94ffa00597ce92eb",
      "tree": "7279259f57393d7a2508bb6edd7e4b00a41a564d",
      "parents": [
        "a32b5f3252a58416f328399680395aa5fa936640"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jun 11 17:06:56 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jun 11 17:06:56 2009 -0400"
      },
      "message": "dumpstate: Temporarily disable dumping /proc/slabinfo to avoid kernel crash.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "35733757bd1644f1fd67dc3a055391d1f167c4f2",
      "tree": "98143dc3277ffb5dda2ea0dbe5ee044f580c6c31",
      "parents": [
        "0b77453076a22569f24318d194b378b68f11a63e",
        "af0e7a7394bf1e2596c46f81c3b0302a56daab96"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 13:48:53 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 13:48:53 2009 -0700"
      },
      "message": "Merge change 3935 into donut\n\n* changes:\n  Hook the 12- or 24-hour time format checkbox back up.\n"
    },
    {
      "commit": "af0e7a7394bf1e2596c46f81c3b0302a56daab96",
      "tree": "c9fd4667fbdbdbd5ec9b100c379f7fe6c5efec9f",
      "parents": [
        "fa699ea22a13a92694de75ef948a81da23e71642"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jun 11 13:37:04 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jun 11 13:37:04 2009 -0700"
      },
      "message": "Hook the 12- or 24-hour time format checkbox back up.\n\nThe format strings are newly generated from CLDR.  The code is once again\nthe same as in cupcake: do the natural thing for the locale if the user\nhas never specified, but follow the checkbox if the user has ever set it.\n"
    },
    {
      "commit": "23ecae3bbb60c5af940f3a22170d75eb6ac05b69",
      "tree": "1138102ba856743cffd931121409a71c2bae37c3",
      "parents": [
        "0b77453076a22569f24318d194b378b68f11a63e"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed Jun 10 17:07:15 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 11 11:29:57 2009 -0700"
      },
      "message": "Fix SharedPrefsBackupHelper so it doesn\u0027t hard code the paths to the files.\n\nThis took quite a bit of refactoring.\n"
    },
    {
      "commit": "0b77453076a22569f24318d194b378b68f11a63e",
      "tree": "de1108bc60b8f126d31c3b57227745b46346f1b9",
      "parents": [
        "286ea605c991874fb43a6a205676a0ca404f94cc",
        "a94945d3a1cf23caf33759eb1de84195d3fcb37b"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 11:27:53 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 11:27:53 2009 -0700"
      },
      "message": "Merge change 3015 into donut\n\n* changes:\n  make sms calculateLength radio-independent\n"
    },
    {
      "commit": "286ea605c991874fb43a6a205676a0ca404f94cc",
      "tree": "f9e43c99b270432320b3bffa807def929b4e77f9",
      "parents": [
        "fa699ea22a13a92694de75ef948a81da23e71642",
        "a8518c169bb34e540b7542ad5bd3891053d01a9f"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 11:26:49 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 11:26:49 2009 -0700"
      },
      "message": "Merge change 3828 into donut\n\n* changes:\n  Renaming the Tts class to TextToSpeech for clarity. Switching to HashMap for parameter lists to pass key-value parameter pairs. Using TODO instead of FIXME in comments. Removing methods that don\u0027t belong anymore to the TTS interface now the feature becomes part of the platform.\n"
    },
    {
      "commit": "fa699ea22a13a92694de75ef948a81da23e71642",
      "tree": "b5cb5d30ab9cac697d1891f57fa8bf5fe782f42d",
      "parents": [
        "d82108993f4550bf7a751ab27593ef8e15120db3",
        "d26ce0d903f5141a346d67b2b94437ef3e2880aa"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 09:54:58 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 09:54:58 2009 -0700"
      },
      "message": "Merge change 3899 into donut\n\n* changes:\n  GpsLocationProvider: Add hooks for GPS location injection.\n"
    },
    {
      "commit": "d26ce0d903f5141a346d67b2b94437ef3e2880aa",
      "tree": "f6982f2058ed1d61eeb13906f2703f0c459789e4",
      "parents": [
        "174231d89adf4a01f28e6074eb8f743240400c26"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jun 11 12:25:46 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jun 11 12:42:25 2009 -0400"
      },
      "message": "GpsLocationProvider: Add hooks for GPS location injection.\n\nThis will allow injecting cell ID location to the GPS\n(not implemented yet).\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "d82108993f4550bf7a751ab27593ef8e15120db3",
      "tree": "ba92d52fb970c8099dd4faf7d63c4c4f7b4aa6dd",
      "parents": [
        "35379abd46b68a4efa20035c6c8b9d1faceb4dcc"
      ],
      "author": {
        "name": "Satish Sampath",
        "email": "satish@android.com",
        "time": "Thu Jun 11 16:33:05 2009 +0100"
      },
      "committer": {
        "name": "Satish Sampath",
        "email": "satish@android.com",
        "time": "Thu Jun 11 17:11:50 2009 +0100"
      },
      "message": "NEW_API: Expose queryAfterZeroResults searchable attribute.\n\nIf this attribute is provided and true, the searchable activity will be invoked for all queries in a particular session.\nIf set to false and the activity returned zero results for a query, it will not be invoked again in that session for supersets of that zero-results query. For example, if the activity returned zero results for \"bo\", it would not be queried again for \"bob\" as an optimization.\n\nThe default value is false.\n"
    },
    {
      "commit": "35379abd46b68a4efa20035c6c8b9d1faceb4dcc",
      "tree": "115fe06544123d4c98fbba311680fe3213068acf",
      "parents": [
        "174231d89adf4a01f28e6074eb8f743240400c26"
      ],
      "author": {
        "name": "Satish Sampath",
        "email": "satish@android.com",
        "time": "Thu Jun 11 14:05:51 2009 +0100"
      },
      "committer": {
        "name": "Satish Sampath",
        "email": "satish@android.com",
        "time": "Thu Jun 11 16:27:29 2009 +0100"
      },
      "message": "Added attribute queryAfterZeroResults to searchables.\n\nAs of now we are just reading it from the xml and not acting upon it, that would come in a subsequent change.\n"
    },
    {
      "commit": "174231d89adf4a01f28e6074eb8f743240400c26",
      "tree": "0ceabc134862e81a8701fec6d21ae30bb805def6",
      "parents": [
        "db8a6ae6bbd8cbb17fb79085ffb9d3fc539fe5c2",
        "50145bc883909c4b1533894a2b947eed21312514"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 04:53:01 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 04:53:01 2009 -0700"
      },
      "message": "Merge change 3879 into donut\n\n* changes:\n  ACTV: getWindowVisibility() instead of private attach count\n"
    },
    {
      "commit": "50145bc883909c4b1533894a2b947eed21312514",
      "tree": "30d64220415b1fa77bbf6cfac661e956b4ea22d7",
      "parents": [
        "a05487dd856222bacf57a41f2dfe1194d3776f05"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Thu Jun 11 12:30:48 2009 +0100"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Thu Jun 11 12:30:48 2009 +0100"
      },
      "message": "ACTV: getWindowVisibility() instead of private attach count\n\nWhen debugging a problem with the search dialog drop-down\nsometimes not showing up, I saw that the mAttachCount variable\nin AutoCompleteTextView could get a negative value because\nonDetachedFromWindow() was called multiple times. This lead to\nthe drop-down not being displayed on filtering.\n\nInstead of the private attach count in ACTV, this change\nuses View.getWindowVisibility().\n"
    },
    {
      "commit": "db8a6ae6bbd8cbb17fb79085ffb9d3fc539fe5c2",
      "tree": "42081380dd9235bcad73d2197050aeccce601124",
      "parents": [
        "aba34d96fda75cbaaae19ce6296266feb24ce365",
        "10e371f18247dc7fb64bfa0f0528501acc17be79"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 02:37:01 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 02:37:01 2009 -0700"
      },
      "message": "Merge change 3709 into donut\n\n* changes:\n  Provide the Keystore feature in the framework.\n"
    },
    {
      "commit": "10e371f18247dc7fb64bfa0f0528501acc17be79",
      "tree": "630ce090cba0314696dd405f6cd3155773cc445a",
      "parents": [
        "a05487dd856222bacf57a41f2dfe1194d3776f05"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Jun 10 18:45:14 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Jun 11 17:28:40 2009 +0800"
      },
      "message": "Provide the Keystore feature in the framework.\n\n-- added the keystore library for Java application.\n-- changed the marshalling of the keystore function return.\n"
    },
    {
      "commit": "aba34d96fda75cbaaae19ce6296266feb24ce365",
      "tree": "ad16511c0c6344148345e79703360593f0462892",
      "parents": [
        "a05487dd856222bacf57a41f2dfe1194d3776f05"
      ],
      "author": {
        "name": "Satish Sampath",
        "email": "satish@android.com",
        "time": "Thu Jun 11 01:28:13 2009 +0100"
      },
      "committer": {
        "name": "Satish Sampath",
        "email": "satish@android.com",
        "time": "Thu Jun 11 10:24:26 2009 +0100"
      },
      "message": "Fix display of the selection background for search results.\n\nI\u0027ve used a simple approach of not drawing the solid background color for the selected item, thereby letting the default selection background to show through properly. This works by using the item\u0027s \u0027pressed\u0027 state and redraw code which are used by the listview during the tapping operation.\n"
    },
    {
      "commit": "a05487dd856222bacf57a41f2dfe1194d3776f05",
      "tree": "d655dfe985a0a0a2fd777a166b1570f7f21782db",
      "parents": [
        "b4ee0f930928fbbc425f29d3e3e09455cdc6cf85",
        "ce0959df5ca49cf8f726adddb65978da83e42544"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 00:59:06 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 00:59:06 2009 -0700"
      },
      "message": "Merge change 3800 into donut\n\n* changes:\n  Add SUGGEST_SPINNER_WHILE_REFRESHING column constant to the SearchManager for use in implementing Google suggestion refreshing in global search.\n"
    },
    {
      "commit": "a94945d3a1cf23caf33759eb1de84195d3fcb37b",
      "tree": "6772708efcfc53f5d15ffdfbd92a9146fb0a7e55",
      "parents": [
        "9bbc21a773cbdfbef2876a75c32bda5839647751"
      ],
      "author": {
        "name": "Tammo Spalink",
        "email": "tammo@google.com",
        "time": "Wed Jun 03 14:30:15 2009 +0800"
      },
      "committer": {
        "name": "Tammo Spalink",
        "email": "tammo@google.com",
        "time": "Thu Jun 11 15:24:43 2009 +0800"
      },
      "message": "make sms calculateLength radio-independent\n"
    },
    {
      "commit": "b4ee0f930928fbbc425f29d3e3e09455cdc6cf85",
      "tree": "3a6da5184d716b2c1222f38c42ee3942af495947",
      "parents": [
        "9bbc21a773cbdfbef2876a75c32bda5839647751",
        "aa25df2452f68d2f732ad620a97fd47b3802fa2e"
      ],
      "author": {
        "name": "Scott Main",
        "email": "nobody@android.com",
        "time": "Thu Jun 11 00:01:42 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 11 00:01:42 2009 -0700"
      },
      "message": "am aa25df24: AI 149729: fix search functionatilty for offline docs...   the file references weren\\\u0027t using the local root.   BUG\u003d1909300\n\nMerge commit \u0027aa25df2452f68d2f732ad620a97fd47b3802fa2e\u0027 into donut\n\n* commit \u0027aa25df2452f68d2f732ad620a97fd47b3802fa2e\u0027:\n  AI 149729: fix search functionatilty for offline docs...\n"
    },
    {
      "commit": "aa25df2452f68d2f732ad620a97fd47b3802fa2e",
      "tree": "5c86ec29e87244b83352c5063a9b1d26f1da6eb9",
      "parents": [
        "a8c3821e5a9017b557744bf3439b0cde5ace86db"
      ],
      "author": {
        "name": "Scott Main",
        "email": "nobody@android.com",
        "time": "Wed Jun 10 23:40:25 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 10 23:40:25 2009 -0700"
      },
      "message": "AI 149729: fix search functionatilty for offline docs...\n  the file references weren\u0027t using the local root.\n  BUG\u003d1909300\n\nAutomated import of CL 149729\n"
    },
    {
      "commit": "a8518c169bb34e540b7542ad5bd3891053d01a9f",
      "tree": "27257de3003b7340eab7d2b2fe562f3c96df0e66",
      "parents": [
        "2795c2d6b73f6e72565569f7d4f2f4b34e526bba"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jun 10 17:33:34 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jun 10 21:32:38 2009 -0700"
      },
      "message": "Renaming the Tts class to TextToSpeech for clarity.\nSwitching to HashMap for parameter lists to pass key-value parameter pairs.\nUsing TODO instead of FIXME in comments.\nRemoving methods that don\u0027t belong anymore to the TTS interface now the feature\nbecomes part of the platform.\n"
    },
    {
      "commit": "9bbc21a773cbdfbef2876a75c32bda5839647751",
      "tree": "f5e7274be3f4aee30f8894d5ba1ad90607793530",
      "parents": [
        "b6391d6377883586995127c9926c1b5b8035fd60"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 10 20:23:25 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 10 20:38:54 2009 -0700"
      },
      "message": "Flesh out restore interface on manager; work up most of LocalTransport\n"
    },
    {
      "commit": "b6391d6377883586995127c9926c1b5b8035fd60",
      "tree": "ad54cf85377933614b107401b8f5ace3d9698805",
      "parents": [
        "b3c5a8785bc643843117752d37769a1edfe9a9e2",
        "3718aaabe6259dcf86a3666ff92d16e4be5da555"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 19:50:22 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 19:50:22 2009 -0700"
      },
      "message": "Merge change 3857 into donut\n\n* changes:\n  Allow arrays of values for power profile data.\n"
    },
    {
      "commit": "3718aaabe6259dcf86a3666ff92d16e4be5da555",
      "tree": "1f5228a19fea42af66fa63da0fa76f0a2ebb01c6",
      "parents": [
        "b81645c868b3d596b5ac56822959feb629a8651e"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Tue Jun 09 06:32:35 2009 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Wed Jun 10 19:45:28 2009 -0700"
      },
      "message": "Allow arrays of values for power profile data.\n\nParse arrays for data that has different levels with non-linear\npower increase.\nTrack radio data awake_time from kernel and mobile/total data\ntransfers.\nUse dummy values for default power_profile.xml. Actual values will\nbe in a product overlay.\n"
    },
    {
      "commit": "b3c5a8785bc643843117752d37769a1edfe9a9e2",
      "tree": "1a2bb990c308c2a0578fc9bb9475698029a44886",
      "parents": [
        "238bf47a850532233ed51362dca95facf8680770"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jun 10 18:38:50 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Wed Jun 10 18:38:50 2009 -0700"
      },
      "message": "Made the platform TTS service aware of the path for the default TTS library to load.\n"
    },
    {
      "commit": "238bf47a850532233ed51362dca95facf8680770",
      "tree": "9498825684544f5d61e24357c580d74a8384f44a",
      "parents": [
        "1d7d5db74f14e871c7be719a0cddf52a5a40dcbf",
        "4686657cee6411eb00235d49b4a8663a96361a00"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 17:32:21 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 17:32:21 2009 -0700"
      },
      "message": "Merge change 3826 into donut\n\n* changes:\n  LocationManagerService: Fix logic error removing multiple dead receivers.\n"
    },
    {
      "commit": "4686657cee6411eb00235d49b4a8663a96361a00",
      "tree": "da44281bd79d89a085c14f8dfaa7aac5b4076675",
      "parents": [
        "a32b5f3252a58416f328399680395aa5fa936640"
      ],
      "author": {
        "name": "Simon Schoar",
        "email": "schoar@googlemail.com",
        "time": "Wed Jun 10 21:12:10 2009 +0200"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jun 10 20:23:31 2009 -0400"
      },
      "message": "LocationManagerService: Fix logic error removing multiple dead receivers.\n\nIf multiple receivers are dead, only the first one will be added.\nfound in http://code.google.com/p/android/issues/detail?id\u003d2651\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "1d7d5db74f14e871c7be719a0cddf52a5a40dcbf",
      "tree": "0477b41ffb585c817ec86fdff077f366cbe805b1",
      "parents": [
        "c7b31e3c3cd71129557d4bf9e3fbcebb9235aba5",
        "afbc17ead22cf150eba5d5273e1e51c6d11b529f"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 17:10:05 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 17:10:05 2009 -0700"
      },
      "message": "Merge change 3799 into donut\n\n* changes:\n  Turned on the windows media related test cases as the binary already integrated.\n"
    },
    {
      "commit": "c7b31e3c3cd71129557d4bf9e3fbcebb9235aba5",
      "tree": "adbd6cb9919f8bf7af80acda4e5cc1049f1ed425",
      "parents": [
        "2795c2d6b73f6e72565569f7d4f2f4b34e526bba"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 10 15:49:30 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 10 16:43:50 2009 -0700"
      },
      "message": "The rest of the basic flow for restore\n\nAlso moved the processOneBackup() implementation into the Thread class that runs\nthe backup sequence.\n"
    },
    {
      "commit": "ce0959df5ca49cf8f726adddb65978da83e42544",
      "tree": "04509ce5967ec33bf25a53df842f291cb00d5204",
      "parents": [
        "2795c2d6b73f6e72565569f7d4f2f4b34e526bba"
      ],
      "author": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Wed Jun 10 23:47:54 2009 +0100"
      },
      "committer": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Thu Jun 11 00:41:55 2009 +0100"
      },
      "message": "Add SUGGEST_SPINNER_WHILE_REFRESHING column constant to the SearchManager\nfor use in implementing Google suggestion refreshing in global search.\n"
    },
    {
      "commit": "2795c2d6b73f6e72565569f7d4f2f4b34e526bba",
      "tree": "6cbac878d8ce411596902d4c1a64b579efa94049",
      "parents": [
        "1f35bf18ade606810843c8ec10445fc884d686cb",
        "4be0d4378c3d9c79a094e99ce429907f1e9eda5f"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 16:38:12 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 16:38:12 2009 -0700"
      },
      "message": "Merge change 3806 into donut\n\n* changes:\n  Fix a couple null pointer exceptions in CDMA voice call handling.\n"
    },
    {
      "commit": "1f35bf18ade606810843c8ec10445fc884d686cb",
      "tree": "ea05c5ef3ef10c5f769ce1df824d396ebaa97b04",
      "parents": [
        "e5fb328825995aa33b5b7ecf8b5bee2b17f81715",
        "8eb241b877d78cb665e99c6412876ebb1e5c0939"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 16:24:01 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 16:24:01 2009 -0700"
      },
      "message": "Merge change 3795 into donut\n\n* changes:\n  URI/extra data for inline scheme.\n"
    },
    {
      "commit": "afbc17ead22cf150eba5d5273e1e51c6d11b529f",
      "tree": "2017f9d92c4560ba65799e2b8e82a0f6cc6c17b7",
      "parents": [
        "54d632468c0cd53087d17420d9d383bc29553d36"
      ],
      "author": {
        "name": "Yu Shan Emily Lau",
        "email": "yslau@google.com",
        "time": "Wed Jun 10 15:46:32 2009 -0700"
      },
      "committer": {
        "name": "Yu Shan Emily Lau",
        "email": "yslau@google.com",
        "time": "Wed Jun 10 15:46:32 2009 -0700"
      },
      "message": "Turned on the windows media related test cases as the binary already integrated.\n"
    },
    {
      "commit": "e5fb328825995aa33b5b7ecf8b5bee2b17f81715",
      "tree": "4b6ca87aaf21dd587e1d033f5ba3318c4329698f",
      "parents": [
        "ca436e24dec0fa258a8a756c3e7d07bcb096c5b3"
      ],
      "author": {
        "name": "Mitsuru Oshima",
        "email": "oshima@google.com",
        "time": "Tue Jun 09 21:16:08 2009 -0700"
      },
      "committer": {
        "name": "Mitsuru Oshima",
        "email": "oshima@google.com",
        "time": "Wed Jun 10 15:22:17 2009 -0700"
      },
      "message": "resolution support fix/improvement\n    * adding compatibility menu\n    * backup gravity\n    * set expanable\u003dtrue if the screen size is hvga * density.\n    * added \"supports any density\" mode. I\u0027ll add sdk check later.\n    * disallow to catch orientation change event if the app is not expandable. This\n      was causing layout problem under non-expandable mode. I discussed this with Mike C\n      and we agreed to do this approach for now. We\u0027ll revisit if this causes problem to\n      a lot of applications.\n"
    },
    {
      "commit": "ca436e24dec0fa258a8a756c3e7d07bcb096c5b3",
      "tree": "d1b0a9b09ac63b894bb36b89581c4089fa188a55",
      "parents": [
        "f50ab7f46296786f575b2d171ec05a661d129015",
        "1b201687de7aa07825969480b14113d76f55e993"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:20:55 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:20:55 2009 -0700"
      },
      "message": "Merge change 3782 into donut\n\n* changes:\n  Reimport Portuguese translations.\n"
    },
    {
      "commit": "8eb241b877d78cb665e99c6412876ebb1e5c0939",
      "tree": "4f298162528efe0223a8397c99ee3e9d5126c2df",
      "parents": [
        "3279fbad638bd48b8e52a528d75bb5aa4757f81c"
      ],
      "author": {
        "name": "Mitsuru Oshima",
        "email": "oshima@google.com",
        "time": "Wed Jun 10 15:18:08 2009 -0700"
      },
      "committer": {
        "name": "Mitsuru Oshima",
        "email": "oshima@google.com",
        "time": "Wed Jun 10 15:18:08 2009 -0700"
      },
      "message": "URI/extra data for inline scheme.\n"
    },
    {
      "commit": "f50ab7f46296786f575b2d171ec05a661d129015",
      "tree": "2bf4ab6d8491e3a001c242c5a191acd614f9d027",
      "parents": [
        "a45711aaebc514290fdf0c93f07a3120dc160ddb",
        "e51d57f4ab035cd9bc316cc0f93a200d326ef5f9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:17:15 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:17:15 2009 -0700"
      },
      "message": "Merge change 3777 into donut\n\n* changes:\n  Process the response of RIL_REQUEST_REPORT_SMS_MEMORY_STATUS.\n"
    },
    {
      "commit": "a45711aaebc514290fdf0c93f07a3120dc160ddb",
      "tree": "68fd6b8f3bf83e7b17bcbfa9d1d1e0df6ff53081",
      "parents": [
        "732912a103e985520dba9c022a40bc21b4c4ced5",
        "85427f71a410e7165c11598ed41eaaa75b8d6acd"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:11:52 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:11:52 2009 -0700"
      },
      "message": "Merge change 3765 into donut\n\n* changes:\n  Add a gservices flag to limit the size of protobufs we can gzip\n"
    },
    {
      "commit": "732912a103e985520dba9c022a40bc21b4c4ced5",
      "tree": "bb814fc5c48542187b399f3c8b960a13bbdc55b0",
      "parents": [
        "f31cbbf54ef8d44247c6f612429122a62335c11b",
        "f85aa5a4d4e6f1ef7e07638568e27d709b8085c6"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:09:37 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:09:37 2009 -0700"
      },
      "message": "Merge change 3730 into donut\n\n* changes:\n  Restructuring the TTS files so that it works as a Service\n"
    },
    {
      "commit": "1b201687de7aa07825969480b14113d76f55e993",
      "tree": "f62b80f6a94fc484b7dc0fe074bfa83035e202e9",
      "parents": [
        "f31cbbf54ef8d44247c6f612429122a62335c11b"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Wed Jun 10 15:08:06 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Wed Jun 10 15:08:06 2009 -0700"
      },
      "message": "Reimport Portuguese translations.\n"
    },
    {
      "commit": "f31cbbf54ef8d44247c6f612429122a62335c11b",
      "tree": "311dc2fb78539a739041cce1867509d636324acd",
      "parents": [
        "4a60b887d4b9744126e62b094a9597ee8e924640",
        "06882f8effe0f69fb689c46b4fe876329ce60ada"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:03:06 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:03:06 2009 -0700"
      },
      "message": "Merge change 3760 into donut\n\n* changes:\n  Enable HierarchyViewer on debuggable builds, even if they\u0027re secure.\n"
    },
    {
      "commit": "4a60b887d4b9744126e62b094a9597ee8e924640",
      "tree": "3bf28801626bf6ee7484b1f908fa124feae8f045",
      "parents": [
        "b11e670e56b30022dbaaa921390005a95dfd337b",
        "2ab6f1fe0b17d281ea215f8ca412a5e1992011cc"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:03:06 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:03:06 2009 -0700"
      },
      "message": "Merge change 3761 into donut\n\n* changes:\n  Added support to record page load time for each url.\n"
    },
    {
      "commit": "b11e670e56b30022dbaaa921390005a95dfd337b",
      "tree": "06f4dba3ac8e5f16f888d8da9f7ace38574c8cb2",
      "parents": [
        "684a2edbe192a2a76684c5d6855773196d2e1a2e",
        "84c863d9af1270a2ccd2ccd2b8c1a753826dfe6d"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:03:06 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 15:03:06 2009 -0700"
      },
      "message": "Merge change 3754 into donut\n\n* changes:\n  Fix some 12- vs 24-hour problems in the FormatDateRange strings.\n"
    },
    {
      "commit": "85427f71a410e7165c11598ed41eaaa75b8d6acd",
      "tree": "aa4a0b1aaaedde419e06cc8165b7312856832286",
      "parents": [
        "0e7cf6366b657498e51b7c7a433b80cfb83152cb"
      ],
      "author": {
        "name": "Cynthia Wong",
        "email": "cynthiaw@google.com",
        "time": "Wed Jun 10 14:42:42 2009 -0700"
      },
      "committer": {
        "name": "Cynthia Wong",
        "email": "cynthiaw@google.com",
        "time": "Wed Jun 10 14:51:19 2009 -0700"
      },
      "message": "Add a gservices flag to limit the size of protobufs we can gzip\n"
    },
    {
      "commit": "06882f8effe0f69fb689c46b4fe876329ce60ada",
      "tree": "116d5118aab10439c42c00c9d889a8655d53b9f2",
      "parents": [
        "b81645c868b3d596b5ac56822959feb629a8651e"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Wed Jun 10 13:36:04 2009 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Wed Jun 10 14:44:11 2009 -0700"
      },
      "message": "Enable HierarchyViewer on debuggable builds, even if they\u0027re secure.\n\nThat will let us (finally) use the tool on userdebug builds.\n"
    },
    {
      "commit": "4be0d4378c3d9c79a094e99ce429907f1e9eda5f",
      "tree": "4fbfdfb65fcae7488f4d8e82685d6faf8e07b517",
      "parents": [
        "ce8436f52e7f2c80f94e43d80d28cc962b7ff83b"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jun 10 14:35:28 2009 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jun 10 14:35:28 2009 -0700"
      },
      "message": "Fix a couple null pointer exceptions in CDMA voice call handling.\n"
    },
    {
      "commit": "2ab6f1fe0b17d281ea215f8ca412a5e1992011cc",
      "tree": "a7335c6f74566e77daeaa5c9833f7073dd3fa83d",
      "parents": [
        "137c45036699eeceb061a47ab14d9a7eb860674d"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Wed Jun 10 13:37:03 2009 -0700"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Wed Jun 10 13:37:03 2009 -0700"
      },
      "message": "Added support to record page load time for each url.\n"
    },
    {
      "commit": "f85aa5a4d4e6f1ef7e07638568e27d709b8085c6",
      "tree": "9e553efa92802cb6370c42509f91ec6a5df1733a",
      "parents": [
        "295e7248b11557cf80ee9b7a12009d9cec5bd8b0"
      ],
      "author": {
        "name": "Charles Chen",
        "email": "clchen@google.com",
        "time": "Wed Jun 10 10:39:55 2009 -0700"
      },
      "committer": {
        "name": "Charles Chen",
        "email": "clchen@google.com",
        "time": "Wed Jun 10 13:31:09 2009 -0700"
      },
      "message": "Restructuring the TTS files so that it works as a Service\n"
    },
    {
      "commit": "84c863d9af1270a2ccd2ccd2b8c1a753826dfe6d",
      "tree": "a5c0d1062e8ae70c031b4a34d572ff12f346f46b",
      "parents": [
        "295e7248b11557cf80ee9b7a12009d9cec5bd8b0"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Wed Jun 10 12:10:22 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Wed Jun 10 12:46:13 2009 -0700"
      },
      "message": "Fix some 12- vs 24-hour problems in the FormatDateRange strings.\n\nUse a resource instead of a hardcoded string for the 24-hour format\nsince it is not exactly the same in every locale.\n\nMake sure the 12-hour format is actually for a 12-hour clock, even in\nlocales where this is not a normal thing to do.  In the cap_ampm version,\ndo not have it try to capitalize \"am\" and \"pm\" if these are non-ASCII\nstrings, since strftime() doesn\u0027t know about Unicode and will mess it up.\n\nAdd a comment so that people don\u0027t think the YEAR_IN_MILLIS constant is\nactually the length of any real year.\n"
    },
    {
      "commit": "684a2edbe192a2a76684c5d6855773196d2e1a2e",
      "tree": "9508d82bfbc0ba14e9aac7cb5a01ca7b61ef4c1f",
      "parents": [
        "c0c0b6844e4e4cd3b872a80e51416cfd9ca124d9",
        "f878e2d80c3a0afefe3b018d232df6066379e1d5"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 12:36:45 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 12:36:45 2009 -0700"
      },
      "message": "Merge change 3577 into donut\n\n* changes:\n  Make aapt Error out when an overlay adds a string.\n"
    },
    {
      "commit": "c0c0b6844e4e4cd3b872a80e51416cfd9ca124d9",
      "tree": "9b9b6b6873a7a970d74b755875f8dc60ef155439",
      "parents": [
        "6b4b50b8079aa274727c3120f858179eb6259351",
        "a8c3821e5a9017b557744bf3439b0cde5ace86db"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "nobody@android.com",
        "time": "Wed Jun 10 12:32:04 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 10 12:32:04 2009 -0700"
      },
      "message": "am a8c3821e: AI 149721: Import Portuguese translations.\n\nMerge commit \u0027a8c3821e5a9017b557744bf3439b0cde5ace86db\u0027 into donut\n\n* commit \u0027a8c3821e5a9017b557744bf3439b0cde5ace86db\u0027:\n  AI 149721: Import Portuguese translations.\n"
    },
    {
      "commit": "e51d57f4ab035cd9bc316cc0f93a200d326ef5f9",
      "tree": "b94bdeb188b4d653c25dec751e9611688a4b6ba9",
      "parents": [
        "6b4b50b8079aa274727c3120f858179eb6259351"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Jun 10 12:25:02 2009 -0700"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Jun 10 12:26:07 2009 -0700"
      },
      "message": "Process the response of RIL_REQUEST_REPORT_SMS_MEMORY_STATUS.\n"
    },
    {
      "commit": "a8c3821e5a9017b557744bf3439b0cde5ace86db",
      "tree": "92713b0859a3faaa3a2d42fde5b71580c1676b21",
      "parents": [
        "b33940abca9d43891575f58a1107c8ec247afed1"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "nobody@android.com",
        "time": "Wed Jun 10 12:25:58 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 10 12:25:58 2009 -0700"
      },
      "message": "AI 149721: Import Portuguese translations.\n\nAutomated import of CL 149721\n"
    },
    {
      "commit": "41d2676dd634f6d0152181a622e8a6c90b062a3a",
      "tree": "0b99770c213191ac7d7a8ea8f8b6e3ec88a3f3fa",
      "parents": [
        "df01deaacff82b918b4f0ba774d5ad3087543629"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Wed Jun 10 11:55:55 2009 -0700"
      },
      "committer": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Wed Jun 10 11:55:55 2009 -0700"
      },
      "message": "DO NOT MERGE.\n\nMerge 2391 from master to donut.\n\nAdded postUrl() to WebView so that we can pass lat/lon for the search.\n"
    },
    {
      "commit": "6b4b50b8079aa274727c3120f858179eb6259351",
      "tree": "70962a6afd32685be24669fbe696cf6132f24b01",
      "parents": [
        "218ebf1274d5eefc59c55cdc60d83d61faeb5c1b",
        "53175148c9b962c0ffe9cea0f3dc68bc0196e044"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 11:41:49 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 10 11:41:49 2009 -0700"
      },
      "message": "Merge change 2900 into donut\n\n* changes:\n  Add support for custom tab views in TabHost and TabWidget.\n"
    }
  ],
  "next": "53175148c9b962c0ffe9cea0f3dc68bc0196e044"
}
