)]}'
{
  "log": [
    {
      "commit": "53f2531ba7bc72489d03fd17b6ce29c811fad8b5",
      "tree": "0883feda546ae55f3a303b57d3b17f3a7b718aaa",
      "parents": [
        "cdbb950afe76020d28b4d94f82f6236438925278",
        "60ee25643e0a7b8841063a4e97b0f18c51807e91"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Fri Jul 29 05:45:55 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 29 05:45:55 2011 -0700"
      },
      "message": "Merge \"The fullest of fullscreen modes.\""
    },
    {
      "commit": "6d9a14c08398c58305e831d394280830bb798ee4",
      "tree": "668ae6ff6f85f1a83ce7d429fdd2d656fafa9689",
      "parents": [
        "3970f6833d3c19f96cc7b6831327c8488932fa57",
        "df5659d3d317b5cf351baffe3e0d4876e89678bf"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 29 03:29:46 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 29 03:29:46 2011 -0700"
      },
      "message": "Merge \"Fix issues in TextServicesManagerService\""
    },
    {
      "commit": "df5659d3d317b5cf351baffe3e0d4876e89678bf",
      "tree": "8d8f441eaf836db0dd5728bd112ab8fd5f48fee5",
      "parents": [
        "6be6d7548fb7c29a4d46dc985318ab2adf69f95f"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 29 18:38:21 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 29 19:09:14 2011 +0900"
      },
      "message": "Fix issues in TextServicesManagerService\n\nChange-Id: I48c81226d824e8aad42e01e87fcf9a5b466d2321\n"
    },
    {
      "commit": "f7be31ee1062722855602c6b0227f01bdb7c0b80",
      "tree": "d955d90c959dde5af587291a283bf0f8732645b3",
      "parents": [
        "ae5a9d4a92f18b1e2888c4ae4585f9480311c8bc",
        "6be6d7548fb7c29a4d46dc985318ab2adf69f95f"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Thu Jul 28 18:09:59 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 28 18:09:59 2011 -0700"
      },
      "message": "Merge \"Handle the existing binds to spell checkers correctly.\""
    },
    {
      "commit": "6be6d7548fb7c29a4d46dc985318ab2adf69f95f",
      "tree": "5997d25d03c50eb01ec81955ce33ea76356a7fa3",
      "parents": [
        "2043b01b207aae3458da395bc6d501d76e59425c"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Thu Jul 28 20:40:38 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 29 09:57:07 2011 +0900"
      },
      "message": "Handle the existing binds to spell checkers correctly.\n\nChange-Id: I32efce9f8c09b5a829b0431e8c444fc54b03b440\n"
    },
    {
      "commit": "2efd2dbbac9eac89620683696c6076463c3a1cd6",
      "tree": "ca48adf4208daee43a4444a0fdb61fcb939858c5",
      "parents": [
        "b7d95a46dfacf04896d5b084f13bcbe6eab33633"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Jul 19 16:32:49 2011 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jul 28 16:01:20 2011 -0700"
      },
      "message": "Support full-backup encryption and global backup password\n\nIf the user has supplied a backup password in Settings, that password\nis validated during the full backup process and is used as an encryption\nkey for encoding the backed-up data itself.  This is the fundamental\nmechanism whereby users can secure their data even against malicious\nparties getting physical unlocked access to their device.\n\nTechnically the user-supplied password is not used as the encryption\nkey for the backed-up data itself.  What is actually done is that a\nrandom key is generated to use as the raw encryption key.  THAT key,\nin turn, is encrypted with the user-supplied password (after random\nsalting and key expansion with PBKDF2).  The encrypted master key\nand a checksum are stored in the backup header.  At restore time,\nthe user supplies their password, which allows the system to decrypt\nthe master key, which in turn allows the decryption of the backup\ndata itself.\n\nThe checksum is part of the archive in order to permit validation\nof the user-supplied password.  The checksum is the result of running\nthe user-supplied password through PBKDF2 with a randomly selected\nsalt.  At restore time, the proposed password is run through PBKDF2\nwith the salt described by the archive header.  If the result does\nnot match the archive\u0027s stated checksum, then the user has supplied\nthe wrong decryption password.\n\nAlso, suppress backup consideration for a few packages whose\ndata is either nonexistent or inapplicable across devices or\nfactory reset operations.\n\nBug 4901637\n\nChange-Id: Id0cc9d0fdfc046602b129f273d48e23b7a14df36\n"
    },
    {
      "commit": "b7d95a46dfacf04896d5b084f13bcbe6eab33633",
      "tree": "c69bb45e727299675d8799f64285bc99dd50023d",
      "parents": [
        "fbaaeb96f29c8e4a563a6b3cc85fb446400fd506",
        "21700fedfe29f6a0a752d2bea46142038e69136c"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood%android.com@gtempaccount.com",
        "time": "Thu Jul 28 14:06:07 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 28 14:06:07 2011 -0700"
      },
      "message": "am 21700fed: am 5f7203eb: am 5a27a754: am bd1dee94: Merge \"gps: Adding ip address for AGps\"\n\n* commit \u002721700fedfe29f6a0a752d2bea46142038e69136c\u0027:\n  gps: Adding ip address for AGps\n"
    },
    {
      "commit": "21700fedfe29f6a0a752d2bea46142038e69136c",
      "tree": "3aa43b410f433d10fb23147f5b43c78b6dce3091",
      "parents": [
        "f8d13e535c3e6166c2386adac3b3a2f115d2b79d",
        "5f7203eb258503bc5d2ba29176bdf483a68a93b8"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood%android.com@gtempaccount.com",
        "time": "Thu Jul 28 14:04:13 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 28 14:04:13 2011 -0700"
      },
      "message": "am 5f7203eb: am 5a27a754: am bd1dee94: Merge \"gps: Adding ip address for AGps\"\n\n* commit \u00275f7203eb258503bc5d2ba29176bdf483a68a93b8\u0027:\n  gps: Adding ip address for AGps\n"
    },
    {
      "commit": "036fc921cab766fd674aed260d5c87273ad6da55",
      "tree": "756d99bd22e8bd604191cd3905b8b54775ef4862",
      "parents": [
        "3885228457bc61a86fe4e91ff18fb331fc3ee777",
        "98c79e53c0f24e98910a1ab130ec77d2ae707ed4"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Jul 28 14:00:48 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 28 14:00:48 2011 -0700"
      },
      "message": "Merge \"Stop sending tethering broadcasts during boot.\""
    },
    {
      "commit": "8efd74dbedb65f69734318d9d6be70767f30b57a",
      "tree": "74ca8726784a2348023dda04ec9318df27f28f4c",
      "parents": [
        "0ff79e88e2d90f80d0346e0485abe773ca85c44d"
      ],
      "author": {
        "name": "Stephen Li",
        "email": "stephenl@codeaurora.org",
        "time": "Tue Mar 01 20:56:00 2011 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 28 16:50:45 2011 -0400"
      },
      "message": "gps: Adding ip address for AGps\n\nChange-Id: Ic590187d159853de2f1bd2912e159f0a00d8fb10\n"
    },
    {
      "commit": "3885228457bc61a86fe4e91ff18fb331fc3ee777",
      "tree": "c45e60967e4b5a641c0cf31fd4cbf43519ebd3ea",
      "parents": [
        "265bfede6bf8a4b2d0e2271f1cefab816bbf7420",
        "f8d13e535c3e6166c2386adac3b3a2f115d2b79d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood%android.com@gtempaccount.com",
        "time": "Thu Jul 28 13:30:24 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 28 13:30:24 2011 -0700"
      },
      "message": "am f8d13e53: am bf676d46: am 7083ed44: am 0ff79e88: Merge \"GPS: Changes to enable on-demand data call flow for CDMA connections\"\n\n* commit \u0027f8d13e535c3e6166c2386adac3b3a2f115d2b79d\u0027:\n  GPS: Changes to enable on-demand data call flow for CDMA connections\n"
    },
    {
      "commit": "f8d13e535c3e6166c2386adac3b3a2f115d2b79d",
      "tree": "03bc3df9ac8f2868546146ca336f04e25f333164",
      "parents": [
        "5ad5c9e3efd26155ae7b5d0f3e9e2094e1f65dfe",
        "bf676d460d1d1fc8923982006c38d0f6785daea8"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood%android.com@gtempaccount.com",
        "time": "Thu Jul 28 13:27:27 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 28 13:27:27 2011 -0700"
      },
      "message": "am bf676d46: am 7083ed44: am 0ff79e88: Merge \"GPS: Changes to enable on-demand data call flow for CDMA connections\"\n\n* commit \u0027bf676d460d1d1fc8923982006c38d0f6785daea8\u0027:\n  GPS: Changes to enable on-demand data call flow for CDMA connections\n"
    },
    {
      "commit": "0ff79e88e2d90f80d0346e0485abe773ca85c44d",
      "tree": "919ea4db0e58a6790237aa0028271d51d8c54a4f",
      "parents": [
        "20339b24394be06c5bfe5157a4b35adc48f665eb",
        "83b69713f2dbeee7ff5e07836673a9a477be236f"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood%android.com@gtempaccount.com",
        "time": "Thu Jul 28 13:13:35 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Thu Jul 28 13:13:35 2011 -0700"
      },
      "message": "Merge \"GPS: Changes to enable on-demand data call flow for CDMA connections\""
    },
    {
      "commit": "60ee25643e0a7b8841063a4e97b0f18c51807e91",
      "tree": "f950442b0657ea89b9e4fb93361a612dd36dab29",
      "parents": [
        "2043b01b207aae3458da395bc6d501d76e59425c"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Fri Jul 22 12:34:33 2011 -0400"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Thu Jul 28 15:18:32 2011 -0400"
      },
      "message": "The fullest of fullscreen modes.\n\nView.setSystemUiVisibility() now properly accepts a\nbitfield, including:\n\n  * SYSTEM_UI_FLAG_LOW_PROFILE: \"lights out mode\"\n    (previously known, erroneously, as STATUS_BAR_HIDDEN)\n\n  * SYSTEM_UI_FLAG_HIDE_NAVIGATION: for when you need every\n    single pixel on a device that also has a navigation bar\n\nThese flags are painstakingly aggregated across the entire\nview hierarchy and carefully delivered to the status bar\nservice, which in turn gently passes them along to the bar\nimplementation.\n\nTo really get access to the whole screen, you need to use\nHIDE_NAVIGATION in conjunction with FLAG_FULLSCREEN and\nFLAG_LAYOUT_IN_SCREEN. See development/samples/Overscan for\nan example of how to do this.\n\nChange-Id: I5fbfe009d9ceebbbf71db73f14a7008ea7c1d4da\n"
    },
    {
      "commit": "98c79e53c0f24e98910a1ab130ec77d2ae707ed4",
      "tree": "a3afdc2632ae800c3665968e18aa80214c9fad6a",
      "parents": [
        "06a2895b58d6d8ecc3fc5dffa8c5d8c4f95216a5"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Jul 28 11:51:11 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Jul 28 11:51:11 2011 -0700"
      },
      "message": "Stop sending tethering broadcasts during boot.\n\nWell, actually they do go out, but they won\u0027t try to start anybody now\nuntil after boot.\n\nbug:5088272\nChange-Id: Iaaf7a1e4b300e0afc3901ecfd225a77084bd0954\n"
    },
    {
      "commit": "2043b01b207aae3458da395bc6d501d76e59425c",
      "tree": "8b8660a6dd748c3cd03462e812e70afa54a23d75",
      "parents": [
        "35a9c52791882bc58d3a6716e0fd8544889d90c3",
        "4664500de0c1b270bce4991a400ab439ff2ef77b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 27 22:08:02 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 22:08:02 2011 -0700"
      },
      "message": "Merge \"Maintain separate \"restrict background data\" flag.\""
    },
    {
      "commit": "4664500de0c1b270bce4991a400ab439ff2ef77b",
      "tree": "625234999eba80326ce152d903c0882462365e77",
      "parents": [
        "e5168930975618a2b2b3f556c6c162a8cf6c9e34"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 27 21:11:21 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 27 21:11:32 2011 -0700"
      },
      "message": "Maintain separate \"restrict background data\" flag.\n\nSince \"restrict background\" depends on active networks, separate its\ndefinition from setBackgroundDataSetting().\n\nBug: 4979025\nChange-Id: I12bfe3a2e606375b39c67706270caa7a1bb0214e\n"
    },
    {
      "commit": "4f35092af55d569975e6931ee6e8c0343f749d1e",
      "tree": "c15077eab86d9e3da6cee3c63fc07b69d8898479",
      "parents": [
        "3d5a703db83265f7914eed8580de986106abfad2",
        "66269ea6f68f2f25888ce1080c94ac782742fafc"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 27 15:54:51 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 15:54:51 2011 -0700"
      },
      "message": "Merge \"Move extract native libraries to JNI code\""
    },
    {
      "commit": "3d5a703db83265f7914eed8580de986106abfad2",
      "tree": "3ef1e72cf1335a1bb9d36ac1b6f86f0a1b84c302",
      "parents": [
        "be922d6006879692d100894dc924d947b50aed34",
        "bc68a59c024bdb745dac8e2ec7408a9f30595f1a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Jul 27 15:54:50 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 15:54:50 2011 -0700"
      },
      "message": "Merge \"Report the external display size to the input reader.\""
    },
    {
      "commit": "d02fa35e8c80a7171c7556743b09dda2fbcc96b2",
      "tree": "3dc6bfa9d6d83f4453116cc0ed84317f193fde8c",
      "parents": [
        "ccc83629f993eec7844ad7f6b214666e9410a610",
        "41ff7ec82422a5b6d00892afdb3232bc0e53d851"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 27 15:52:24 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 15:52:24 2011 -0700"
      },
      "message": "Merge \"Revise data limit notifs, watch kernel alerts.\""
    },
    {
      "commit": "ccc83629f993eec7844ad7f6b214666e9410a610",
      "tree": "c05896bf7dc826e74748bc3b96185766fa977c8a",
      "parents": [
        "257466d4e24bd405204cb21a1663eb1cc99f6137",
        "a5010431bfcdff88ac9d96e68d8308071c13472b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 27 15:49:05 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 15:49:05 2011 -0700"
      },
      "message": "Merge \"UsbDeviceManager: Don\u0027t show USB notification for RNDIS\""
    },
    {
      "commit": "e1b925919096b27a1592665ed09fb8ac874273e3",
      "tree": "86b6e2606215d9f1288905e3dfe42f4358bdfea4",
      "parents": [
        "43a5d6e541fef5983e967d9b67792c0a088418ea",
        "4e2a762eae1f6981d32e6098a95498865ad7f795"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 27 15:24:10 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 15:24:10 2011 -0700"
      },
      "message": "Merge \"Not user generated accessibility events can change the interrogation allowing window.\""
    },
    {
      "commit": "3c6c3ddb6a53ebffb00987ae6b7fdcdbfdb36dad",
      "tree": "8a91a2142555945e17dfeca314587b93ed6c069b",
      "parents": [
        "88409f84bf44ee07e2ad6fdf0dca6ee7e8f6fe1f",
        "064d842ead23c53f1ec639a73966fe9bd9827c40"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jul 27 12:41:42 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 12:41:42 2011 -0700"
      },
      "message": "Merge \"Don\u0027t actually try to stop processes marked \u0027persistent\u0027\""
    },
    {
      "commit": "f2fa907e1f815f2fe1add2cb8fb0e159d0f38edb",
      "tree": "4f5496392a53f37e31092ae86147e39a7250584b",
      "parents": [
        "ffcbe48d06ec7ae96f0f48bd37bdd141ebf80703",
        "130b0d2b2629bdd8fc415e0f3da947f965a3f29d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jul 27 12:19:40 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 12:19:40 2011 -0700"
      },
      "message": "Merge \"Fix issue #4466531: onServiceConnected() not called after...\""
    },
    {
      "commit": "636250028d2e88718220fb180eb2afecb27f5911",
      "tree": "24176db59d9654062b7f16f33f281f5afae8ed4e",
      "parents": [
        "84935dc2c00bcc7f6a05370f8fbbd0232a6eb40b",
        "485861c409f9aaca2dac97ea82a66c2cb380ebad"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 27 11:05:10 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 27 11:05:10 2011 -0700"
      },
      "message": "Merge \"Fix USB tethering again\""
    },
    {
      "commit": "485861c409f9aaca2dac97ea82a66c2cb380ebad",
      "tree": "8b1e12a0670759eee0f82030d53601f01bb50e69",
      "parents": [
        "83e32904eb0b65fa6d0c13f3d576a46031fefda0"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 27 13:52:32 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 27 13:54:29 2011 -0400"
      },
      "message": "Fix USB tethering again\n\nThe kernel sends an interface down event for usb0 when RNDIS is enabled.\nIgnore this and only remove USB interfaces when we receive the\ninterface removed event.\n\nChange-Id: I1458f259b96c9fab4d3a69a5692e630123fad136\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "c59c6da9ae14097c77eee69285c6eacc8130936c",
      "tree": "14a8c34506438ebccbfa9fee4b74af45fb7d2181",
      "parents": [
        "804b3d76c39eca09cbbd8b7c3fa1718e7ad094cc",
        "af75fdb16566c3011284afaa7d12bcf6126dd4f3"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jul 27 10:00:36 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jul 27 10:00:36 2011 -0700"
      },
      "message": "resolved conflicts for merge of af75fdb1 to master\n\nChange-Id: Ib7f3521b0af6df9346cf940d69f2988b1c87e129\n"
    },
    {
      "commit": "41ff7ec82422a5b6d00892afdb3232bc0e53d851",
      "tree": "9085ebb6bcc39a20f98eeb71860f2dad01f604ed",
      "parents": [
        "a94b9ad23ac1f281c9d2dac02d01aa07ca5e1682"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jul 25 15:21:22 2011 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 27 09:31:39 2011 -0700"
      },
      "message": "Revise data limit notifs, watch kernel alerts.\n\nTeach NetworkPolicy limits to \"snooze\" when requested by user, and\nnotify with both dialog and notification.  Register for network alerts\nthrough NMS to trigger updates immediately instead of waiting for\nnext stats update.\n\nEnforce that all NetworkPolicy are unique on a template basis, and\nmove SCREEN_ON/OFF broadcasts to background thread.  Launch SystemUI\nand Settings directly instead of using actions, and include full\nNetworkTemplate in extras.\n\nTests to verify notification and snooze behavior.\n\nBug: 5057979, 5023579, 4723336, 5045721\nChange-Id: I03724beff94a7c0547cb5220431ba8d4cd44d077\n"
    },
    {
      "commit": "af75fdb16566c3011284afaa7d12bcf6126dd4f3",
      "tree": "cb2545e1c51caf9314b4e092484a75e6db60142f",
      "parents": [
        "fada80df08dd0b608eeb9737af413f8df1eb5252",
        "41394a361020e9f58524f23d6831bb8e63063856"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jul 27 09:27:00 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jul 27 09:27:00 2011 -0700"
      },
      "message": "resolved conflicts for merge of 41394a36 to honeycomb-plus-aosp\n\nChange-Id: Ic839eb7bd8081b94802dbbf9140b9d1fa0cf7df3\n"
    },
    {
      "commit": "a5010431bfcdff88ac9d96e68d8308071c13472b",
      "tree": "926949085a1bc7687883fef0b55fd44acb6c8167",
      "parents": [
        "83e32904eb0b65fa6d0c13f3d576a46031fefda0"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 27 09:50:06 2011 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Jul 27 09:56:06 2011 -0400"
      },
      "message": "UsbDeviceManager: Don\u0027t show USB notification for RNDIS\n\nsince USB tethering already has a notification.\n\nBug: 4988511\n\nChange-Id: I928cb1e1d191c77340f7f05edfa80a74cdabe6ed\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "130b0d2b2629bdd8fc415e0f3da947f965a3f29d",
      "tree": "3965ebc0cff949b9e261b51c19fa128abeca2a4e",
      "parents": [
        "47a7c68ac862ecfc68f35a63b330cbda7131cd66"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 26 22:07:48 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 26 22:07:48 2011 -0700"
      },
      "message": "Fix issue #4466531: onServiceConnected() not called after...\n\n...apk reinstall; affects user privacy\n\nDisconnecting a ServiceConnection after an app is torn down could\nimpact the bookkeeping of the same service if it has been started\nfor the app.\n\nAlso address issue #5073927: GSF process can\u0027t be killed\n\nA new flag allows the systems location manager service to tell\nthe activity manager to not pull bound services up forever into\nthe visible adj level.\n\nChange-Id: I2557eca0e4bd48f3b10007c40ec878e769fd96a8\n"
    },
    {
      "commit": "4e2a762eae1f6981d32e6098a95498865ad7f795",
      "tree": "cf29595dbaec0694e9293c9c8fd6962fa522a615",
      "parents": [
        "176f3e1b77d74b3b00cac98792f5d9564b935990"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jul 26 20:08:46 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jul 26 20:08:50 2011 -0700"
      },
      "message": "Not user generated accessibility events can change the interrogation allowing window.\n\n1. Events not generated by the user can change the interrogation allowing window\n   unpredicatably. For example when a ListView lays out its children it fires an\n   accessibility events and changes the currently active window while the user\n   interaction may be happening in another window say a dialog. Now the interrogation\n   allowing window is changed when a new window is shown or the user has touch\n   explored it.\n\nbug:5074116\n\nChange-Id: I8dde12bbec807d32445a781eedced9b95312b3e2\n"
    },
    {
      "commit": "064d842ead23c53f1ec639a73966fe9bd9827c40",
      "tree": "5d601e58afe9bc33eb151d15eef277e3cae70c97",
      "parents": [
        "b243d5bc7db88396f0da304553687e7a0bccfa3d"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Jul 26 15:38:07 2011 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Jul 26 15:42:05 2011 -0700"
      },
      "message": "Don\u0027t actually try to stop processes marked \u0027persistent\u0027\n\nA later CL will introduce an API for querying whether a given package\nruns in a persistent process; UIs such as Settings will be able to use\nthat to determine whether to disable the \u0027force stop\u0027 action.\n\nChange-Id: Iab47c2300fdce285da7d83e02263c9a5f69edd70\n"
    },
    {
      "commit": "22d93a0d71d965970f581cd9aa1cbf2efbb5998f",
      "tree": "f5b0d0a82c59d398fe2185ac047f532fba71724d",
      "parents": [
        "bce8effe75c5477eb42d4e1c4df609da962285a2",
        "41394a361020e9f58524f23d6831bb8e63063856"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Jul 26 15:26:02 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Jul 26 15:26:02 2011 -0700"
      },
      "message": "resolved conflicts for merge of 41394a36 to honeycomb-plus-aosp\n\nChange-Id: If4dc99c558dc45c9a7ff8d3ea5be69578b4ee793\n"
    },
    {
      "commit": "41394a361020e9f58524f23d6831bb8e63063856",
      "tree": "29a9c842f03d748df6c3718bd5bee4aa60604e42",
      "parents": [
        "ac74551bb42eb2d6775d994357481113375574e7",
        "572b7048a6ed6cf6c5f6bc6c9d542dc377d601ff"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Jul 26 13:21:09 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 26 13:21:09 2011 -0700"
      },
      "message": "Merge \"Use dns proxy a bit.\" into honeycomb-LTE"
    },
    {
      "commit": "66269ea6f68f2f25888ce1080c94ac782742fafc",
      "tree": "0ecbefcdbecf98cbacd428a422e6a2a846ac726e",
      "parents": [
        "e432a0005180ba9ac2c1d7822c4761b475fddc51"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jul 12 14:14:01 2011 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jul 26 10:14:58 2011 -0700"
      },
      "message": "Move extract native libraries to JNI code\n\nThe built-in ZipFile class was quite a long time to find an unpack\nlibraries. Move everything to using the libutils ZipFileRO class that\ngoes quite a bit faster. Initial measurements are 6 times faster than\nthe Java code.\n\nAlso, read files off the disk and compare their CRC against the APK\u0027s\nCRC to see if we need to write the new file to disk. This also cuts down\nthe bootup time by up to a second per APK that has native files.\n\nChange-Id: Ic464a7969a17368fb6a6b81d026888c4136c7603\n"
    },
    {
      "commit": "bc68a59c024bdb745dac8e2ec7408a9f30595f1a",
      "tree": "9b3cfa4dc30eb787cbd828e97f7d816d5a91e68d",
      "parents": [
        "49754db5a304d995c1cc108ff6f19e4ba4265572"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 25 12:58:12 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 25 20:10:12 2011 -0700"
      },
      "message": "Report the external display size to the input reader.\n\nThe input reader needs this information so that it knows how to\ninterpolate touches on an external touch screen.\n\nChanged Display so that it asks the WindowManager what the real\ndisplay size is (as opposed to the raw display size).  This means\nit now takes into the forced display size set by\nadb shell am display-size.\n\nReplaced all calls to getRealWidth() / getRealHeight() /\ngetRealMetrics() in the WindowManager and replaced them with direct\nusages of the mCurDisplayWidth / mCurDisplayHeight so that the WM\ndoesn\u0027t end up making a reentrant Binder call into itself.\n\nFixed the table status bar HeightReceiver so that it updates the\nheight on all configuration changes since it is possible that the\ndisplay size changed independently of an external HDMI display\nbeing plugged / unplugged.\n\nImproved the Display class documentation to make the distinctions\nbetweeen the various sizes clearer.\n\nChange-Id: I3f75de559d3ebffed532ab46c4ae52c5e7f1da2b\n"
    },
    {
      "commit": "6c454c3225fd47422024af915fa28d5210d1e82e",
      "tree": "5938de336be51e7d90d0c100f77d6a5208524019",
      "parents": [
        "47a7c68ac862ecfc68f35a63b330cbda7131cd66",
        "da317ef68603dc7649f98bda495267973825e7fa"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Jul 25 18:02:46 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 18:02:46 2011 -0700"
      },
      "message": "Merge \"[step9] Add logging code for text services\""
    },
    {
      "commit": "da317ef68603dc7649f98bda495267973825e7fa",
      "tree": "7f53bfec875759885b8ebffc5727d4a9d205b346",
      "parents": [
        "84e35d995f0b804a322e9e07fd1a0341658763ef"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jul 26 08:02:45 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jul 26 09:42:12 2011 +0900"
      },
      "message": "[step9] Add logging code for text services\n\nChange-Id: I4dae847951848cca85bcb73f47c509ce23327334\n"
    },
    {
      "commit": "68454aa049b3dbadc60662e82c4c931fc970c20e",
      "tree": "3cf1ddc77fc2e5215654d306afad0686ed3b8e6a",
      "parents": [
        "b4913b8754653d0c9b3bdb88a0e4d971d9830c69",
        "1b20abd30c2757132b7a2d319ae73f420b864ed4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@android.com",
        "time": "Mon Jul 25 17:25:09 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 25 17:25:09 2011 -0700"
      },
      "message": "am 1b20abd3: am 20bf46af: am b0878223: am 6800a801: Merge \"frameworks/base: Cap the number of toasts that a package can post.\"\n\n* commit \u00271b20abd30c2757132b7a2d319ae73f420b864ed4\u0027:\n  frameworks/base: Cap the number of toasts that a package can post.\n"
    },
    {
      "commit": "b4913b8754653d0c9b3bdb88a0e4d971d9830c69",
      "tree": "17764d839d82b41c285a578747c17309658e2710",
      "parents": [
        "4f727fbdc302946b9b677e2518350dd3574d198a",
        "6d21aee882215e8a17408f6ae1fbfba5cf8e440f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@android.com",
        "time": "Mon Jul 25 17:25:00 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 25 17:25:00 2011 -0700"
      },
      "message": "am 6d21aee8: am 9ce1ecdf: am 1a2fcea1: am 2f4698fd: Merge \"frameworks/base: unlink death notifications of Vibrate requests\"\n\n* commit \u00276d21aee882215e8a17408f6ae1fbfba5cf8e440f\u0027:\n  frameworks/base: unlink death notifications of Vibrate requests\n"
    },
    {
      "commit": "572b7048a6ed6cf6c5f6bc6c9d542dc377d601ff",
      "tree": "d363ad4097415f64dda66ecb53ce60d40d82deb4",
      "parents": [
        "f679d4cb92b6d1c193a154abb5ae8fb3a786fc43"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 25 17:00:13 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 25 17:00:13 2011 -0700"
      },
      "message": "Use dns proxy a bit.\n\nSets the current default interface and sets the dns per interface.\nport of changes 23041 and 22098 from opensource.\nbug:5060618\n\nChange-Id: I80e7ef88727eeb8ff2b48059f69b270e5a6b5c16\n"
    },
    {
      "commit": "a10b7fd2239668a87be690a57ef7b3bc39b6bfd3",
      "tree": "9495a476c1f8536d4df81643c9c7612c9b1d2cba",
      "parents": [
        "b243d5bc7db88396f0da304553687e7a0bccfa3d",
        "a7f68230be1ac025dbeada77e2ff3f16bb2ac04c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 25 16:06:25 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 25 16:06:25 2011 -0700"
      },
      "message": "resolved conflicts for merge of a7f68230 to master\n\nChange-Id: I9e8faaa94f9b251a9c003dc6b9a3e2a97c4564a9\n"
    },
    {
      "commit": "b243d5bc7db88396f0da304553687e7a0bccfa3d",
      "tree": "e99ab769a849ff1515c4bc6d4e1328da0aa0adac",
      "parents": [
        "5ccdaa9a0354f0424303ef4f94a65e35764cc9c4",
        "9c8625ead8acd695909d14e3cbda659622848873"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jul 25 12:32:10 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 12:32:10 2011 -0700"
      },
      "message": "Merge \"Change user 0 directory back for compatibility\""
    },
    {
      "commit": "1b20abd30c2757132b7a2d319ae73f420b864ed4",
      "tree": "28951ac14dd8195cdab832ff0c1d74259d87b89b",
      "parents": [
        "6d21aee882215e8a17408f6ae1fbfba5cf8e440f",
        "20bf46af14130314ae1aeb1e5482c38556c8f0f8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@android.com",
        "time": "Mon Jul 25 12:21:32 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 25 12:21:32 2011 -0700"
      },
      "message": "am 20bf46af: am b0878223: am 6800a801: Merge \"frameworks/base: Cap the number of toasts that a package can post.\"\n\n* commit \u002720bf46af14130314ae1aeb1e5482c38556c8f0f8\u0027:\n  frameworks/base: Cap the number of toasts that a package can post.\n"
    },
    {
      "commit": "6d21aee882215e8a17408f6ae1fbfba5cf8e440f",
      "tree": "ea4e31922a37018e0a382a42ee131d0fcb5bff54",
      "parents": [
        "ed07215e482cae1ffedbba707284821b3afc310f",
        "9ce1ecdfde98c7b5b5ec346b883df0a50d9722e1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@android.com",
        "time": "Mon Jul 25 12:21:29 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 25 12:21:29 2011 -0700"
      },
      "message": "am 9ce1ecdf: am 1a2fcea1: am 2f4698fd: Merge \"frameworks/base: unlink death notifications of Vibrate requests\"\n\n* commit \u00279ce1ecdfde98c7b5b5ec346b883df0a50d9722e1\u0027:\n  frameworks/base: unlink death notifications of Vibrate requests\n"
    },
    {
      "commit": "940dabfc669ef5973c54dcc62e38b4a095d1ff9f",
      "tree": "d4cc41e036c890b0c5aa23e411558971acf134d0",
      "parents": [
        "71f14a4e23c0b6eb60a81fd9a1be86dc441d051a",
        "f5a07905a3e025f95472a3f8d9935263e49ad6d3"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Jul 25 12:10:46 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 12:10:46 2011 -0700"
      },
      "message": "Merge \"TouchExplorer long press not working and activation tap not respecting distance slop.\""
    },
    {
      "commit": "a7f68230be1ac025dbeada77e2ff3f16bb2ac04c",
      "tree": "2b1bcfa6f61f4c73536d9d363e944bd87cf880cd",
      "parents": [
        "051660d4d6d293f4b561bc6a772c70aa077a578a",
        "26ecc31f36727544b6440dc3ab3b25cc6b0bfb24"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 25 12:08:19 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jul 25 12:08:19 2011 -0700"
      },
      "message": "resolved conflicts for merge of 26ecc31f to honeycomb-plus-aosp\n\nChange-Id: I23f42e247884f0c9d5ae4d3466213592dd3433d9\n"
    },
    {
      "commit": "71f14a4e23c0b6eb60a81fd9a1be86dc441d051a",
      "tree": "4e140ffde55af598803f8398e9ecf761e8a672d3",
      "parents": [
        "c018496ab220158741488a67d3aed87abd6bf232",
        "00aabf7d187bc05408199bd687a538b2e68bdc17"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Jul 25 12:08:08 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 25 12:08:08 2011 -0700"
      },
      "message": "Merge \"Touch exploration state set to clients asynchronously and depended on talking service being enabled.\""
    },
    {
      "commit": "9c8625ead8acd695909d14e3cbda659622848873",
      "tree": "c78359bf786ac5f1c1f95366b7e4d3fe3e16348d",
      "parents": [
        "e432a0005180ba9ac2c1d7822c4761b475fddc51"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jul 25 09:42:22 2011 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jul 25 09:42:22 2011 -0700"
      },
      "message": "Change user 0 directory back for compatibility\n\nThe PackageManagerTests aren\u0027t designed for multiple users yet, so they\nfail. Since multiple users aren\u0027t supported yet, just change the default\ndata directory for user 0 back to how it was previously. This fixes the\nexisting tests and doesn\u0027t get anyone\u0027s hopes up since they won\u0027t see\n/data/user/0/pacakge when we don\u0027t support multiple users yet.\n\nBug: 4380006\nChange-Id: Iedcc3115b000759c0013ba6878e13cd2358897da\n"
    },
    {
      "commit": "f5a07905a3e025f95472a3f8d9935263e49ad6d3",
      "tree": "c7860aba77b9a9b7657c146f04ccf7e5a9358683",
      "parents": [
        "2182a3b6422f367d84384e25006ba201c4cd233b"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Sun Jul 24 19:20:17 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Sun Jul 24 19:43:50 2011 -0700"
      },
      "message": "TouchExplorer long press not working and activation tap not respecting distance slop.\n\n1. The first problem is manifested on Prime. Apparently the Prime screen driver\n   is very aggresive in filtering move events that origin from almost the same\n   location. Hence, the framework doesn\u0027t see a constant stream of events. However,\n   the TouchExplorer implementation was assuming a constant event stream to detect\n   long press. Refactored the code such that no assumptions for the event stream\n   are made.\n\n2. Touch exploring an item and then tapping far away from that item was activating\n   it, hence not respecting the distance slop. This was due to incorrect check of\n   the latter.\n\nbug:5070917\n\nChange-Id: I3627a2feeb3712133f58f8f8f1ab7a2ec50cdc9a\n"
    },
    {
      "commit": "54e677ffb026eb838237b8a5e6581833f616e32a",
      "tree": "b250439bc91ed1c16895c087db936324cabf0261",
      "parents": [
        "c82cc94db08810ca238643b85c75b3593b2d8067",
        "562ab585f9e413d9696ee250e5ec02f95889a157"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Sun Jul 24 18:47:50 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 24 18:47:50 2011 -0700"
      },
      "message": "Merge \"[Step 2] Add apis for spell checker settings\""
    },
    {
      "commit": "562ab585f9e413d9696ee250e5ec02f95889a157",
      "tree": "99d5bcce164cf1fbbdaa0383d641d2bb56cf8af9",
      "parents": [
        "1bedd99761e3d2acdac947d641e7fee5db556141"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Jul 25 10:12:21 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Jul 25 10:23:52 2011 +0900"
      },
      "message": "[Step 2] Add apis for spell checker settings\n\nBug: 5057977\n\nChange-Id: I4617b7f1487349c5de385e7392dbc39c69fa2ebc\n"
    },
    {
      "commit": "55bc5f3e0408bcb5a39a6732de0b2d1aa99a55be",
      "tree": "1206af1015ea8248a8fefbf2672d8df7bfa56bc8",
      "parents": [
        "895de9269fa125bf3903c21faf5e8d2750bfb000"
      ],
      "author": {
        "name": "repo sync",
        "email": "isheriff@google.com",
        "time": "Fri Jun 24 14:23:07 2011 -0700"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Sun Jul 24 10:08:47 2011 -0700"
      },
      "message": "Updated: Wi-Fi p2p framework\n\nFirst stage. Get the bones in right now even though\nwe are not ready on the native side.\n\nOnce, we have things underneath working - we will further update the\nframework\n\nChange-Id: I4a7dab5cd4267373dc5f8989ae4122f91c384ed5\n"
    },
    {
      "commit": "e30c1307fbb8f5421515e26ede403e0f6adc2612",
      "tree": "1fc1cf65765b209fa375dbb2142c978ef6e89f18",
      "parents": [
        "2182a3b6422f367d84384e25006ba201c4cd233b",
        "23eb297c771bd996fe8559178feb1a07be43ad72"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Sat Jul 23 22:30:36 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 23 22:30:36 2011 -0700"
      },
      "message": "Merge \"Handle hostapd and tether interface changes\""
    },
    {
      "commit": "23eb297c771bd996fe8559178feb1a07be43ad72",
      "tree": "51b71ec0decca0f3623b2a7b2704040cf02345db",
      "parents": [
        "556d0476e14803b406ddff7fe4c27baf1bf58334"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jul 22 15:21:10 2011 -0700"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Sat Jul 23 21:06:57 2011 -0700"
      },
      "message": "Handle hostapd and tether interface changes\n\nThe set config will only update hostapd config file right now and we need to restart after that happens.\n\nAlso, softap interface is changed to be the regular interface\n\nBug: 5069108\nChange-Id: Ibe80129b58e5339f06f186870bcd8f37569c6db3\n"
    },
    {
      "commit": "5db7af968a5b57ad9f8e5a61534cafe46c344b85",
      "tree": "08d0f4b5b8f1f6094cf8b39be2207e612cb20672",
      "parents": [
        "ab45c768bcfecbabbd664d4962f0c86627b6c76b",
        "6c2260b3af3a9243aa7f04cf03106f31817cb4c1"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sat Jul 23 19:36:32 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 23 19:36:32 2011 -0700"
      },
      "message": "Merge \"Fix USB tethering\""
    },
    {
      "commit": "6c2260b3af3a9243aa7f04cf03106f31817cb4c1",
      "tree": "e4798968f479173d874e3f4211585f12b0f0ff97",
      "parents": [
        "40c4321df41eec6eba7e5001c7e13e9b7680b1fb"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jul 19 13:04:47 2011 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sat Jul 23 21:57:55 2011 -0400"
      },
      "message": "Fix USB tethering\n\nThe previous approach no longer works with the new USB drivers, since the usb0\ninterface is no longer enabled by default.\nThis introduced a chicken \u0026 egg problem - usb0 will not be enabled until the\nuser tries to start tethering, but Settings will not enable the checkbox unless\nusb0 is enabled.\nTo fix this we add an explicit call to start USB tethering in the connectivity manager.\nThis will enable RNDIS if necessary and then bring up tethering once usb0 is enabled.\n\nChange-Id: Iae1f733366aa6b0dafa66d4c97207794173ef54b\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "b54ac4ab5b4c50ea09182e0bb19c4af08b0e0730",
      "tree": "3996702e69a9167c47ddaef48f47334503e13c05",
      "parents": [
        "da89e57130363a9b35983368f0f8df3237a9dbfd",
        "5bc8e732bd831a308a5bc1720b0e4c9300d32f67"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 22 20:14:27 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 20:14:27 2011 -0700"
      },
      "message": "Merge \"Display the current ime and subtype name in the ongoing notification\""
    },
    {
      "commit": "5bc8e732bd831a308a5bc1720b0e4c9300d32f67",
      "tree": "09ccce6fa49fe3a4e1d70b71ebd8bff2537b4221",
      "parents": [
        "3263f02b3e4b9c37bf8ec4e00b3cec32ede42ad8"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 22 21:07:23 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Sat Jul 23 12:07:38 2011 +0900"
      },
      "message": "Display the current ime and subtype name in the ongoing notification\n\nBug: 4903422\nChange-Id: I3eaeb3decb75f687ad2af0d80340b819229c3ebe\n"
    },
    {
      "commit": "00aabf7d187bc05408199bd687a538b2e68bdc17",
      "tree": "3d70fecb8b5b64723b3dc2cf7250fe5f48f98b86",
      "parents": [
        "d24cd90486821535fb058531fac54aa5b9360693"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Jul 21 11:35:03 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Jul 22 17:38:54 2011 -0700"
      },
      "message": "Touch exploration state set to clients asynchronously and depended on talking service being enabled.\n\n1. Upon registration of an accessibility client the latter received only\n   the accessiiblity state and waiting for the touch exploration state\n   to be sent by the system in async manner. This led the very first\n   check of touch exploration state is checked a wrong value to be reported.\n   Now a state of the accessibility layer is returned to the client\n   upon registration.\n\n2. Removing the dependency on talking accessibility service to be enabled\n   for getting into touch exploration mode. What if the user wants to use\n   an accessibility service that shows a dialog with the text of the touched\n   view?\n\nbug:5051546\n\nChange-Id: Ib377babb3f560929ee73bd3d8b0d277341ba23f7\n"
    },
    {
      "commit": "7ef8611b5f3a893a46c7b9e22bdd8ab252e373ff",
      "tree": "d9d42c3f290659694cdee61510ae752215ddf793",
      "parents": [
        "556d0476e14803b406ddff7fe4c27baf1bf58334"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 22 15:46:52 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Jul 22 15:46:52 2011 -0700"
      },
      "message": "VPN: increase timeout period to 60 seconds for legacy VPN.\n\nSome VPN needs more time than others in order to create the secure tunnel.\nFor example, L2TP/IPSec PSK on average needs 15 seconds on WiFi. On mobile\nconnection, variation gets larger, and it sometimes needs more than 30\nseconds. This change increases timeout period from 30 to 60 seconds.\n\nChange-Id: I6006fd254a7bc91c22f63d2f3f20ea79ee9b05e2\n"
    },
    {
      "commit": "6dcf2d77767f73608caa316db534a1df64a2b272",
      "tree": "99667e27c525b543231739914fff8725b2293e18",
      "parents": [
        "06d6c1d2289972f253f9c30994562e3ab8a7d7a1",
        "199339169476d0d6d0ecaa8ed3bff3a9e9a0f430"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Jul 22 13:17:54 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 22 13:17:54 2011 -0700"
      },
      "message": "am 19933916: am ad55d351: Add better routes for secondary DNS\n\n* commit \u0027199339169476d0d6d0ecaa8ed3bff3a9e9a0f430\u0027:\n  Add better routes for secondary DNS\n"
    },
    {
      "commit": "199339169476d0d6d0ecaa8ed3bff3a9e9a0f430",
      "tree": "055b3c6f14bd11bb44a11c4d996870649f6e17aa",
      "parents": [
        "b7ad442c90146f736c6268c21e34a87fbcab6335",
        "ad55d35114237071133eb28ded93a014185d4e35"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Jul 22 13:15:56 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 22 13:15:56 2011 -0700"
      },
      "message": "am ad55d351: Add better routes for secondary DNS\n\n* commit \u0027ad55d35114237071133eb28ded93a014185d4e35\u0027:\n  Add better routes for secondary DNS\n"
    },
    {
      "commit": "ad55d35114237071133eb28ded93a014185d4e35",
      "tree": "7d68e5ba1765101bf98593325a97d52ed28559db",
      "parents": [
        "1c82f56f2453a8a7c83090017ab2427a74829b9a"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Jul 22 11:55:33 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Jul 22 12:52:21 2011 -0700"
      },
      "message": "Add better routes for secondary DNS\n\nWe\u0027d been doing no-gateway hostroutes for dns servers on secondary nets, but on\nsome devices (multi-homed stingray) this is a problem.  Add gateway-ed hostroutes\ninstead so the BP can do it\u0027s nonstandard \"magical\" demultiplexing.\n\nbug:5011392\nChange-Id: Ia48f69c8ddf2a37cfb8f014f078f96bf601d2ddb\n"
    },
    {
      "commit": "06d6c1d2289972f253f9c30994562e3ab8a7d7a1",
      "tree": "cc86e8fe0d8c9e0138c303defd1f9d79f2a51a25",
      "parents": [
        "38eea1b800c7374382f83f30fec85d0f6b415f13",
        "324afba161ae5b802e38f89c9015d8306ea3ddd1"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Fri Jul 22 12:27:37 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 12:27:37 2011 -0700"
      },
      "message": "Merge \"Fixing new minResizeWidth/Height API\""
    },
    {
      "commit": "324afba161ae5b802e38f89c9015d8306ea3ddd1",
      "tree": "84ce2bc32d90d491d9533d9df692333bd2171d65",
      "parents": [
        "35435997c790ae7c78aa6ccfdfd4188bfa5ce4a7"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Fri Jul 22 11:51:45 2011 -0700"
      },
      "committer": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Fri Jul 22 12:08:55 2011 -0700"
      },
      "message": "Fixing new minResizeWidth/Height API\n\nChange-Id: I6b57cca32ed7678597e7c0d81dc483ee294537a9\n"
    },
    {
      "commit": "8cbe6e9cef46adc14b6c3e0f3ea303b78232a8b9",
      "tree": "52feaff608421021c7ae2fb6939049130829efd8",
      "parents": [
        "423f0ed494d30bbae1a02c059769f0211f1e4d81",
        "91c9ac05efd7425565b5c8f0f3f8b7b9658ce143"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 22 10:52:34 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 22 10:52:34 2011 -0700"
      },
      "message": "Merge \"Fix issue #5050039: Launcher is sometimes rendering...\""
    },
    {
      "commit": "91c9ac05efd7425565b5c8f0f3f8b7b9658ce143",
      "tree": "c0722666ee56835bb53051cf608dfcf30d54893b",
      "parents": [
        "4ac052688a3011e3a174c78d75898e6888075720"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 21 21:52:09 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 22 10:41:38 2011 -0700"
      },
      "message": "Fix issue #5050039: Launcher is sometimes rendering...\n\n...underneath the system/status bar\n\nChange-Id: If65aba64df9362d4721051846a6da6d096a3dc9b\n"
    },
    {
      "commit": "b858c732f665fe9610f2d913230ae625f44a8caa",
      "tree": "9ff0defb4ed22d5265451b227202219957e6a4c3",
      "parents": [
        "7793719ca97571f5b3636d5a89cb067c71d627bd"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 22 19:54:34 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Fri Jul 22 19:54:34 2011 +0900"
      },
      "message": "Delay load the settings for the ongoing ime swither\n\nBug: 5029803\nChange-Id: I488ff7804a986b71bf01b3dfad0e65fd4707965d\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": "b0878223db87700cdc988a6d9197ca4e3c4772db",
      "tree": "923fedb711db5824390f501569bc756bdb7caa45",
      "parents": [
        "1a2fcea1a28074f15126471daa5a8650cb5e2ecc",
        "6800a80199477c90fc64af7211a177de06478a02"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@android.com",
        "time": "Thu Jul 21 22:35:32 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 21 22:35:32 2011 -0700"
      },
      "message": "am 6800a801: Merge \"frameworks/base: Cap the number of toasts that a package can post.\"\n\n* commit \u00276800a80199477c90fc64af7211a177de06478a02\u0027:\n  frameworks/base: Cap the number of toasts that a package can post.\n"
    },
    {
      "commit": "1a2fcea1a28074f15126471daa5a8650cb5e2ecc",
      "tree": "84c2290fff7572ea4548580ee983b58ac0f18bd2",
      "parents": [
        "e70b2b8fe0c265171f3a367a66c99b36c62567c7",
        "2f4698fda46a3d2a6e78019588d77bae1cfa7193"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@android.com",
        "time": "Thu Jul 21 22:23:46 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 21 22:23:46 2011 -0700"
      },
      "message": "am 2f4698fd: Merge \"frameworks/base: unlink death notifications of Vibrate requests\"\n\n* commit \u00272f4698fda46a3d2a6e78019588d77bae1cfa7193\u0027:\n  frameworks/base: unlink death notifications of Vibrate requests\n"
    },
    {
      "commit": "6800a80199477c90fc64af7211a177de06478a02",
      "tree": "a241c33785724b3907d8a7dbbe111af56c9d5551",
      "parents": [
        "2f4698fda46a3d2a6e78019588d77bae1cfa7193",
        "f9eb06ca691ed14c8b55840a07333330ae347e22"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@android.com",
        "time": "Thu Jul 21 22:21:19 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Thu Jul 21 22:21:19 2011 -0700"
      },
      "message": "Merge \"frameworks/base: Cap the number of toasts that a package can post.\""
    },
    {
      "commit": "2f4698fda46a3d2a6e78019588d77bae1cfa7193",
      "tree": "1b50c51825e9acbf432a3b7828b41b2131f4b7fa",
      "parents": [
        "9bcf26ea7aa108ce4bf4e973b4774d3e60eebafe",
        "8a61f496919504a86244d2f833acfec9bc20a745"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@android.com",
        "time": "Thu Jul 21 22:18:47 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Thu Jul 21 22:18:47 2011 -0700"
      },
      "message": "Merge \"frameworks/base: unlink death notifications of Vibrate requests\""
    },
    {
      "commit": "b6055fe7472f16901f0d06f405ac512d5cdafec4",
      "tree": "0d3e37addb78d953086e3fc830b7ae7b4369d6f0",
      "parents": [
        "f726c1de8bb08a5ac08f4f7c7d890db103922b68",
        "12b933d0d9252decaae9fee2456bb1e1cd94c085"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Thu Jul 21 18:44:52 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 18:44:52 2011 -0700"
      },
      "message": "Merge \"NetworkManagementService: receive bandwidth controller events\""
    },
    {
      "commit": "a5e9bab0e4f86149e62b99e4d230b6006bf7f9a2",
      "tree": "c7f68f5d1b6dcfeb8b95c60fc56b94db4be11abe",
      "parents": [
        "ae1294cb6b75f571236f98ecf23987d09bda91f4",
        "6e680dea3bc9e2d4ba1a09f428c303cd2a59c051"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 21 16:24:27 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 16:24:27 2011 -0700"
      },
      "message": "Merge \"UsbDeviceManager: Add USB notification string for USB accessory mode\""
    },
    {
      "commit": "ae1294cb6b75f571236f98ecf23987d09bda91f4",
      "tree": "87a1966630af4deaf8da3200e0175f8ed5d0cb50",
      "parents": [
        "8afdd412acc4e5a544074b2d1509d0db36409679",
        "d462ecf8f82076d21c85bdeeefbd16a1a91d2805"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 21 16:24:18 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 16:24:18 2011 -0700"
      },
      "message": "Merge \"USB: Fix handling USB accessory attached when device is booting\""
    },
    {
      "commit": "c09bd156b74a3e366beb26cf1eb15a2912e8e02d",
      "tree": "0d979b35df747f916fcc6da03b88b5a0d7589f0b",
      "parents": [
        "b72dedfa5e8db9e0fb532b4c362df252c3495591",
        "f0754f5ba7a45b517cffcb3c2c96f2a32aeac06d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 21 16:19:11 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 16:19:11 2011 -0700"
      },
      "message": "Merge \"Fix bug where memory trim was not being delivered with correct level.\""
    },
    {
      "commit": "f0754f5ba7a45b517cffcb3c2c96f2a32aeac06d",
      "tree": "5083b856cd3f6825fe674d00b3f955a591faff72",
      "parents": [
        "040c2f91ed0968f3193031cabbf51b756930adc7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 21 16:02:07 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 21 16:02:56 2011 -0700"
      },
      "message": "Fix bug where memory trim was not being delivered with correct level.\n\nAlso improve how we handle services, keeping track of whether they showed\nUI and if so putting them immediately on the LRU list.\n\nChange-Id: I816834668722fc67071863acdb4a7f427a982a08\n"
    },
    {
      "commit": "6e680dea3bc9e2d4ba1a09f428c303cd2a59c051",
      "tree": "ce8c261b3f0025d055f9cdbf2210d5792279d6e4",
      "parents": [
        "d462ecf8f82076d21c85bdeeefbd16a1a91d2805"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 21 15:36:09 2011 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 21 15:36:09 2011 -0700"
      },
      "message": "UsbDeviceManager: Add USB notification string for USB accessory mode\n\nBug: 5062341\n\nChange-Id: I93af8274e538009dd8f00d1cea782b62334e43f1\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\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": "d462ecf8f82076d21c85bdeeefbd16a1a91d2805",
      "tree": "88d12b0084c53b857ec58baae8c6cf3b1b6fe20d",
      "parents": [
        "edf0178265efee73da80754d1d76e3d69e1f593f"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 21 13:55:16 2011 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Jul 21 14:30:36 2011 -0700"
      },
      "message": "USB: Fix handling USB accessory attached when device is booting\n\nAlso defer anything that could start an activity from \"system ready\"\nto \"boot completed\" time.\n\nBug: 5051683\n\nChange-Id: I69db751cb991dd247bd0ac3c70a0d84c0d71f365\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "d7a374f6f8f52a88d7e9a4660d9bf9037cf0b659",
      "tree": "1e1de80e54f7d0a5a2956587d64b396def9805ed",
      "parents": [
        "d2bea209658c1e2b7575cddf4338d44e305ee554",
        "b0c1b80f471bd49af60e7b78161d814e355a6972"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Thu Jul 21 13:45:38 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 13:45:38 2011 -0700"
      },
      "message": "Merge \"Fix multicast API\""
    },
    {
      "commit": "b0c1b80f471bd49af60e7b78161d814e355a6972",
      "tree": "080cb76ac3b4dd84539bc11dc359dae3cc76764f",
      "parents": [
        "6461c97331e9e672e2abd6a46eaaa7b948974484"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Tue Jul 19 15:44:25 2011 -0700"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Thu Jul 21 13:37:57 2011 -0700"
      },
      "message": "Fix multicast API\n\nFix multicast API and disable mutlicast V6 packets at driver start\n\nBug: 5016558\nChange-Id: I1e04a905a36045e52c785c1dc702cc246a381a57\n"
    },
    {
      "commit": "6179ea3196e9306d3f14361fe9ef14191b1edba6",
      "tree": "d821da4d5840aebcddf4a714a3217ec595847bc9",
      "parents": [
        "ac4159549c10dbe428d42980278c0e43ecc8d93f"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jun 28 01:12:41 2011 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Jul 21 12:04:54 2011 -0700"
      },
      "message": "Adding accessibility support to the Status Bar.\n\n1. Added content description to pretty much all animals\n   in the zoo including buttons in the navigation bar,\n   notifications and status icons for battery, signal,\n   data, etc.\n\n2. Rectored to avoid ovelaying views since they block\n   touch exploratino. In general overlaying views\n   cause trouble for touch exploration and accessibility\n   in general.\n\n3. Avoid sending accessibility events in case the user is\n   touching outside of the StatauBAr panels to avoid\n   confusion.\n\n4. Added records to accessibility events in the places where\n   this would help the presentation. So the event comes from\n   a given \"leaf\" view and its predecessor is adding a record\n   to the event for itself to provide more cotext. It is up\n   to the accessiiblity service to choose how to present that.\n\nbug:4686943\n\nChange-Id: I1c1bd123d828fb10911bca92130e9a05c1f020b3\n"
    },
    {
      "commit": "526ebf9b1001910fa1e957086102ed697170cb2f",
      "tree": "4f981845cef12709ff6ac9466b1eabfdc3cbd8ab",
      "parents": [
        "4735a5d3d4704f39a2573892f7eedc14563383be",
        "2e448f75c0392969792032461b2f90017aebba7c"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Thu Jul 21 11:43:03 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 21 11:43:03 2011 -0700"
      },
      "message": "Merge \"Fix notification manager delete intent.\""
    },
    {
      "commit": "594745abefe53abe7f577bbb3cc176d52ee00ba1",
      "tree": "9ae1734480108cc0c819686b4050a922dd61a27f",
      "parents": [
        "ddb8e3b24b2fe3e4371ca8c1239748f5c71910f6",
        "b9f87f1970217d24213c8e3dd7755a0e4d82f8eb"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Jul 21 11:28:01 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 21 11:28:01 2011 -0700"
      },
      "message": "am b9f87f19: Merge \"First pass tying into per-interface DNS cache\"\n\n* commit \u0027b9f87f1970217d24213c8e3dd7755a0e4d82f8eb\u0027:\n  First pass tying into per-interface DNS cache\n"
    },
    {
      "commit": "1efe4d5cfd3913b3c4efa7aee4bf9fea262c0ad2",
      "tree": "de7143b68e2f2899829b1a1ec8ca3f2e0320a8b8",
      "parents": [
        "d40c93f61ca5b3f2351b8db716f67b58f1625e85"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri May 20 14:35:50 2011 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jul 20 14:47:41 2011 -0700"
      },
      "message": "First pass tying into per-interface DNS cache\n\nChange-Id: Iacce225d392786e37fa2dbf9647045fca0b70e64\n"
    },
    {
      "commit": "b503b85491cf165c8d098e2ae08a7e9f4db0bd03",
      "tree": "388664d9c5cb1ebcacef05d354ef5cafb9f5cb28",
      "parents": [
        "a331cdbb4082a391bf4f21cf6dffea770e31517f",
        "44bb251be76894967ea57a3c904377e32325bc3e"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Wed Jul 20 12:28:04 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 12:28:04 2011 -0700"
      },
      "message": "Merge \"ConnectivityService: Implement VPN callbacks to update DNS servers.\""
    },
    {
      "commit": "47d4caf41b052ab88f747ccc789754be5f44f8af",
      "tree": "56b18a59efacb4f000db04aed5c4715f9dd5c6e7",
      "parents": [
        "eac3503deb95bee21f811cc14ad26fa5aeca98f0",
        "c96e6ccec9c41dee75f54e0db418df345e2a9bd9"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Jul 20 10:10:24 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 20 10:10:24 2011 -0700"
      },
      "message": "Merge \"Start default connections on startup.\""
    },
    {
      "commit": "cf4cfc6fc88f204e2e496e37337f7e70809bbf6f",
      "tree": "4f77455bed26477fcb5ce415f7cca678936d32ec",
      "parents": [
        "59f13c7dfb3cb38f03b7cc207d8e381f6274bfef",
        "1bfaf561b7c09388311f1834f17e057739cf587a"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Tue Jul 19 18:43:57 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 18:43:57 2011 -0700"
      },
      "message": "Merge \"Adding resizeMinWidth/Height to AppWidgetProviderInfo\""
    },
    {
      "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": "62ea5e80bf63b0b2ad87ca731fbaac8b1e195247",
      "tree": "2c3765178eb316b4842c6ada7bab59ac2be9febb",
      "parents": [
        "116b208b3a1712b1f4b205f8aca8dc0d5491458e",
        "b8f400020b201cc40f5e16277af0dbafec38b8a3"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 19 18:07:00 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 18:07:00 2011 -0700"
      },
      "message": "Merge \"Fix issue #4999574: Disabled system app not listed in Settings after reboot\""
    },
    {
      "commit": "116b208b3a1712b1f4b205f8aca8dc0d5491458e",
      "tree": "13ab906626b681ad52dd732c449325d435e47806",
      "parents": [
        "588bf7a53e844473dc9be6828a893664935121de",
        "31ca854cdba31ec6ab089af743a8701a6192e07e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 19 18:06:25 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 19 18:06:25 2011 -0700"
      },
      "message": "Merge \"Fix issue #4976176: Font size setting does not persist\""
    },
    {
      "commit": "44bb251be76894967ea57a3c904377e32325bc3e",
      "tree": "f0dbbf37d0246d02cbb9be156d6dfb749d96bd4e",
      "parents": [
        "6e47348392634ad4fc5d6b92388028e136c58f0f"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Jul 14 18:01:57 2011 -0700"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Jul 19 17:15:41 2011 -0700"
      },
      "message": "ConnectivityService: Implement VPN callbacks to update DNS servers.\n\nChange-Id: I7b5063f0344a2a5c2754600386982e870adc1161\n"
    },
    {
      "commit": "b8f400020b201cc40f5e16277af0dbafec38b8a3",
      "tree": "c67a566a9dd2e1a81e041508434506e26034f975",
      "parents": [
        "6dd005b48138708762bfade0081d031a2a4a3822"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 19 15:17:43 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 19 15:17:43 2011 -0700"
      },
      "message": "Fix issue #4999574: Disabled system app not listed in Settings after reboot\n\nChange-Id: I1a0a0724f72adcfa6aedffdcd3112bd4faa909d3\n"
    },
    {
      "commit": "31ca854cdba31ec6ab089af743a8701a6192e07e",
      "tree": "0528bf886c3c8fd7266dd7871784e09eb66c4c62",
      "parents": [
        "6dd005b48138708762bfade0081d031a2a4a3822"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 19 14:58:28 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 19 14:58:28 2011 -0700"
      },
      "message": "Fix issue #4976176: Font size setting does not persist\n\nChange-Id: Id58caf990bdd3aac5ea97aaba45652ffad1f678a\n"
    }
  ],
  "next": "9d29d155c51a26d789cce2c4c24c659487c63554"
}
