)]}'
{
  "log": [
    {
      "commit": "aba28e7fecb06adab8de51619b2929b640369e83",
      "tree": "60ac494d70a72b7a565ee01af856c785372c32cb",
      "parents": [
        "a7cb8254943163606aa9339a0a8ba8930c7cafd9",
        "3ff98beeafd271a65c1f824699431366882b04f6"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 22 17:59:10 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 17:59:10 2011 -0700"
      },
      "message": "Merge \"Deprecate two methods in MediaRecorder.java class\""
    },
    {
      "commit": "3ff98beeafd271a65c1f824699431366882b04f6",
      "tree": "ea0e8969920b5614ffc0edf47f26ccd7292eb977",
      "parents": [
        "ac4159549c10dbe428d42980278c0e43ecc8d93f"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Jul 21 10:36:03 2011 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Fri Jul 22 11:45:50 2011 -0700"
      },
      "message": "Deprecate two methods in MediaRecorder.java class\n\nChange-Id: I98fbe628fe77867b97c04f44458948ede2f49d22\n"
    },
    {
      "commit": "7793719ca97571f5b3636d5a89cb067c71d627bd",
      "tree": "99c4feecc245c3676534d6367f181fa4c683a6b7",
      "parents": [
        "4ac052688a3011e3a174c78d75898e6888075720",
        "988323c57bd25a58f05dfa492d9b9c8ab62c5153"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Thu Jul 21 22:59:48 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 22:59:48 2011 -0700"
      },
      "message": "Merge \"Create TextServiceManager and SpellCheckerService\""
    },
    {
      "commit": "988323c57bd25a58f05dfa492d9b9c8ab62c5153",
      "tree": "ee817ff3950a064cd3546294c9428ec41c8e7cee",
      "parents": [
        "b4cd566767f736e723acb5444cbfb26117a2fbb8"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Jun 22 16:38:13 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 22 14:52:21 2011 +0900"
      },
      "message": "Create TextServiceManager and SpellCheckerService\n\nBug: 4176026\n\nThis CL inherits https://android-git.corp.google.com/g/112600\n\nSpec of TextServiceManager\n- Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..)\n    for each locale\n\nSpec of SpellCheckerService\n- Returns whether the given string is a correct word or not\n- Returns Suggestions for the given string\n\nChange-Id: Iaa425c7915fe70767ad0b17bf6c6fbcd2a1200b2\n"
    },
    {
      "commit": "7ebb0bb15799a53e1a0ea226d1bb8cdcb9fa1d5b",
      "tree": "f22022b655aa271d2b23d42a466544d4e099cba3",
      "parents": [
        "3372c1ef78f1c22d99dfe2aea47622f208bfc8c1",
        "038f1c80af06da55056120e121d43e3ee89ec726"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 21 18:22:02 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 18:22:02 2011 -0700"
      },
      "message": "Merge \"Bug 5061529 - Save/restore action view state for menu items across invalidations.\""
    },
    {
      "commit": "038f1c80af06da55056120e121d43e3ee89ec726",
      "tree": "ac772c49315ad51d4a11be67857ffb1c59f2905e",
      "parents": [
        "d7a374f6f8f52a88d7e9a4660d9bf9037cf0b659"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 21 14:28:10 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 21 16:10:01 2011 -0700"
      },
      "message": "Bug 5061529 - Save/restore action view state for menu items across\ninvalidations.\n\nThis includes expand/collapse state.\n\nAdd CollapsibleActionView interface. Views can implement this to have\nspecial behavior when they are presented as an expanding/collapsing\naction view. This lets SearchView and others take care of fiddly\nbehavior (focus stealing; opening the IME) automatically without apps\nneeding to implement this themselves.\n\nChange-Id: Ibbd1eb5fcf3e3a862419e9344ad50f896bd05e36\n"
    },
    {
      "commit": "6ee8c2495dd444ed4687489325b61ec6ebd75cba",
      "tree": "83fd39b6ca6ab16f6e7bb55425af6631803d4377",
      "parents": [
        "d7a374f6f8f52a88d7e9a4660d9bf9037cf0b659",
        "7eabe55db6b113f83c2cefcd06812648927de877"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jul 21 15:31:59 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 15:31:59 2011 -0700"
      },
      "message": "Merge \"Add looper profiling to adb shell am\""
    },
    {
      "commit": "7eabe55db6b113f83c2cefcd06812648927de877",
      "tree": "a105d90d8addbce9bb457b4bef974ce2f699fc81",
      "parents": [
        "ac4159549c10dbe428d42980278c0e43ecc8d93f"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jul 21 14:56:34 2011 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jul 21 14:56:34 2011 -0700"
      },
      "message": "Add looper profiling to adb shell am\n\nTo profile the looper, run the following command:\n\nadb shell am profile looper start \u003cprocess\u003e \u003cfile\u003e\nadb shell am profile looper stop \u003cprocess\u003e\n\nChange-Id: I781f156e473d7bdbb6d13aaffeeaae88bc01a69f\n"
    },
    {
      "commit": "d2bea209658c1e2b7575cddf4338d44e305ee554",
      "tree": "6ea08b5fe8c2a8c64927271e24d7f71f4874e42e",
      "parents": [
        "d24cd90486821535fb058531fac54aa5b9360693",
        "31a41d35f64c016c63eebaaceff938a0ca40b122"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Thu Jul 21 13:33:13 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 13:33:13 2011 -0700"
      },
      "message": "Merge \"Bug 4534376: Suggestion popup is not clipped.\""
    },
    {
      "commit": "31a41d35f64c016c63eebaaceff938a0ca40b122",
      "tree": "a83472883148fabf4afefba1b863b61bcd3b0fc7",
      "parents": [
        "040c2f91ed0968f3193031cabbf51b756930adc7"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Mon Jul 11 13:18:40 2011 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Thu Jul 21 10:49:50 2011 -0700"
      },
      "message": "Bug 4534376: Suggestion popup is not clipped.\n\nThis happened when the popup was larger than the screen because of a very long suggestion.\nThe text will now be ellipsized with a marquee (better than using 2 lines I believe).\n\nAlso removed the up layout that was intended to be used when the popup did not fit vertically.\nThe popup is moved up instead if needed.\n\nChange-Id: Ie741610e74ade10c691614f1c30d0e17b213c698\n"
    },
    {
      "commit": "d7b3e6a39b6b2e155b24ef470023bafb3b9fa35a",
      "tree": "7d5a14135139a8a92f2af3e9ff40426ba886174d",
      "parents": [
        "edf0178265efee73da80754d1d76e3d69e1f593f"
      ],
      "author": {
        "name": "Isaac Levy",
        "email": "ilevy@google.com",
        "time": "Wed Jul 20 18:15:30 2011 -0700"
      },
      "committer": {
        "name": "Isaac Levy",
        "email": "ilevy@google.com",
        "time": "Thu Jul 21 10:34:56 2011 -0700"
      },
      "message": "WifiWatchdogSM notification for first wifi disable\n\nAlso moved customizable settings into Settings.Secure and\nadded listeners for setting changes into the state machine.\n\nChange-Id: Ia6859c71f7edae13062685867959adc423af4643\n"
    },
    {
      "commit": "92d3532b9330dcb5fea10dd662ca9221cd7bbd66",
      "tree": "18c84624cb85ab6b232e32afe11c5b01c8baa682",
      "parents": [
        "7d62990bada5b84e7d94a187652ed78aad438da1"
      ],
      "author": {
        "name": "Jesse Wilson",
        "email": "jessewilson@google.com",
        "time": "Wed Jul 20 12:57:38 2011 -0700"
      },
      "committer": {
        "name": "Jesse Wilson",
        "email": "jessewilson@google.com",
        "time": "Wed Jul 20 12:57:38 2011 -0700"
      },
      "message": "Appease Doclava for ReferenceQueue.remove()\n\nBug: http://b/5050245\nChange-Id: I1a5483b01c9e27d990c5ea1758539aa423bf7616\n"
    },
    {
      "commit": "32911e72af9e8cc62ddd094aebac4d3d075badcb",
      "tree": "df1bd2d7cb539c1510df6820d07da7c32fffbd86",
      "parents": [
        "7288ebd8e5ce44b782e919d296caddce9f5192fa",
        "040e6b302cc47afbda9d8d08ac3b02c8192eccab"
      ],
      "author": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Wed Jul 20 12:43:26 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 12:43:26 2011 -0700"
      },
      "message": "Merge \"Updates and fixes for the social stream API.\""
    },
    {
      "commit": "e23fc20e5453ea4c80a188a72953312faa3959be",
      "tree": "1e147286905088b356984732620b640706b2f22d",
      "parents": [
        "1180644280a38f77756926531037bfd7b9f1974c",
        "cdf95e31024d235b51c7e6076ea2afc990f460cd"
      ],
      "author": {
        "name": "Debashish Chatterjee",
        "email": "debashishc@google.com",
        "time": "Wed Jul 20 11:54:56 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 11:54:56 2011 -0700"
      },
      "message": "Merge \"Removed READ_WRITE_ALL_VOICEMAILS permission from framework.\""
    },
    {
      "commit": "1180644280a38f77756926531037bfd7b9f1974c",
      "tree": "2f23a41e0dae417a19721d65bebb58d72bec6d8e",
      "parents": [
        "5531a3a3cfce0fe0dd279cdce2de30cf777f5227"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Jul 19 18:09:20 2011 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Jul 20 11:38:59 2011 -0700"
      },
      "message": "Fix bug #4772392 Check what needs to be done for RTL specific new attributes that are in public.xml\n\n- cleanup public.xml\n- make BiDiTest makefile non visible to the build system\n- provide file for injecting the new attributes by hand\n\nChange-Id: I5037ec323066ebd254be51fff7070a5a0101dff7\n"
    },
    {
      "commit": "040e6b302cc47afbda9d8d08ac3b02c8192eccab",
      "tree": "82ec1ddd2b2dfc1923ece8a39e0b091445e8abcf",
      "parents": [
        "5531a3a3cfce0fe0dd279cdce2de30cf777f5227"
      ],
      "author": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Fri Jul 15 15:14:08 2011 -0700"
      },
      "committer": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Wed Jul 20 11:33:31 2011 -0700"
      },
      "message": "Updates and fixes for the social stream API.\n\n- Social stream photo updates should use the new photo storage\n  system instead of storing the image content in BLOBs.\n- Package names need to be text, not numbers.  The status update\n  documentation was incorrect.\n- Social stream photos will include a URI the caller can open to\n  get the photo content.\n- Removed the max photo bytes from the stream item limit query,\n  as we\u0027ll do appropriate resizing with the photo storage system.\n\nChange-Id: I103ee1340c1a3772ae37add3684b0658c241a49c\n"
    },
    {
      "commit": "cdf95e31024d235b51c7e6076ea2afc990f460cd",
      "tree": "765a1a62b82e575ca93ccb6eeb578494241f3c55",
      "parents": [
        "e8c3986b5c9377b0992bc77680954cb1b9f7f49b"
      ],
      "author": {
        "name": "Debashish Chatterjee",
        "email": "debashishc@google.com",
        "time": "Wed Jul 20 19:01:15 2011 +0100"
      },
      "committer": {
        "name": "Debashish Chatterjee",
        "email": "debashishc@google.com",
        "time": "Wed Jul 20 19:09:37 2011 +0100"
      },
      "message": "Removed READ_WRITE_ALL_VOICEMAILS permission from framework.\n\nThis permission is meant to be a \u0027signature\u0027 permission and to be used\nonly by the contacts app. We recently moved it to framework/base as part\nof opening up voicemail api into the SDK. However, the signature of\nframework is different from contacts app. Consequently the contacts app\nis not granted READ_WRITE_ALL_VOICEMAILS permission. This makes the\ncontacts app crash on start.\n\nThis fix removes the READ_WRITE_ALL_iVOICEMAILS from framework/base so\nthat the one defined in contacts provider is then used by the system.\n\nBug: 5054221\n\nChange-Id: Iaa7a23fe95b0142978eff124e25fe2291dc7d212\n"
    },
    {
      "commit": "e8c3986b5c9377b0992bc77680954cb1b9f7f49b",
      "tree": "6a14f3e18a89f371b57a29b74598274197f6911f",
      "parents": [
        "5a8ca580b078c7335d8ee384dd93dc86663d8d53",
        "5521e892f8b5b2313619405684d426309f66ade4"
      ],
      "author": {
        "name": "Debashish Chatterjee",
        "email": "debashishc@google.com",
        "time": "Wed Jul 20 05:34:01 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 05:34:01 2011 -0700"
      },
      "message": "Merge \"Voicemail content provider API for api council review.\""
    },
    {
      "commit": "5a8ca580b078c7335d8ee384dd93dc86663d8d53",
      "tree": "1f1c76e5bb7a5a67e6082594752ea01dba6ed10c",
      "parents": [
        "060e3cad11541bc534ead73dae5c23ef242060cd",
        "eaef351afcd586d5a84e80455f12f72fd12213ef"
      ],
      "author": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Tue Jul 19 22:06:34 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 22:06:34 2011 -0700"
      },
      "message": "Merge \"Add a getter for the active tag\""
    },
    {
      "commit": "eaef351afcd586d5a84e80455f12f72fd12213ef",
      "tree": "2ddb9736f00c7ac27ca7f46f40047387ca218cbb",
      "parents": [
        "588bf7a53e844473dc9be6828a893664935121de"
      ],
      "author": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Tue Jul 19 11:16:09 2011 +0300"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jul 19 22:04:22 2011 -0700"
      },
      "message": "Add a getter for the active tag\n\nChange-Id: I597e041867fba7efae41feea63fa196bc10e4aa2\n"
    },
    {
      "commit": "35435997c790ae7c78aa6ccfdfd4188bfa5ce4a7",
      "tree": "b0fd646329da9fdf91b082a83b12a19df65fce64",
      "parents": [
        "cf4cfc6fc88f204e2e496e37337f7e70809bbf6f",
        "3550ac919c492f3fbaebbf868f4df0d1ea7ee784"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Tue Jul 19 19:42:35 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 19:42:35 2011 -0700"
      },
      "message": "Merge \"Adding WifiInfo object in CONNECTED broadcast\""
    },
    {
      "commit": "1bfaf561b7c09388311f1834f17e057739cf587a",
      "tree": "b6571ef2dfca492d6d0f0f56f7acde64d294e37d",
      "parents": [
        "588bf7a53e844473dc9be6828a893664935121de"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Tue Jul 19 18:05:33 2011 -0700"
      },
      "committer": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Tue Jul 19 18:39:40 2011 -0700"
      },
      "message": "Adding resizeMinWidth/Height to AppWidgetProviderInfo\n\nChange-Id: I17dc27829938a3f25a664d8255965cf9b67cb17e\n"
    },
    {
      "commit": "3550ac919c492f3fbaebbf868f4df0d1ea7ee784",
      "tree": "6444a2dfe6f7a6c5aeab5318744d34c3b26c061b",
      "parents": [
        "6461c97331e9e672e2abd6a46eaaa7b948974484"
      ],
      "author": {
        "name": "Isaac Levy",
        "email": "ilevy@google.com",
        "time": "Thu Jul 07 09:17:29 2011 -0700"
      },
      "committer": {
        "name": "Isaac Levy",
        "email": "ilevy@google.com",
        "time": "Tue Jul 19 16:39:34 2011 -0700"
      },
      "message": "Adding WifiInfo object in CONNECTED broadcast\n\nAdding a parsable wifiinfo object in Connected broadcast, public api.\nThe connected broadcast only occurs on successful setup on the wifi\ninterface, so in normal use is very infrequent (once if the wifi\nsleeps, or once at new hotspots, etc...)\n\nWifiInfo objects are small, \u003c10 ints, \u003c5 short strings, and contain info\nthat could be useful to listeners, such as SSID.\n\nThe alternative is to the poll the Wifi Manager, using getConnectionInfo.\nBecause the Wifi Manager can update state in its own thread, polling the\nWifi Manager might result in an info object that\u0027s out of sync from the\nreceived broadcast.\n\nChange-Id: Iafcec77f45dd094ea84e6022b7a40e8952ae8137\n"
    },
    {
      "commit": "9d29d155c51a26d789cce2c4c24c659487c63554",
      "tree": "22732a4d73f44d16eb2366676fd7e78a347f47e8",
      "parents": [
        "9c14256b57e3537be4db4744a1f13edae511d7b7",
        "33651201375d3670672964503994c410b8eeed7b"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Jul 19 13:00:30 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 13:00:30 2011 -0700"
      },
      "message": "Merge \"add rebootWipeCache call to RecoverySystem API\""
    },
    {
      "commit": "33651201375d3670672964503994c410b8eeed7b",
      "tree": "2350c67d93932b3bf274207a4db69ad41329bbe7",
      "parents": [
        "7dde1c8ccce049378b8aa9e757b6f907040c8640"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Jul 19 12:45:09 2011 -0700"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Jul 19 12:45:09 2011 -0700"
      },
      "message": "add rebootWipeCache call to RecoverySystem API\n\nAlso remove the never-used encrypted-filesystem-via-recovery stuff\nthat was stripped out of recovery a while ago.\n\nChange-Id: I3349cba83daa9bc4765bd9b3f96d15000a801824\n"
    },
    {
      "commit": "f55df0e26a71b93bda2e10de7a5b2dd9ab843765",
      "tree": "b867597e100bdf0e0c1030a7982eb3a187d3bd0b",
      "parents": [
        "50c5d2be631612d283b1d1809ca41ab5f6643cf1",
        "10e09c69d659bf54d6efbe1a3660add7f8a39d6e"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Jul 19 11:16:20 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 11:16:20 2011 -0700"
      },
      "message": "Merge \"Add camera new picture and new video broadcast intents.\""
    },
    {
      "commit": "ba6e855453f055d358beead9cb50f3232a9e34e3",
      "tree": "1eeaf41872af38ddc5e7b93687be6d6fdb4c673f",
      "parents": [
        "c810fffe1ffda8876c083f10b5f2b3b197768809",
        "52fc810f73e0d8e005281e80a981e1ceed855850"
      ],
      "author": {
        "name": "Shimeng (Simon) Wang",
        "email": "swang@google.com",
        "time": "Tue Jul 19 10:31:52 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 10:31:52 2011 -0700"
      },
      "message": "Merge \"Add in i18n TLDs and new TLDs to the URL RegEx matcher.\""
    },
    {
      "commit": "52fc810f73e0d8e005281e80a981e1ceed855850",
      "tree": "2c97684a353fd8ba6527356fa42a62c38e8ace79",
      "parents": [
        "55421aa80edbc5fdd9ce43029845ca0bd6ecc4c6"
      ],
      "author": {
        "name": "Shimeng (Simon) Wang",
        "email": "swang@google.com",
        "time": "Mon Jul 18 17:24:14 2011 -0700"
      },
      "committer": {
        "name": "Shimeng (Simon) Wang",
        "email": "swang@google.com",
        "time": "Tue Jul 19 10:20:49 2011 -0700"
      },
      "message": "Add in i18n TLDs and new TLDs to the URL RegEx matcher.\n\nalso update APIs.\n\nissue: 4384739\nChange-Id: I946323d80f85fe43338fdc19c5858356faefa6cc\n"
    },
    {
      "commit": "5521e892f8b5b2313619405684d426309f66ade4",
      "tree": "dd7226e4934ee55d75525ef2b41b7e382ca551c3",
      "parents": [
        "35be3dee17fed3036ad40b9dd2ea3ee7504b3dc3"
      ],
      "author": {
        "name": "Debashish Chatterjee",
        "email": "debashishc@google.com",
        "time": "Thu Jul 07 10:48:31 2011 +0100"
      },
      "committer": {
        "name": "Debashish Chatterjee",
        "email": "debashishc@google.com",
        "time": "Tue Jul 19 14:42:19 2011 +0100"
      },
      "message": "Voicemail content provider API for api council review.\n\nThis is a new content provider implemented to add visual voicemail\nsupport in android.\n\nVoicemail content provider is the central repository for storing\nvoicemails inserted by various voicemail sources. The content provider\nalso exposes a status table to let the voicemail source application\nconvey its current status to the system.\n\nThe primary application that reads from this content provider is the phone app.\nThe phone app shows voicemails along with other call entries within the\ncall log and optionally any relevent message about the voicemail source\nstatus.\n\nThe implementation of this content provider can be found at\nhttps://android-git.corp.google.com/w/?p\u003dplatform/packages/providers/ContactsProvider.git;a\u003dblob;f\u003dsrc/com/android/providers/contacts/VoicemailContentProvider.java\n\nChange-Id: I8ad46aec20c70684f7bfa45530bbb90dd841d81a\n"
    },
    {
      "commit": "4273ed652ae9ea2af0a77b6d59a183ebce53a680",
      "tree": "f266c898cd8b72f6819d049d2ab6d3cdf3dec98b",
      "parents": [
        "d61752d7e6f546dcd41018bd8371a9a9617fe66d",
        "91e88122cf28a48fd2e2260da7d3d87dd437227a"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Jul 18 20:42:54 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 20:42:54 2011 -0700"
      },
      "message": "Merge \"Enable IMEs to set additional subtypes in background\""
    },
    {
      "commit": "f178737f823cf22d9a07df6f51071b7189a95e7e",
      "tree": "5f6f1ed041368405e44b3748dda328e763a1d2d5",
      "parents": [
        "c27cc947e42b1effb5f6d18e0d6a8a1055f271d9"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 14 22:37:06 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Jul 18 16:32:00 2011 -0700"
      },
      "message": "Fix bug 5031652 - offer a way to associate metadata with an ActionMode\n\nChange-Id: Ic9d453b5c58eea922ec65423801e008d953bb25b\n"
    },
    {
      "commit": "c27cc947e42b1effb5f6d18e0d6a8a1055f271d9",
      "tree": "1621722afbee1e27c129185952208892f45dd645",
      "parents": [
        "6dd005b48138708762bfade0081d031a2a4a3822",
        "00db5195abf32f4581386b3f0a32137432f795e1"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Jul 18 16:29:53 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 16:29:53 2011 -0700"
      },
      "message": "Merge \"Make the theme attribute actionModeStyle public.\""
    },
    {
      "commit": "00db5195abf32f4581386b3f0a32137432f795e1",
      "tree": "fbcbf5b431df03ab446ed9074612a2abe574e0bc",
      "parents": [
        "c79c0792a442e049726036682596664424fa1776"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Jul 18 16:28:55 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Jul 18 16:28:55 2011 -0700"
      },
      "message": "Make the theme attribute actionModeStyle public.\n\nChange-Id: I53cd5e88dbd9df83c3e171277ce4a4da5faf8a8c\n"
    },
    {
      "commit": "822036d00eecd5fb7c48260bdb7f649f627efbd2",
      "tree": "a828431682f1a44ef60910e1ba4355d2dcdab133",
      "parents": [
        "395765a9cb502929db6fd799fb3a9847b9e72495",
        "78f80b4e712519e2f918a096e574586d86fd689d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jul 18 16:03:08 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 18 16:03:08 2011 -0700"
      },
      "message": "Merge \"Fix issue # 5017868: Twitter crashes on start:\""
    },
    {
      "commit": "10e09c69d659bf54d6efbe1a3660add7f8a39d6e",
      "tree": "714332d200f74fb715b06e818eae5a5845482d77",
      "parents": [
        "5f81f1bcd9cdb15411bd4bb036b75ee6e822b8bf"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Mon Jul 18 09:09:41 2011 +0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Jul 19 06:19:26 2011 +0800"
      },
      "message": "Add camera new picture and new video broadcast intents.\n\nbug:4964321\nChange-Id: I42b45cda2e6a30f3bdf6127e2594933f32ecbaeb\n"
    },
    {
      "commit": "6be3d5561cbeccf0a8257a4acb155657f868e548",
      "tree": "c43a668998d17e26dee93e37e4702b5d45ab06c7",
      "parents": [
        "f4f79ac42a318145397327cd6a0d1f421c6c00f0"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jul 14 18:08:37 2011 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Jul 18 15:02:06 2011 -0700"
      },
      "message": "Add lock/unlockCanvas to TextureView\n\nWith this change, TextureView has feature parity with SurfaceView.\n\nChange-Id: I4ef2da33420fc9590f868636ae72a5a6de61965b\n"
    },
    {
      "commit": "78f80b4e712519e2f918a096e574586d86fd689d",
      "tree": "05ae5c562942d412083ee6f0c64838f125afda02",
      "parents": [
        "b5d4f97126d1b64630af659f90d40f6516a494f6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jul 18 13:20:04 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jul 18 13:20:04 2011 -0700"
      },
      "message": "Fix issue # 5017868: Twitter crashes on start:\n\nunable to resolve static field 106 (DEBUG) in Landroid/util/Config\n\nConfig was removed, but apparently some apps are actually using it.\nPut it back.\n\nChange-Id: Iebcb94b1158abc5e8c3dd9855068d2e9223d8999\n"
    },
    {
      "commit": "91e88122cf28a48fd2e2260da7d3d87dd437227a",
      "tree": "b448f50dfd296574e5dabc6a9393624ad4a39868",
      "parents": [
        "bd029f64f2c695d49ea169f4c5c107e8172a1de5"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Jul 18 11:11:42 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jul 19 04:59:48 2011 +0900"
      },
      "message": "Enable IMEs to set additional subtypes in background\n\nBug: 4591792\n\nChange-Id: I7e61a576c56d1a3a56001bdf2fd51ad3801add01\n"
    },
    {
      "commit": "35bfedeaba724aeadc6f6c890269cb6bf7ef42f5",
      "tree": "1f233a2109d33a10bdf1aaa2417cc7c244cfaf54",
      "parents": [
        "d94b71de3b465c9c113f5b09c7cd5f221370af23"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Jul 14 17:57:06 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Jul 18 12:44:08 2011 -0700"
      },
      "message": "Touch exploration separate setting and API to poll the latter state.\n\n1. Seperated touch exploration to be a seperate setting rather being\n   magically enabled by the system of accessiiblity is on the there\n   is at leas one accessibility service that speaks enabled. Now\n   there is a setting for requesting touch exploration but still the\n   system will enabled it only if that makes sense i.e. accessibility\n   is on and one accessibility service that speaks is enabled.\n\n2. Added public API for checking of touch exploration is enabled.\n\n3. Added description attribute in accessibility service declaration\n   which will be shown to the user before enabling the service.\n\n4. Added API for quick cloning of AccessibilityNodeInfo.\n\n5. Added clone functionality to SparseArray, SparseIntArray, and\n   SparseBooleanArray.\n\nbug:5034010\nbug:5033928\n\nChange-Id: Ia442edbe55c20309244061cd9d24e0545c01b54f\n"
    },
    {
      "commit": "c9b5970df57db1b7e17f88c61561e32fbee7d670",
      "tree": "ffe73be0ae1ab1772cfc59e6df145bbd20af2aa8",
      "parents": [
        "066836fce9a612fe58ed52ee980c56d809910e5b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Jul 17 15:23:09 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Jul 17 15:23:09 2011 -0700"
      },
      "message": "Fix build.\n\nChange-Id: I06243c668b85c0816fc7b1b8318bbcc28f88dc71\n"
    },
    {
      "commit": "9eebaf10e9f7432b9109928252ce621c65ca02b8",
      "tree": "095e910381fbf8d51079168f243bc8c7eb98457e",
      "parents": [
        "8d96f19692815aa14979c811a130b38eafc1bf65",
        "f5d4652e028c5a8ec3d151521e63c9c9191e9149"
      ],
      "author": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Fri Jul 15 17:41:36 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 15 17:41:36 2011 -0700"
      },
      "message": "Merge \"Use higher resolution in in-call UI if available.\""
    },
    {
      "commit": "f9284695e8c10dad4daf3d2c84f607483bcb56ca",
      "tree": "bb4d52d7d3f6d9b73c8ba23d55036d3f4cd1ba31",
      "parents": [
        "fed878d98bc42db61cf04d759235b8406a7d14fd"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jul 13 18:46:21 2011 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Fri Jul 15 11:25:11 2011 -0700"
      },
      "message": "Add new ViewDebug APIs to profile the event queue.\n\nChange-Id: I225bf288780b0244f459316e2765cfa29cd22c89\n"
    },
    {
      "commit": "37ccb4b55d72ff49461ddf227c6a42764f48a293",
      "tree": "f2a32be978f6c75fb45f15f7bbf8426f9c90a1ce",
      "parents": [
        "1af6d27b9eb7ae65ca927b5842a375e00880df9c",
        "c3da8818f0598b3ab2cd6f4168349da6d0f72cb1"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Jul 15 02:56:31 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 15 02:56:31 2011 -0700"
      },
      "message": "Merge \"Remove the completeAudioAvailable API.\""
    },
    {
      "commit": "f5d4652e028c5a8ec3d151521e63c9c9191e9149",
      "tree": "d10497ead8540f091654da2b7c3e9ed9622cdcb1",
      "parents": [
        "8cfe3d2d957d72e61222c1d51a44d1403aa73239"
      ],
      "author": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Thu Jul 14 22:16:21 2011 -0700"
      },
      "committer": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Thu Jul 14 22:16:21 2011 -0700"
      },
      "message": "Use higher resolution in in-call UI if available.\n\nIn the process, I created a second overload to the function that returns\nthe photo to allow returning either the high-res or the thumbnail version\n\nBug:5033899\n\nChange-Id: I7be257eb54b296445e20561d318a70c382d6ade9\n"
    },
    {
      "commit": "2c41fa18bb48bb82e710c2899bd87ad6f84066be",
      "tree": "b6654169a360c33123ec1890b50cb43f4de5cf57",
      "parents": [
        "eb2591f8f71907ded8bac947ba98ae6c24192e5f",
        "fe7e40dc0dabbe677308b87d0b5f538fc9161c7d"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Jul 14 15:31:03 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 14 15:31:03 2011 -0700"
      },
      "message": "Merge \"Fix bug #5025936 TableLayout layout direction resolution is broken\""
    },
    {
      "commit": "901e022c0c0923867e60c681f70412cfe6179e60",
      "tree": "85e8a7a35062ce7562754ad5e22b1a18f768142c",
      "parents": [
        "49062e3b4cae08e41a0fee5002eee50d58a827db",
        "83d3352cf7a67efd60732c0d40e5928f642f6808"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jul 14 13:38:55 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 14 13:38:55 2011 -0700"
      },
      "message": "Merge \"NEW_API: Add auto-exposure and auto-white balance locking to the Camera.\""
    },
    {
      "commit": "d44264a5eebbecc5ae02f9036d61b888d494e133",
      "tree": "0fe4d6dbc56afa90e919fb58306385130a4dc423",
      "parents": [
        "d1435e998b938e2d85b5ed24d83f3521452aaf81",
        "93cd6a6c78683643de51f9e698b38847bd1f1155"
      ],
      "author": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Thu Jul 14 11:32:09 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 14 11:32:09 2011 -0700"
      },
      "message": "Merge \"Rationalize API after adding maximum size feature.\""
    },
    {
      "commit": "c29f4e52c3377924df26910cce3ff26278d1f484",
      "tree": "f391051140c2d7e72cc8db5b4b2103470c27e646",
      "parents": [
        "b85f49e2a445612d1759a422349b0e52f7133b5b"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Jul 13 20:40:52 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 14 10:42:36 2011 -0700"
      },
      "message": "Nicer API for disabling/enabling the home/up button in action bars.\n\nHave an explicit call for enabling the home/up button. Auto-enable it\nif the app targets \u003c ICS to preserve Honeycomb behavior. Auto-enable\nit if the app shows home as up.\n\nThis prevents unwanted touch/focus feedback on the home button when\nthe app hasn\u0027t wired it up to do anything useful.\n\nChange-Id: Icfe95ab5a11b3998bca08b0fbbfe1bf6c3c89b5d\n"
    },
    {
      "commit": "83d3352cf7a67efd60732c0d40e5928f642f6808",
      "tree": "4e3315db41eb4d94ca0212d6b6a0fc563ec8bc2b",
      "parents": [
        "b39c07b14404eb8ab91fdbfa4560e503ab6cbe8d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri May 13 10:25:00 2011 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Thu Jul 14 10:05:04 2011 -0700"
      },
      "message": "NEW_API: Add auto-exposure and auto-white balance locking to the Camera.\n\nUnhides the Camera API calls for using the auto-exposure and\nauto-white balance locks. Adds documentation about the interaction\nbetween auto-focus and the AE and AWB locks.\n\nChange-Id: I5bf73b9dce1c93e11a17f9d3efb82db1261524c5\n"
    },
    {
      "commit": "c3da8818f0598b3ab2cd6f4168349da6d0f72cb1",
      "tree": "1a6b88171e41fd5780f1f6562f561412d6e4bec1",
      "parents": [
        "1a70f093273fb58e4c7778c8e064b4489c0bd7d8"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Jul 01 10:13:54 2011 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Jul 14 17:04:28 2011 +0100"
      },
      "message": "Remove the completeAudioAvailable API.\n\nMeasurements have shown that the audio track in streaming mode\nis pretty efficient as is, thanks to dalvik\u0027s JNI implementation.\n\nAlso, in streaming mode write( ) blocks until all data has been\ncopied to the mixer, which is the kind of behaviour we want so\nthat we don\u0027t have to explicitly block in our code. Also,\nthe java AudioTrack is thread-safe with respect to stop( ) calls\nduring write, which means we can do everything completeAudioAvailable\ndid, just as efficiently without it.\n\nChange-Id: I70a8a108d94c7260676673979b5ea29f37fa5db4\n"
    },
    {
      "commit": "93cd6a6c78683643de51f9e698b38847bd1f1155",
      "tree": "5e2ba751e7b06f2e3aacf3cb327d9b4781225559",
      "parents": [
        "64bd196fe4adf2d39b1e1bfd643043878c1714c0"
      ],
      "author": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Tue Jul 12 14:49:45 2011 -0700"
      },
      "committer": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Wed Jul 13 21:31:20 2011 -0700"
      },
      "message": "Rationalize API after adding maximum size feature.\n\n. Change name of Group to Spec\n\t(with the addition of the fglexibility field, this class no longer represents a group)\n\n. Replace overloaded Group/Spec constructors with factory method\n\n. Bugfix for measure() when alignmentMode \u003d\u003d ALIGN_BOUNDS\n\n. Bury as much Java API as possible, to minimize restrictions on future API enhancements\n\n\t- make all field access in Group package private\n\t- use factory methods in place of field assignment\n\nChange-Id: I46a5027a013bf7c3110b77108b8fd0427165cd18\n"
    },
    {
      "commit": "67671874dcba734fc78d39573aa68c0cbe8e2b24",
      "tree": "325f4136ce8b81f3832cba8c4f5f33fa544b8e3e",
      "parents": [
        "b328269531691a122a48b375676d1ec70b1e705f"
      ],
      "author": {
        "name": "Ben Dodson",
        "email": "bjdodson@google.com",
        "time": "Wed Jul 13 17:38:33 2011 -0700"
      },
      "committer": {
        "name": "Ben Dodson",
        "email": "bjdodson@google.com",
        "time": "Wed Jul 13 17:38:33 2011 -0700"
      },
      "message": "unhide public apis\n\nChange-Id: I3bbe0e7c1e135a4654f63c34c024d7aa10341279\n"
    },
    {
      "commit": "b6e5e7a740bf595a1a5d32b28549e5d579a04ee3",
      "tree": "b513cbf42822c4f49592cea46b5df58835234f8f",
      "parents": [
        "a1b68687de9d0048631ade3d5f4da6f08b6fe508",
        "a528237b807236bd09f01e915f4519b3c3c430c6"
      ],
      "author": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Wed Jul 13 16:23:44 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 13 16:23:44 2011 -0700"
      },
      "message": "Merge \"Contacts contract update for display photos.\""
    },
    {
      "commit": "e6d3d28a6b9a2a15d141ba2d44d7a33bb9c1f04a",
      "tree": "d5a53c13f54ca98acfc9e365890cb9505d1b1703",
      "parents": [
        "fd909a774cb384b139c5e360cadb2681c3f48c29"
      ],
      "author": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Wed Jul 13 15:35:05 2011 -0700"
      },
      "committer": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Wed Jul 13 15:35:05 2011 -0700"
      },
      "message": "Allow a sync adapter to provide an OPEN action for a group\n\nBug:4413120\nChange-Id: I17572204dc9fad3406d2505c83586b9dbce177b9\n"
    },
    {
      "commit": "a528237b807236bd09f01e915f4519b3c3c430c6",
      "tree": "9464a5a53b90a7b807487ee5a2e5fa8d5ef09b2b",
      "parents": [
        "9cba686366870b3a4c69bcec0eb4200352ce481d"
      ],
      "author": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Wed Jun 29 00:25:16 2011 -0700"
      },
      "committer": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Wed Jul 13 14:50:22 2011 -0700"
      },
      "message": "Contacts contract update for display photos.\n\nThis adds support for storing larger, hi-res photos in the contacts\nsystem.  Thumbnails continue to be stored in the Photo.PHOTO column\nas BLOBs, while hi-res versions of the photos are stored in the file\nsystem and referenced via a photo file ID (with metadata stored in\na new table).\n\nSee go/large-photo-design for details.\n\nChange-Id: Ie182eaa6a0330e2eca0a732f201f20a91e4dc584\n"
    },
    {
      "commit": "fe7e40dc0dabbe677308b87d0b5f538fc9161c7d",
      "tree": "adf13e45d9d1a85584245c7bd5cce6f1b1ee5a73",
      "parents": [
        "aa695940327f3d4dd48f29fd1c099b5f7f9fa23c"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Jul 13 12:47:36 2011 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Jul 13 14:15:35 2011 -0700"
      },
      "message": "Fix bug #5025936 TableLayout layout direction resolution is broken\n\n- check is the parent\u0027s view can do resolution when there is inheritance\n\nChange-Id: Ic21d4ee761982ee219229a95f170b6bf2e596b02\n"
    },
    {
      "commit": "76559a65ad9d644f10beacf8895ceb217fdd0aeb",
      "tree": "59db19da12e00e4f0646e01a11bb771d886f0eb0",
      "parents": [
        "3ac60ada279e2cd24001c0f084982b7e14532ea6"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 06 17:17:52 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 13 13:57:32 2011 -0700"
      },
      "message": "Polish of the ActivityChooserView and ShareActionProvider.\n\n1. Addressed the UX comments: ActivityChooserView\u0027s default selection\n   popup no longer shows a message, rather hightlights the default\n   action which now it displays. Alignemnt of the UI.\n\n2. The ShareActionProvider shows a sub-menu if the host item goes\n   on the overflow menu.\n\n3. Now the heade layout of the activity chooser view is not needed hence\n   dropped and the item and footer ones are merged.\n\nChange-Id: I0b3de623e4c0a805be9ed73a8541e66b8c00e2d2\n"
    },
    {
      "commit": "a6c53c79390e719ae425d38d6d80587e0d017ef3",
      "tree": "1394b3831265196a518b03bee010f7c220910fe4",
      "parents": [
        "c93ffea268b49e8697c767508dc5afe1a2338c05",
        "a3b6b95f9943b53d25d44a35082f817802d4eccd"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Jul 12 18:24:27 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 12 18:24:27 2011 -0700"
      },
      "message": "Merge \"Introduce TextView drawableStart and drawableEnd\""
    },
    {
      "commit": "961dd11895ce72e59bca124ef5bea4e4c1183099",
      "tree": "fb730ab1184258415ee27e21da1f1d9857a6658b",
      "parents": [
        "ad3f935ce9f3308edc62d56a0059e0761c720077"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Jul 12 14:25:23 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Jul 12 14:43:41 2011 -0700"
      },
      "message": "Update ActionProvider to support dynamically building submenus.\n\nStub out ShareActionProvider for building a submenu of activities to\nchoose from.\n\nChange-Id: Ibd9ada77a455ed1a296c87b6d967073ca0f676c2\n"
    },
    {
      "commit": "a3b6b95f9943b53d25d44a35082f817802d4eccd",
      "tree": "5475647dd26964f085bead608cd98b6c3916ebc8",
      "parents": [
        "aa695940327f3d4dd48f29fd1c099b5f7f9fa23c"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Jun 29 16:44:43 2011 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Jul 12 14:04:24 2011 -0700"
      },
      "message": "Introduce TextView drawableStart and drawableEnd\n\n- update also unit tests\n\nChange-Id: I20b82f5fea2cc48c93fd9e26eb03290ad730c08a\n"
    },
    {
      "commit": "d7bdc18f875c4fdd1848aa9b941109acc0f99635",
      "tree": "352a013b0c0c76de0afd74c745d5f48bdc9deba7",
      "parents": [
        "0870e814679b4cb4e2c74c7225a9414650a1c7c8"
      ],
      "author": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Fri Jun 24 15:39:39 2011 -0700"
      },
      "committer": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Mon Jul 11 17:24:45 2011 -0700"
      },
      "message": "Add data_set column for raw contacts and groups.\n\nThis provides a way for multiple sync adapters to exist for a single\naccount type.  Internally, for example, we can use these new columns\nto support separate sync adapters (and sourced data) for Focus,\nEmerald Sea, and Latitude.\n\nChange-Id: I1b8dfd79e9fb2dfcee6ac6d4adb947093f5c2324\n"
    },
    {
      "commit": "501c4671e73a484c1f01d94f4f5fff124c05f197",
      "tree": "2c2f30011f0828af0425d5fc46aa007c9edb22f5",
      "parents": [
        "9b40a61ce98b6adce4df046fce8d67d64630b379",
        "10e89712863f5b91a2982dc1783fbdfe39c1485d"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 11 13:37:53 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 11 13:37:53 2011 -0700"
      },
      "message": "Merge \"Eliminate single-process mode. Bug: 5010576\""
    },
    {
      "commit": "7f86c806ada21fc7a3feefd89d6fcb4282b0af40",
      "tree": "1080490b7c1cc0c572448ec411acf630c165f656",
      "parents": [
        "f81673d7670cb1978933a1599de7a2cb39f58b38"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Jul 01 15:09:24 2011 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Jul 11 10:39:29 2011 -0700"
      },
      "message": "Fix View reset of layoutDirection and textDirection\n\n- do it in onDetachedFromWindow()\n- make naming consistent too\n- update unit tests\n\nChange-Id: I320fcdbf75166bae793c4409e7344608b696667f\n"
    },
    {
      "commit": "10e89712863f5b91a2982dc1783fbdfe39c1485d",
      "tree": "7a268e40e03cfb2b65d3764b73d0ea42172965fa",
      "parents": [
        "b7440a140b650932bf31cf51d3b87c3249e3b682"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 18:52:57 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 19:54:07 2011 -0700"
      },
      "message": "Eliminate single-process mode.\nBug: 5010576\n\nChange-Id: Id450dc83efed4897d1e4ff451530fed14457aace\n"
    },
    {
      "commit": "36f469fa46bd009bfbc27d1350af5bde4a4dd378",
      "tree": "62d5d3e28419a227ec6f4d986c9e59ddd169a954",
      "parents": [
        "bb594dcdb40cc9df3ec061a753137adcb98ac715"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Jul 08 15:28:29 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Fri Jul 08 15:36:33 2011 -0700"
      },
      "message": "The COLORS!!\n\nAdd theme attributes and public color resources. Apps can now query\nthe current theme\u0027s various highlight colors. Commonly used color\nvalues for Holo are now available.\n\nChange-Id: If24dc9ee243e740e8caaddf0b78590783fa228c8\n"
    },
    {
      "commit": "3672696dc542674f8b54f83cd00c616b4a9fd4ad",
      "tree": "f8745bf5ade84f8a7c2a867be638998a6683c812",
      "parents": [
        "916a63a53ebaf0d33af287c1d8381d5d7aa3bcb7"
      ],
      "author": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Tue Jun 14 14:01:15 2011 -0700"
      },
      "committer": {
        "name": "RoboErik",
        "email": "epastern@google.com",
        "time": "Fri Jul 08 15:18:17 2011 -0700"
      },
      "message": "Unhide CalendarContract apis\n\nThis exposes the set of apis necessary to unbundle the Calendar\napp and sync adapters as well as allowing third party developers\nto officially access the calendar provider. This is the current\nfinal set of apis to expose, though changes may occur if we\ndiscover new issues. The documentation and CTS tests are still\nin progress.\n\nChange-Id: If77f9a1d49a26725b44b1014e8d088be7ffbc707\n"
    },
    {
      "commit": "7024e0b9020e4ec2d544d687c98c30bd21c2526c",
      "tree": "1debc8982cdaf0df2fb534e6d4df306c0018045f",
      "parents": [
        "69abbd8791f57f39a861c6f569da2f712bb6b5db",
        "7f8f79a1ff086c04a3ad2a442b1d39a8186e3e50"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 07 20:55:10 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 07 20:55:10 2011 -0700"
      },
      "message": "Merge \"Add ALL CAPS style to TextView/TextAppearance\""
    },
    {
      "commit": "7f8f79a1ff086c04a3ad2a442b1d39a8186e3e50",
      "tree": "3dea1c5b3b5a48bf3af6828b6d1520f6fa1c43e6",
      "parents": [
        "eea5be5447c759fcc11e587504ae172a4665db78"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 07 18:35:54 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 07 20:39:41 2011 -0700"
      },
      "message": "Add ALL CAPS style to TextView/TextAppearance\n\nSwitch out ugly hack in action menu items for the new style.\n\nChange-Id: I68a0ed62a352b14d499e6478b82bbc12dcb5a030\n"
    },
    {
      "commit": "e4827389e78770088be1c36b46b8d54922e8689f",
      "tree": "bfddfbaa6b8b4d708a256be20ea68fb578006816",
      "parents": [
        "f529c99c7ba410b246c53bc12109b6a464afa082",
        "ba862d1544a06528151550be1784a926ee986580"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Jul 07 15:50:41 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 07 15:50:41 2011 -0700"
      },
      "message": "Merge \"AllocationAdapter cleanup.\""
    },
    {
      "commit": "ba862d1544a06528151550be1784a926ee986580",
      "tree": "6364160be9fa7203abb85fc3e2e4a408c9d6cbea",
      "parents": [
        "0916350cef633a30822b0cc286457c69615ce69c"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Jul 07 15:24:42 2011 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Jul 07 15:24:42 2011 -0700"
      },
      "message": "AllocationAdapter cleanup.\n\nChange-Id: Ia7eb0925e410779bbd6a925af721e3834dcf83f8\n"
    },
    {
      "commit": "eea5be5447c759fcc11e587504ae172a4665db78",
      "tree": "b05a2faf74dcfabfe571c6b2c1bfb6fc1104a950",
      "parents": [
        "cb925e7a563d06dde5273b73033822a3bae0d4db",
        "160bb7fa60e8ece654e6ce999b6c16af50ee7357"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 07 14:35:22 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 07 14:35:22 2011 -0700"
      },
      "message": "Merge \"Action bar layout tweaks\""
    },
    {
      "commit": "6d836b606bbd2ff80f04f98e629ef8de52f8760f",
      "tree": "5c47389d114ebc04ac837e01f3eb7b03d88d0d94",
      "parents": [
        "b1b375ee08ae33edc79cb8cd2ba4c5697d5406de",
        "5d1a9840aaf57ae90716f0ac34abdcd09f7f4ed6"
      ],
      "author": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Thu Jul 07 14:30:31 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 07 14:30:31 2011 -0700"
      },
      "message": "Merge \"Simplify and tidy the API for maximum value support.\""
    },
    {
      "commit": "5d1a9840aaf57ae90716f0ac34abdcd09f7f4ed6",
      "tree": "4f55bb8da795bf4dc18377d69b2e61071211d9aa",
      "parents": [
        "b75a798471342da5e4624048c5516773dfecf4ca"
      ],
      "author": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Thu Jul 07 11:47:08 2011 -0700"
      },
      "committer": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Thu Jul 07 14:23:00 2011 -0700"
      },
      "message": "Simplify and tidy the API for maximum value support.\n\nAlso:\n\n. Remove CAN_SHRINK, FIXED from public view. These can be added later.\n\nChange-Id: I63a64ac4748605da60373c8e3c2109178b5260c2\n"
    },
    {
      "commit": "160bb7fa60e8ece654e6ce999b6c16af50ee7357",
      "tree": "1431d718977f1503b68f729589dbb24b528775a2",
      "parents": [
        "b1b375ee08ae33edc79cb8cd2ba4c5697d5406de"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 07 10:22:27 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jul 07 14:14:38 2011 -0700"
      },
      "message": "Action bar layout tweaks\n\nFix a Spinner issue that reported odd baselines\n\nFix detection of expandable items for action menus and allocation of cells\n\nUse the right asset for home-as-up in Theme.Holo.Light.SolidActionBar.Inverse\n\nAdd TextAppearance.Holo.Widget.ActionBar.Menu as a basis for further\nmenu item styling\n\nSync with design for tab/menu text appearance\n\nChange-Id: I32026bbde1cd4e15b6cda30d78d3d48250c84c94\n"
    },
    {
      "commit": "b1b375ee08ae33edc79cb8cd2ba4c5697d5406de",
      "tree": "e6bb9fccb17e7f3d7fdfc564dc22315289e181f8",
      "parents": [
        "a7987101d58ff3e7c4ad48bdaf1a765b6b7a022a",
        "f61970fc79e9c5cf340fa942597628242361864a"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jul 07 14:10:52 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 07 14:10:52 2011 -0700"
      },
      "message": "Merge \"Add an API to query maximum bitmap/texture size on Canvas.\""
    },
    {
      "commit": "f61970fc79e9c5cf340fa942597628242361864a",
      "tree": "c84c5593c85a3526dffa52eea2158a2332d819a8",
      "parents": [
        "a0c680393f2dd03a937c598b2cb9abf98a58152c"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jul 07 14:10:06 2011 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jul 07 14:10:06 2011 -0700"
      },
      "message": "Add an API to query maximum bitmap/texture size on Canvas.\n\nChange-Id: I2c576c9a4ecad9f33cc6636bcbc29786acdf052d\n"
    },
    {
      "commit": "fb7a1446c0cc1692304bf9827e3a01ccfc2eb4a7",
      "tree": "af7471767d02925acc5418803c92456c66ff23a7",
      "parents": [
        "484738f31c2f50976df3be2c863325da7b0d7a5b",
        "d414f108e70766b1a9d6f4e99201f960cfa45310"
      ],
      "author": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Thu Jul 07 13:34:59 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 07 13:35:00 2011 -0700"
      },
      "message": "Merge \"Contacts contract changes for social updates.\""
    },
    {
      "commit": "a72ef62e5c329a19eab9935acba816fc1369c637",
      "tree": "455918859dea96d36e8675a804151ff006e843a9",
      "parents": [
        "6d815e9dd00a5cb36554acb7b2f76f47c03cd7cf"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Jul 06 22:53:11 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Wed Jul 06 22:58:50 2011 -0700"
      },
      "message": "Add style/theme definitions for solid action bar configurations.\n\nChange-Id: I540e12ad3d8fc779dac24402286d995f542b5d25\n"
    },
    {
      "commit": "74e6bd7b7783fb506d7525e9ba40aac980745eaf",
      "tree": "ba5021a7f07abdbf6c2766973c50f4d8e614c8f0",
      "parents": [
        "28db8b944a589b9db0474c90e64875c6023292bb",
        "ca43c458ad0ee8cfa7f5eabc8ba1a65ae473976b"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jul 06 14:59:21 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 06 14:59:21 2011 -0700"
      },
      "message": "Merge \"New KeyChain API for credential installation\""
    },
    {
      "commit": "79ec80db70d788f35aa13346e4684ecbd401bd84",
      "tree": "fd18f64033def7461692f9542bf9e5f01afe2fe0",
      "parents": [
        "be87cc945b5b094060cbc77b77383aefc60265e4"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Jun 24 14:58:49 2011 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jul 06 14:40:32 2011 -0700"
      },
      "message": "Make full backup API available to apps\n\nNew methods for full backup/restore have been added to BackupAgent\n(still hidden): onFullBackup() and onRestoreFile().  The former is the\nentry point for a full app backup to adb/socket/etc: the app then writes\nall of its files, entire, to the output.  During restore, the latter\nnew callback is invoked, once for each file being restored.\n\nThe full backup/restore interface does not use the previously-defined\nBackupDataInput / BackupDataOutput classes, because those classes\nprovide an API designed for incremental key/value data structuring.\nInstead, a new FullBackupDataOutput class has been introduced, through\nwhich we restrict apps\u0027 abilities to write data during a full backup\noperation to *only* writing entire on-disk files via a new BackupAgent\nmethod called fullBackupFile().\n\n\"FullBackupAgent\" exists now solely as a concrete shell class that\ncan be instantiated in the case of apps that do not have their own\nBackupAgent implementations.\n\nAlong with the API change, responsibility for backing up the .apk\nfile and OBB container has been moved into the framework rather than\nhave the application side of the transaction do it.\n\nChange-Id: I12849b06b1a6e4c44d080587c1e9828a52b70dae\n"
    },
    {
      "commit": "51ac0e94a83cfccb5105aa14df1077729a5b4ccc",
      "tree": "637da8cb71a912299004f5e7e32f15e6dd81da2c",
      "parents": [
        "b4c5fbff77af4110d846c0ddf4d4d57c30d20972"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Jun 17 13:45:13 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Jul 01 23:35:26 2011 -0700"
      },
      "message": "Adding a ShareView and ActionProvider for menus.\n\n1. Adding a widget for sharing contenet with other applications.\n   The widget orders the share targets based on previous shares.\n   It displays the share target list as either a popup anchored to\n   itslef or as a dialog.\n\n2. Added a ShareDataModel that will back widgets or other classes\n   that are interested in share targets for a given intent ordered\n   according to share history. This class is backing the ShareView\n\n3. Added ActionProvider mechanism for the MenuItems. The action\n   provider of a menu creates the action view as well as performs\n   a default action if the menu item is on the overflow menu and\n   is triggered but none of the menu callback has handled that.\n\nbug:4590827\n\nChange-Id: Iaa4add2df2538b8c6c7edbeaf2880486d4fd75c5\n"
    },
    {
      "commit": "0e591ab277e777b0422463823e3abf28bb1fd5d8",
      "tree": "31a4cd2fa3f7a12e4cf027f7031082ff45a37ff5",
      "parents": [
        "5725d404602095be91d7a0a6bcdeeddd773b4761",
        "8f5026562f26dcde43ee9d9182b309c3204dc1ad"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Jul 01 14:15:08 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 01 14:15:08 2011 -0700"
      },
      "message": "Merge \"Add charCount heuristic to TextView textDirection\""
    },
    {
      "commit": "8f5026562f26dcde43ee9d9182b309c3204dc1ad",
      "tree": "70ba6f72c4435661f2ca7c7c8b3e717ceb82b2a7",
      "parents": [
        "222688682e6e072076489d8203d01bdf2366101a"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Jun 29 20:40:43 2011 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Jul 01 14:08:19 2011 -0700"
      },
      "message": "Add charCount heuristic to TextView textDirection\n\n- threshold set to 60% (using a constant)\n- fix also one issue during layout direction resolution (parent could be null so delay resolution\nup to when parent is no more null)\n\nChange-Id: I65f24a297aac6bc0d5d482ee31b55db0b201e5bf\n"
    },
    {
      "commit": "d307878ebc3a3b0bdc99d8de9b08da2eedcaf82d",
      "tree": "6804f8be8ac0d65dbb69c379a7dfe6445bb01625",
      "parents": [
        "40030c8d4d6de3154d0c38da14cf2c1bbd0f7659",
        "48b55244d286b6d4e3699a5d9e938a9c87aaae75"
      ],
      "author": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Fri Jul 01 11:31:46 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 01 11:31:46 2011 -0700"
      },
      "message": "Merge \"Support for maximum values in layout GridLayout.\""
    },
    {
      "commit": "48b55244d286b6d4e3699a5d9e938a9c87aaae75",
      "tree": "e17d0c267f99ada221ec2b3eaf4a507e4a911a8b",
      "parents": [
        "748d9f2fe4db14d1f0f140a92ff7e6cc27dcd732"
      ],
      "author": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Wed Jun 29 11:09:45 2011 -0700"
      },
      "committer": {
        "name": "Philip Milne",
        "email": "pmilne@google.com",
        "time": "Fri Jul 01 11:08:19 2011 -0700"
      },
      "message": "Support for maximum values in layout GridLayout.\n\nA cell\u0027s ability to shrink or stretch is now integrated with the\nconstraints system, which is now supplied with both upper and lower\nbounds.\n\nAlso:\n\n. Remove package private access (pseudo) annotation\n. Remove rowWeight and columnWeight attributes and fields\n. Remove code to handle weights\n\nChange-Id: I9e2432101d15466c621f51ae362435051fab5764\n"
    },
    {
      "commit": "5093d3ee994473d971eaf3f2ecf3a85ad47975d4",
      "tree": "1480573592dd0c81ad9cb0c10c79d5e98c3d1541",
      "parents": [
        "1d65fcdc00d774b14dc9d023f938fab00b0aa50d",
        "a31c7aadcd0371e973000826b5998c9af8816d7f"
      ],
      "author": {
        "name": "Dan Morrill",
        "email": "morrildl@google.com",
        "time": "Thu Jun 30 22:37:45 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 30 22:37:45 2011 -0700"
      },
      "message": "Merge \"Add a global-search column for last access.\""
    },
    {
      "commit": "8c4706252228755ed181d19532b7e0cfec270ba4",
      "tree": "176de9d436c67c97a83e84bdff7b042981dadc9b",
      "parents": [
        "0e0c2043913af15f06b2307e908f231aea66ff10"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jun 30 18:19:51 2011 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Thu Jun 30 19:40:54 2011 -0700"
      },
      "message": "Add API to report the presence of a permanent menu key on the device.\n\nAction bar now uses this to determine whether to show an overflow menu.\n\nChange-Id: Ife4f724d02bbc0d9d86d94740c85299f6dacae91\n"
    },
    {
      "commit": "3f756768495b1325c43515e0e0e07021d945b4f9",
      "tree": "e91168c27073e28c8d5aba06528ad753d2d614f6",
      "parents": [
        "1e75fbd8fef202dd59dab5ddacea22eea2174ebf"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 30 14:46:46 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 30 14:46:46 2011 -0700"
      },
      "message": "Fix the build.\n\nChange-Id: Ia8064fe32319452565ef7dfe515b2a2fc5bc79c4\n"
    },
    {
      "commit": "fe8b06cfb4cb4991bcfd09ffa60dcbb7b48ee45f",
      "tree": "d65de3cfe4a66df8d0fc8d4892b9d0d5effac3cd",
      "parents": [
        "169abcf63fd5976330d21f5a0e4f808d63aba038",
        "c0ccf0c47c00942a9d0f2670600a8f2d4d7adb5b"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Jun 30 13:11:50 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 30 13:11:50 2011 -0700"
      },
      "message": "Merge \"Support control of text alignment.\""
    },
    {
      "commit": "d414f108e70766b1a9d6f4e99201f960cfa45310",
      "tree": "083da92f2ec949d89d904ba2a312448d5a72835f",
      "parents": [
        "d6401253183213ec6d07caae4ab778d6e1db7155"
      ],
      "author": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Mon Jun 20 14:35:06 2011 -0700"
      },
      "committer": {
        "name": "Dave Santoro",
        "email": "dsantoro@google.com",
        "time": "Wed Jun 29 23:22:09 2011 -0700"
      },
      "message": "Contacts contract changes for social updates.\n\nThis change adds support for a richer API supporting social status\nupdates.\n\nThe new API supports providing multiple status updates (stream items)\nto be associated with a single raw contact, and for multiple photos\n(stream item photos) to be associated with each stream item.  A\nlimited number of stream items will be stored - callers can query for\nthe limit to optimize calls.  Any inserts beyond the limit will\nresult in expiration of the oldest item.\n\nChange-Id: Ib46fdf8864472d4a1be250b9051e7d37ec32c089\n"
    },
    {
      "commit": "ca43c458ad0ee8cfa7f5eabc8ba1a65ae473976b",
      "tree": "dcfa3b84dbeefe5928770600b316bc94e6de02e0",
      "parents": [
        "6e24576b6b10336e37c6447a5e2dbde5ea332da6"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jun 29 18:53:17 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jun 29 20:32:54 2011 -0700"
      },
      "message": "New KeyChain API for credential installation\n\nBug: 3497064\nChange-Id: Ie5c20e87a436b7ab66258d08b719ab8bb1f1d86d\n"
    },
    {
      "commit": "c0ccf0c47c00942a9d0f2670600a8f2d4d7adb5b",
      "tree": "09e9586e01c66903cfc7c5edd728dfac63a6bb63",
      "parents": [
        "cf93ed0d0ab3e158f89ff53ac302942f9deff479"
      ],
      "author": {
        "name": "Doug Felt",
        "email": "dougfelt@google.com",
        "time": "Thu Jun 23 16:13:18 2011 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Jun 29 16:08:42 2011 -0700"
      },
      "message": "Support control of text alignment.\n\nChange-Id: Id6f3682f67ba2e6811e3014cd34a281e6dd0a469\n"
    },
    {
      "commit": "2c22882181e867c9ba4e74ee973b87a71db3389f",
      "tree": "6593873639d24d7fba98e9b7d9cad8f709bf8de9",
      "parents": [
        "9e1fb41b4fbfbd190560cf48f24939703a13eca5",
        "292f8bc9d1b790ab975a87a842c7fabc908b97e0"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jun 29 14:05:01 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 29 14:05:01 2011 -0700"
      },
      "message": "Merge \"Plumb information from the framework about asec container size.\""
    },
    {
      "commit": "83955ef12fb324fb3d407c5ea08769f267af7074",
      "tree": "d9b3aad3eb3148f42f91d7794bf764d1a81df458",
      "parents": [
        "afb60c36b7879c4ed195fb19cc4334175be28c92",
        "222688682e6e072076489d8203d01bdf2366101a"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Jun 29 11:02:23 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 29 11:02:23 2011 -0700"
      },
      "message": "Merge \"Add textDirection support for TextView and ViewGroup\""
    },
    {
      "commit": "863fcd62171e55bc9f2105d9fb5877df982454d8",
      "tree": "cb95025f4fba8e5ce3f403b0f0c4111fce2a65c8",
      "parents": [
        "01fa0d7aae1a551e1e7cfb90d2aeaf2fcb3978af"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jun 21 17:38:02 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Wed Jun 29 23:24:24 2011 +0900"
      },
      "message": "Add onClickView to InputMethodService\n\nBug: 4697141\n\n- onClickView is called everytime the user taps EditText\n\nChange-Id: Ia71ad325e50a20e9e1001def662ef992bb50a9d0\n"
    },
    {
      "commit": "222688682e6e072076489d8203d01bdf2366101a",
      "tree": "d57900b56a590a00b58f8ea9057a33c8d3e59431",
      "parents": [
        "cf93ed0d0ab3e158f89ff53ac302942f9deff479"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Jun 27 18:13:18 2011 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Jun 28 20:29:08 2011 -0700"
      },
      "message": "Add textDirection support for TextView and ViewGroup\n\n- use ViewGroup inheritance if defined\n- use different heuristics (inherit, firstStrong, anyRtl, ltr, rtl)\n- add more unit tests\n\nChange-Id: Ic1325aa7d9e4689b181e0a2d08b7dd7fb3f0dbeb\n"
    },
    {
      "commit": "4414cea13908b8230640f84ef39603d68ff9c377",
      "tree": "5d51a2588b650261f7f5fa6c7ac7078ac8455a9f",
      "parents": [
        "b90a83c246526b3b3f8802a05823191be8517964"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Jun 24 17:05:24 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jun 28 17:59:00 2011 -0700"
      },
      "message": "Better network stats parsing, integer tags, async.\n\nChange NMS parsing to handle extended /proc/ stats formats by pairing\nvalues with header keys.  Move TrafficStats to integer tags to match\nkernel internals, and offer well-known tags for system services.\n\nAsync policy event dispatch from NPMS, and update tests to block for\nevent dispatch.  Narrow app policy to exclude apps signed with system\nkey, which are usually critical.\n\nBug: 4948913, 4903489, 4585280\n\nChange-Id: Idb357227ccaa617906411f309371cea18d7bc519\n"
    },
    {
      "commit": "b90a83c246526b3b3f8802a05823191be8517964",
      "tree": "7ffc2c3afd2203d5d063f318db2c2ce2e7f2bf48",
      "parents": [
        "cde732451070479dd999583f602693c36cdc65c7",
        "5bb9b19c5a3f3cf292f812ff5b9f9b8bcc88e5af"
      ],
      "author": {
        "name": "Huahui Wu",
        "email": "hwu@google.com",
        "time": "Tue Jun 28 16:26:32 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 28 16:26:32 2011 -0700"
      },
      "message": "Merge \"2nd try: Gets the URL that has a cert error and carrys it in SslError.\""
    },
    {
      "commit": "292f8bc9d1b790ab975a87a842c7fabc908b97e0",
      "tree": "93095c3db441b7d6cf06cce31ca40d39a87da237",
      "parents": [
        "cde732451070479dd999583f602693c36cdc65c7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 27 16:27:41 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 28 15:02:44 2011 -0700"
      },
      "message": "Plumb information from the framework about asec container size.\n\nChange-Id: Ie0ec3cb6d463aefa341a8cbea80be790451ba5e3\n"
    },
    {
      "commit": "3ec7fb4bcf302ae97afed0ea98fed97db31f5cda",
      "tree": "1cbbbcfe6f1cb9898444b2c3e2485cedacc4b947",
      "parents": [
        "94e23cbb2d54ef86b52f63685b48dbe24144e809",
        "53ca3f13e70fda98aa9f39bb0c15afaf435e3904"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Jun 28 13:58:44 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 28 13:58:44 2011 -0700"
      },
      "message": "Merge \"Hover and stylus API cleanup.\""
    }
  ],
  "next": "5bb9b19c5a3f3cf292f812ff5b9f9b8bcc88e5af"
}
