)]}'
{
  "log": [
    {
      "commit": "db3c8678e5cbdfec011afaf25bde2091152c30ad",
      "tree": "e0f4b593cfba82bd5a35e921eebf351091d2e542",
      "parents": [
        "6b7358d9511df7e519bb417fbed6017c06a33d45"
      ],
      "author": {
        "name": "Haoyu Bai",
        "email": "bhy@google.com",
        "time": "Wed Jun 20 14:29:57 2012 -0700"
      },
      "committer": {
        "name": "Haoyu Bai",
        "email": "bhy@google.com",
        "time": "Tue Jul 17 17:13:03 2012 -0700"
      },
      "message": "Network data activity change intent for network interfaces.\n\nThe activity notification is received from netd, an intent\nDATA_ACTIVITY_CHANGE is then raised for other part of the system to\nconsume.\n\nChange-Id: Idfcc4763c51c5b314c57f546c12557082f06bebf\n"
    },
    {
      "commit": "6b7358d9511df7e519bb417fbed6017c06a33d45",
      "tree": "d3ed008a6b7237153974cf0c6636607a1ee2d848",
      "parents": [
        "71cac13beaf6bb01e0cd8bb58273ccc9b8cbda87"
      ],
      "author": {
        "name": "Haoyu Bai",
        "email": "bhy@google.com",
        "time": "Tue Jul 17 16:36:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 17 16:55:05 2012 -0700"
      },
      "message": "Netd event code for interface class acitivity.\n\nChange-Id: I83d5ca9ab854cb30ce6d9c06a977ca295f0cdbfd\n"
    },
    {
      "commit": "cdce0b9897183f8aef08fe200feb4027fac56290",
      "tree": "43ca233c53b86d7e076aa5ee055872de720d020f",
      "parents": [
        "fe19f1234e460a22e43a53665db1c48613844fa6"
      ],
      "author": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Thu Jul 12 19:06:15 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:31:02 2012 -0700"
      },
      "message": "Handle airplane mode messages in BroadcastReceiver, safe locking, etc\n\nHandle airplane mode messages in BroadcastReceiver\nSafe-lock the access of mBluetooth as a indication of binding state\nbreak indent\n\nChange-Id: Ib24ba0b1f5102c80e55e44b40a8dbf88bc2fad2e\n"
    },
    {
      "commit": "fe19f1234e460a22e43a53665db1c48613844fa6",
      "tree": "43d2967d27df85f154d32c2c2af75cb15bc47584",
      "parents": [
        "6fde3098074ab2551867d1cd919958383b15725f"
      ],
      "author": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Thu Jul 12 16:03:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:30:45 2012 -0700"
      },
      "message": "Add TODO comments to remove start/stopReverseTethering\n\nChange start/stopReverseTethering permission from CHANGE_NETWORK_STATE\nto CONNECTIVITY_INTERNAL\n\nChange-Id: Iac76d5af6418e6a3e2d2f77bf713466981285e1a\n"
    },
    {
      "commit": "6fde3098074ab2551867d1cd919958383b15725f",
      "tree": "1890a45cdc44c8cfd8db46de62a7d3b41e360f1b",
      "parents": [
        "a8c6df0d3a6b929cac3e59abde8309e8a45ea78a"
      ],
      "author": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Wed Jul 11 17:10:07 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:30:10 2012 -0700"
      },
      "message": "Minor changes. Change some instance variables to be final.\n\nVariable name changes, better code reability.\n\nChange-Id: I9f0e9c8a57d4bacf0723be1f91d621c592860683\n"
    },
    {
      "commit": "a8c6df0d3a6b929cac3e59abde8309e8a45ea78a",
      "tree": "93fe3513d777e30ac8a75cfc1cd5145de6b44106",
      "parents": [
        "9631314e3d28b6e96ef0b7cc777f1a7747a0ac39"
      ],
      "author": {
        "name": "Fred",
        "email": "fredc@broadcom.com",
        "time": "Wed Jul 11 10:25:23 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:29:44 2012 -0700"
      },
      "message": "Removed startService() call from BluetoothManagerService.\n\nBT enable()/disable() are handled by using the binder interface\n\nChange-Id: I0bb8d4984129706e424320241ca3ea7e12caf0d3\n\nConflicts:\n\n\tcore/java/android/bluetooth/IBluetooth.aidl\n"
    },
    {
      "commit": "9631314e3d28b6e96ef0b7cc777f1a7747a0ac39",
      "tree": "382904644d26733e0cafd295924397e81198a634",
      "parents": [
        "5a1195fd5faf40428bc98e5bc24d09edbf3c3b6c"
      ],
      "author": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Fri Jun 29 16:57:31 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:29:12 2012 -0700"
      },
      "message": "Fix merge error, put in tmp workaround for input manager.\n\nFix merge error, missing enableNoAutoConnect api.\nRemove bluetoothF from inputManageF.systemReady call as tmp workaround.\nRecover shutdownRadios(MAX_RADIO_WAIT_TIME) call in ShutdownThread\n\nChange-Id: Ice2b5c54267755bdbf56c742feabbb8709b92570\n"
    },
    {
      "commit": "bf072a712f584ae1c01022835b0de21c40513d06",
      "tree": "ca02907919a6fc53d048f20059960f68062a314b",
      "parents": [
        "c2f5cc50f70bbb82729659f72e1491de137f7fe2"
      ],
      "author": {
        "name": "fredc",
        "email": "fredc@broadcom.com",
        "time": "Wed May 09 16:52:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:28:12 2012 -0700"
      },
      "message": "Moved BluetoothAdapter.ACTION_STATE_CHANGED broadcast from AdapterService to BluetoothManagerService\n\nChange-Id: I88e5f3fe050cf11eae9c5cf1b7c393a178b8f9b1\n"
    },
    {
      "commit": "c2f5cc50f70bbb82729659f72e1491de137f7fe2",
      "tree": "b4ab8a4f700eee070c1544780324f01b44e6e159",
      "parents": [
        "20738945d482d9e313cd8b48c1bd83b6278934c7"
      ],
      "author": {
        "name": "zzy",
        "email": "zhenye@broadcom.com",
        "time": "Tue May 01 18:05:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:27:44 2012 -0700"
      },
      "message": "disable the sync addr flag\n"
    },
    {
      "commit": "a732ffd8e07a024fb15832990546d38d1ddf384e",
      "tree": "043fc5ca4e6118601ed771225759a5fb60096445",
      "parents": [
        "7329e70841ff1ab78e0a9e2042aee1f10102eaf4"
      ],
      "author": {
        "name": "Andre Eisenbach",
        "email": "andre@broadcom.com",
        "time": "Wed May 02 00:39:24 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:26:26 2012 -0700"
      },
      "message": "Re-enable Bluetooth after a reboot, even if airplane mode is enabled.\n\nThis is to resolve Buganizer issue 6325950 and make the behaviour of\nBlueooth and Wifi consistant.\n\nChange-Id: Idd6cfa79136f7847e9e670d6d2aa0bf613b0381f\n"
    },
    {
      "commit": "d6883533e4ac3f73d2fde1db9a1dddf06dac6709",
      "tree": "97b2c1857ff7fd3467541958c2d3c61f4bbee671",
      "parents": [
        "903ac6f399dcd4f574bf388daa7b5f5907d448d3"
      ],
      "author": {
        "name": "fredc",
        "email": "fredc@broadcom.com",
        "time": "Wed Apr 25 17:46:13 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:25:05 2012 -0700"
      },
      "message": "Fixed socket not closing on BT off. Used RemoteCallbackList to monitor binder deaths in BluetoothManagerService.\n\nChange-Id: I524964bd2836d8c5a4bae095b93ac9481337941d\n"
    },
    {
      "commit": "116d1d4696ac8e300c83dd8a95e20e67717ef520",
      "tree": "8a29707de7929b1964a580a3174894c2d82e2bd4",
      "parents": [
        "649fe497cea2f19e937f84218d1080bdcefe47f2"
      ],
      "author": {
        "name": "fredc",
        "email": "fredc@broadcom.com",
        "time": "Fri Apr 20 14:47:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:23:34 2012 -0700"
      },
      "message": "Fixed issue with getting Bluetooth adapter\u0027s name and airplane mode\n\nChange-Id: I18b632223574aa41b09ba30de8e35417fad86cbe\n"
    },
    {
      "commit": "649fe497cea2f19e937f84218d1080bdcefe47f2",
      "tree": "35a6e3b7a02ba6f342feb4258336c43d54e08a4d",
      "parents": [
        "4bedba49fe6989387fd04499b175af56e068da28"
      ],
      "author": {
        "name": "fredc",
        "email": "fredc@broadcom.com",
        "time": "Thu Apr 19 01:07:18 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:22:56 2012 -0700"
      },
      "message": "Fixed BT on/off issues and added airplane mode handling\n\nChange-Id: If39df19b99a3f45ebe82e89205d8bb0ff036e2a2\n"
    },
    {
      "commit": "f24588615efa6c781ad963f1a5bbdf47359e1b53",
      "tree": "499b3c68998fe139e24b9f18df3dabfccbbaf45b",
      "parents": [
        "a097f51e5fde9d00ebe99f4e1915cc6d4cd078ad"
      ],
      "author": {
        "name": "fredc",
        "email": "fredc@broadcom.com",
        "time": "Mon Apr 16 15:18:27 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:21:50 2012 -0700"
      },
      "message": "Fixed issue with Bluetooth not turning on if enabled called twice in a row or disabled called twice in a row\n\nChange-Id: I26cac2fa347934e0740578b811aa5a6767cf4862\n"
    },
    {
      "commit": "0f42037eb7b5118015c2caca635538324ccf0ccf",
      "tree": "46a7ba36216a2cb617541ec68f18b413419e148f",
      "parents": [
        "919a4c6264b733585152ce1dc6f868c1093d368b"
      ],
      "author": {
        "name": "fredc",
        "email": "fredc@broadcom.com",
        "time": "Thu Apr 12 00:02:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:20:54 2012 -0700"
      },
      "message": "Non persistent adapter service\n\nChange-Id: Ib13d5c77416e58161df0e04d7a15ec0dddbde8b5\n\nConflicts:\n\n\tcore/java/android/bluetooth/BluetoothInputDevice.java\n\nConflicts:\n\n\tcore/java/com/android/internal/app/ShutdownThread.java\n\tservices/java/com/android/server/SystemServer.java\n\nConflicts:\n\n\tservices/java/com/android/server/SystemServer.java\n\tservices/java/com/android/server/pm/ShutdownThread.java\n"
    },
    {
      "commit": "e21a4ac09d2473becaea43a73d19e9e836e7732a",
      "tree": "83818e511bf4a9592d4711458c8c8c305037904e",
      "parents": [
        "75780aa43103c1810ce422f30fb0cbebde4a0716"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue Mar 06 17:15:16 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:14:15 2012 -0700"
      },
      "message": "Add a new version of the disable API.\n\nThis allows for the setting to be persisted or not.\nAlso turn on Bluetooth in System Server if needed.\nIt won\u0027t work currently because the service wouldn\u0027t have\nstarted.\n\nChange-Id: I15fa2bff93aa32134c1b565fcbe90ba68614b6a1\n"
    },
    {
      "commit": "3a6794cad739c2b6fcc9b3fc6c4461f88728af8a",
      "tree": "8b809f80ebb1654f7634d294b40dcd67097dd982",
      "parents": [
        "a0a69897dfa3f0ede5558326172fb676e5dbe359",
        "1abb1cb3a8fe17f7866150604c2fd73751da787e"
      ],
      "author": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Mon Jul 16 21:13:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:13:26 2012 -0700"
      },
      "message": "Merge \"Changes to Bluetooth Service structure.\""
    },
    {
      "commit": "a0a69897dfa3f0ede5558326172fb676e5dbe359",
      "tree": "f03a8e512704ee7715aaf4f6a1f40cba847c17d9",
      "parents": [
        "a8ae2ee371decb9504c8b449de45a253eae7d5c4",
        "34196187365687d3f144a6de5fef811b52545ac0"
      ],
      "author": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Mon Jul 16 21:13:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:13:06 2012 -0700"
      },
      "message": "Merge \"Remove BT references from System Server.\""
    },
    {
      "commit": "a8ae2ee371decb9504c8b449de45a253eae7d5c4",
      "tree": "51d02e73cf0d590abc4251f54d8d60519df96bc2",
      "parents": [
        "d4d4e715c5f4423b9fadce77b120b8488e011337",
        "9773ebb7783ecd29957b43acbe5b26ba459a7458"
      ],
      "author": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Mon Jul 16 21:12:48 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 21:12:48 2012 -0700"
      },
      "message": "Merge \"Dock: Temporary removal of function to get BT address\""
    },
    {
      "commit": "c69238ebc8d011ce225c9540bcf4e79bd3fa8eb0",
      "tree": "d0ce233e8b7df56fd7e3c61015f027ae09e6cdee",
      "parents": [
        "11b0395acad2556a7d20e67799dc31a967294a30",
        "3cc321ecf505d87850740ad3c63849e6793a8ef6"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 16 16:18:13 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 16:18:13 2012 -0700"
      },
      "message": "Merge \"Remove dithering support.\""
    },
    {
      "commit": "3cc321ecf505d87850740ad3c63849e6793a8ef6",
      "tree": "a0bb81da762033fc65a5837de1c27193a4b64c28",
      "parents": [
        "ef4e817ad642303509da1cb28ce5a265e1ac3e17"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 16 16:04:23 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 16 16:17:25 2012 -0700"
      },
      "message": "Remove dithering support.\n\nThe dithering flag is no longer implemented in Surface Flinger\nso this is all dead code.\n\nChange-Id: I74c0e452923207e5b7cfe0eeca9457e5cb990947\n"
    },
    {
      "commit": "f422a5669457c152e36e889c820d64b37e005167",
      "tree": "b32ec54f710ef3b08c624cbff52a2ef44a792a7d",
      "parents": [
        "8ec65d5ba723c6e305680285f5327ae2f04dc38b",
        "55e395ab33f24b009d87a4d45a5566394260fff7"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 16 15:52:54 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 15:52:54 2012 -0700"
      },
      "message": "Merge \"Remove freezeDisplay(), which is no-op.\""
    },
    {
      "commit": "55e395ab33f24b009d87a4d45a5566394260fff7",
      "tree": "43b06113a543c8fe4aff877e997653f0b10ee2a0",
      "parents": [
        "401b1f85746ab7005907747a59534def967d825b"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 16 14:57:22 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 16 14:57:22 2012 -0700"
      },
      "message": "Remove freezeDisplay(), which is no-op.\n\nChange-Id: I981ee49e6e2d41a09feaee4b384392e83f7faf3d\n"
    },
    {
      "commit": "7d4252171c8f58e18359e476c9768fea39778489",
      "tree": "e5e4a8486bca968420a35eda9ded70a97eab0c44",
      "parents": [
        "b613e42f0c09106e1b134f1eed62ef4cb88a4506",
        "e0fd693c6098f59004f9e96ad75c058e26c337b0"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jul 16 14:26:14 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 16 14:26:14 2012 -0700"
      },
      "message": "Merge \"Improve geofencing: throttle location updates with distance to fence.\""
    },
    {
      "commit": "e0fd693c6098f59004f9e96ad75c058e26c337b0",
      "tree": "d015b05584ab8cb4feab93fe8bdbedcbad7502fa",
      "parents": [
        "357d9cb861e05c514acba8cc0a8fc5ef70e4a356"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Jul 11 10:26:13 2012 -0700"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Mon Jul 16 12:18:52 2012 -0700"
      },
      "message": "Improve geofencing: throttle location updates with distance to fence.\n\nPreviously any geofence (proximity alert) would turn the GPS on at full rate.\nNow, we modify the GPS interval with the distance to the nearest geofence.\nA speed of 100m/s is assumed to calculate the next GPS update.\n\nAlso\no Major refactor of geofencing code, to make it easier to continue to improve.\no Discard proximity alerts when an app is removed.\no Misc cleanup of nearby code. There are other upcoming changes\n  that make this a good time for some house-keeping.\n\nTODO:\nThe new geofencing heuristics are much better than before, but still\nrelatively naive. The next steps could be:\n- Improve boundary detection\n- Improve update thottling for large geofences\n- Consider velocity when throttling\n\nChange-Id: Ie6e23d2cb2b931eba5d2a2fc759543bb96e2f7d0\n"
    },
    {
      "commit": "f08a8b78b61bc7f1a6a71c70da25ec3ef41b8cff",
      "tree": "81aad8578fe2518b9c8159a88adba0f893d3d390",
      "parents": [
        "1696af969294e3270011407ad0ed5c4ceb9b28c1"
      ],
      "author": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Mon Jul 16 12:02:10 2012 -0700"
      },
      "committer": {
        "name": "Adam Cohen",
        "email": "adamcohen@google.com",
        "time": "Mon Jul 16 12:04:17 2012 -0700"
      },
      "message": "Fixing issue where you couldn\u0027t set null RemoteViews for a widget\n\n-\u003e As noted here: http://code.google.com/p/android/issues/detail?id\u003d35014\n\nChange-Id: Id5d1c47b6961d4b448453d8b16700801c0137f2b\n"
    },
    {
      "commit": "c9c9a48e7bafae63cb35a9aa69255e80aba83988",
      "tree": "80295bae9e6546d9d7fb604af0fa772ebd18a4fc",
      "parents": [
        "dd0d0ba654cea3051e44ba9ae20ac4b269e123c0"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Jul 16 08:46:07 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Jul 16 08:46:11 2012 -0700"
      },
      "message": "Removing a workaround for incorrect window position on window move.\n\n1. The window manager was not notifying a window when the latter\n   has been moved. This was causing incorrect coordinates of the\n   nodes reported to accessibility services. To workaround that\n   we have carried the correct window location when making a\n   call from the accessibility layer into a window. Now the\n   window manager notifies the window when it is moved and the\n   workaround is no longer needed. This change takes it out.\n\n2. The left and right in the attach info were not updated properly\n   after a report that the window has moved.\n\n3. The accessibility manager service was calling directly methods\n   on the window manager service without going through the interface\n   of the latter. This leads to unnecessary coupling and in the\n   long rung increases system complexity and reduces maintability.\n\nbug:6623031\n\nChange-Id: Iacb734b1bf337a47fad02c827ece45bb2f53a79d\n"
    },
    {
      "commit": "1abb1cb3a8fe17f7866150604c2fd73751da787e",
      "tree": "a2f4fa365665fc5b25fc66c6f7b90ea3ca719cfc",
      "parents": [
        "34196187365687d3f144a6de5fef811b52545ac0"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Wed Jan 25 16:14:50 2012 -0800"
      },
      "committer": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Fri Jul 13 22:22:51 2012 -0700"
      },
      "message": "Changes to Bluetooth Service structure.\n\nChanges to make Bluetooth Service part of the system_service.\nThese changes may be temporary.\n\nChanges to update to the new disable API.\n\nChange-Id: If89dba17e6e6c6daa53c37684221763a2da076e9\n\nConflicts:\n\n\tservices/java/com/android/server/pm/PackageManagerService.java\n"
    },
    {
      "commit": "34196187365687d3f144a6de5fef811b52545ac0",
      "tree": "41b6c56fd27831be657e028f719130c21f03c010",
      "parents": [
        "9773ebb7783ecd29957b43acbe5b26ba459a7458"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue Jan 17 17:00:34 2012 -0800"
      },
      "committer": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Fri Jul 13 22:22:51 2012 -0700"
      },
      "message": "Remove BT references from System Server.\n\nChange-Id: Icfdb3e140aa35174a8b70da57472a1bf2bd0143b\n\nConflicts:\n\n\tservices/java/com/android/server/SystemServer.java\n"
    },
    {
      "commit": "9773ebb7783ecd29957b43acbe5b26ba459a7458",
      "tree": "62d4c1452adb59a4d4aa41fb0f1f76c4274703e2",
      "parents": [
        "313a2167098ce8498db3a50d70724f260e8169c0"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue Jan 17 16:51:41 2012 -0800"
      },
      "committer": {
        "name": "Matthew Xie",
        "email": "mattx@google.com",
        "time": "Fri Jul 13 22:22:51 2012 -0700"
      },
      "message": "Dock: Temporary removal of function to get BT address\n\nChange-Id: I0d1033654e2708f864649f2b2568be7c9da014ed\n"
    },
    {
      "commit": "99e34591c63ef534ac8042e4978dd54f2e0b65f9",
      "tree": "a3cee2206b676fa463f84ba863d472534c1d5abe",
      "parents": [
        "939f2e43a80f9a6df16b7e18eba5cfffdbf032da"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Jul 13 20:23:16 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 13 20:23:16 2012 -0700"
      },
      "message": "Does not compile!!!\n\nRevert \"Removing a workaround for incorrect window position on window move.\"\n\nThis reverts commit 939f2e43a80f9a6df16b7e18eba5cfffdbf032da"
    },
    {
      "commit": "939f2e43a80f9a6df16b7e18eba5cfffdbf032da",
      "tree": "7cd646769f8ca112a2818cad0e66be2adb3203a2",
      "parents": [
        "dd0d0ba654cea3051e44ba9ae20ac4b269e123c0"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jul 11 12:00:27 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Jul 13 19:53:37 2012 -0700"
      },
      "message": "Removing a workaround for incorrect window position on window move.\n\n1. The window manager was not notifying a window when the latter\n   has been moved. This was causing incorrect coordinates of the\n   nodes reported to accessibility services. To workaround that\n   we have carried the correct window location when making a\n   call from the accessibility layer into a window. Now the\n   window manager notifies the window when it is moved and the\n   workaround is no longer needed. This change takes it out.\n\n2. The left and right in the attach info were not updated properly\n   after a report that the window has moved.\n\n3. The accessibility manager service was calling directly methods\n   on the window manager service without going through the interface\n   of the latter. This leads to unnecessary coupling and in the\n   long rung increases system complexity and reduces maintability.\n\nbug:6623031\n\nChange-Id: Ibbf98afd29439783ba331a7a0cdce55d7f138922\n"
    },
    {
      "commit": "052db7c25e859be174ab0976e6a31d0604df85a9",
      "tree": "2fd589cfd4fae519e9502847254ca426919f7780",
      "parents": [
        "489041dd4192e594f2180ea7bff705894ab4031d",
        "322e40315609acd5a608440bc469d873e09559ca"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Jul 13 13:39:25 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 13 13:39:25 2012 -0700"
      },
      "message": "Merge \"Further isolate layout side from animation side.\""
    },
    {
      "commit": "322e40315609acd5a608440bc469d873e09559ca",
      "tree": "ed1f35d926810a38b1180a431b50a05f40cd13b1",
      "parents": [
        "fbf885b652272013f44da71e9f77923333bf62eb"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Jul 13 13:35:20 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Jul 13 13:35:20 2012 -0700"
      },
      "message": "Further isolate layout side from animation side.\n\n- Use local AppWindowAnimators in WindowAnimator rather than\n    using shared WindowManagerService objects.\n- Use local WindowStateAnimators in AppWindowAnimator rather\n    than use AppToken\u0027s WindowState objects.\n- Remove redundant WindowManagerService parameter passed to\n    AppWindowAnimator ctor.\n- Keep from copying parameters from performLayout if the\n    parameters haven\u0027t changed since the last copy.\n- Link WindowStateAnimator to AppWindowAnimator to keep\n    from going through WindowStateAnimator.mWin,\n    WindowState.mAppToken and AppWindowToken.mAppAnimator.\n- Converted attached WindowState in WindowStateAnimator to\n    WindowStateAnimator to eliminate multiple conversions.\n\nChange-Id: I5e35af88d8fdc1a7454984eaea91a1bc4f926978\n"
    },
    {
      "commit": "af665efcbccc621fdeb29422bb422f04adad6972",
      "tree": "23a610a8d8d9a6bcc269168a28ca006f204fc881",
      "parents": [
        "c643ca97a800486359a5fd756936c716dbfffb0d",
        "197a0c82a1fbf337ec0a85d36b6b89c3d6e8a0ac"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 12 16:37:01 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 12 16:37:01 2012 -0700"
      },
      "message": "Merge \"Improve cleanup of file caches.\""
    },
    {
      "commit": "197a0c82a1fbf337ec0a85d36b6b89c3d6e8a0ac",
      "tree": "91ddac285a05fd389615ed6fab622d65b4bf2cee",
      "parents": [
        "9c469ca0ff92ffa533faed9416d725be2204ed55"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 12 14:46:04 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 12 14:46:04 2012 -0700"
      },
      "message": "Improve cleanup of file caches.\n\nThis rewrites installd\u0027s code for deleting cache files to be better:\n\n- Isn\u0027t really stupid about just deleting directories in the order\n  they are found on the filesytem; now collects all cache files and\n  sorts them by mod time to determine which to delete.\n- Also deletes cache files in /data/media and for all users.\n\nThis also tweaks DeviceStorageMonitor to be a little smarter about\ndeciding when to flush cache files, having upper and lower limits\nthat it allows memory to get down to and then flash files to reach\nthe higher free storage limit.  This should reduce the amount that\nwe perform flushing when starting to reach the storage limit.\n\nFinally add a new pm command to force a cache flush.\n\nChange-Id: I02229038e1ad553d1168393e5cb6d5025933271d\n"
    },
    {
      "commit": "f1ca09b9902d007b7ba42f7630f80e18f2ca9006",
      "tree": "c778eaf6a0abfc08e8f6a5472e1ab92705935c42",
      "parents": [
        "149a85ef048c03950f005e30fd7351aaf427cf61",
        "a43ef3d1c553007b3fa158fe1d3ec4ddb99a71af"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Jul 12 13:14:34 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 12 13:14:34 2012 -0700"
      },
      "message": "Merge \"Gestures don\u0027t work when turning on Explore by Touch pragmatically.\""
    },
    {
      "commit": "a43ef3d1c553007b3fa158fe1d3ec4ddb99a71af",
      "tree": "33b6c4fb3ac7b65192964b00900d8bf427a803fb",
      "parents": [
        "d59bf6491c70c843f7b755d8bd919189f697ac78"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Jul 12 13:07:55 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Jul 12 13:07:59 2012 -0700"
      },
      "message": "Gestures don\u0027t work when turning on Explore by Touch pragmatically.\n\n1. There was a misspelled duplicate member in the accessibility service\n   class which was causing inconsistent behavior because one field was\n   updated and another checked.\n\n2. When the set of services that can put the device in explore by touch\n   mode changes we were disconnecting and reconnecting all services\n   and this is not correct. Now only the state of explore by touch is\n   updated appropriately.\n\nbug:6798860\n\nChange-Id: Ib3c119cef8e71c3458d56e4ce6fbde2c2f750dcd\n"
    },
    {
      "commit": "5362f17ff5e8e06601b172bd86c26027ced9780c",
      "tree": "5d42b9b05f148cd90cd0613655a66ede573a3db5",
      "parents": [
        "f16336790bca9d3e946553f2e5a16e14bb9dbc3e",
        "1b003ef05fad1fbdad9674feda9cc1731c7d99dd"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jul 11 18:15:50 2012 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jul 11 18:15:50 2012 -0700"
      },
      "message": "Merge commit \u00271b003ef0\u0027 into mit\n\n* commit \u00271b003ef0\u0027:\n  Create telephony-common and mms-common\n\nChange-Id: Ie8876541dbe7f4c933cf7d69910dd204538bc975\n"
    },
    {
      "commit": "a639b311e93ad14d9ee5c2b2c215ed2d86c32d2a",
      "tree": "8fc3e0698132d5fdba03726a1468fefa18dd2a02",
      "parents": [
        "64ab8fcd6f2011c0d185f2973b9615f155f6d239"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Tue Jul 10 12:37:54 2012 -0700"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Wed Jul 11 16:02:08 2012 -0700"
      },
      "message": "Create telephony-common and mms-common\n\nThese have been created to reduce the size and complexity\nof frameworks/base.\n\nmms-common was created by moving all of\n  frameworks/base/core/java/com/google/android/mms\nto:\n   frameworks/opt/mms\n\ntelephony-common was created by moving some of\n   frameworks/base/telephony\nto:\n   frameworks/opt/telephony\n\nChange-Id: If6cb3c6ff952767fc10210f923dc0e4b343cd4ad\n"
    },
    {
      "commit": "64ab8fcd6f2011c0d185f2973b9615f155f6d239",
      "tree": "15109f8215440887b2383ea81a53de52c9eaec39",
      "parents": [
        "7e7674489f75003b3f33244345c48f755fef88f1",
        "dcddea95301641e3dc9692ed7d70127085458a24"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Wed Jul 11 15:18:14 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 11 15:18:14 2012 -0700"
      },
      "message": "am dcddea95: Merge \"Handle keyguard visibility states separately. DO NOT MERGE\" into jb-dev\n\n* commit \u0027dcddea95301641e3dc9692ed7d70127085458a24\u0027:\n  Handle keyguard visibility states separately. DO NOT MERGE\n"
    },
    {
      "commit": "f333f5f67a6e2e943123797d8752f946c9a4b399",
      "tree": "8f9d669cff5cc860c0a92848033d79fdfffd746c",
      "parents": [
        "04ca8e577859235a68fa9a5268af528d547310be"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Wed Jul 11 14:37:39 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Wed Jul 11 14:38:29 2012 -0700"
      },
      "message": "Handle keyguard visibility states separately. DO NOT MERGE\n\nPrevious to this change the forceHiding variable was a boolean. This\nchange recognizes the different configurations of the keyguard by\ndefining separate states for forceHiding and testing for window\nvisibility differently in each state.\n\nFixes bug 6786114.\n\nChange-Id: I3460c45ea6da772a4ff76bb016de7aa4b051a673\n"
    },
    {
      "commit": "fbf885b652272013f44da71e9f77923333bf62eb",
      "tree": "5ab64f7642664a172c5bfaceea554be329b21a3d",
      "parents": [
        "db30781663bb907ed6a0915979bc86e1e063d909",
        "5702d4dfb5b81491f873a3617f8d8fc8dc5279e6"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 10 14:48:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 10 14:48:06 2012 -0700"
      },
      "message": "Merge \"Notify client side of window movement.\""
    },
    {
      "commit": "4bf18a7c97c0f312ccf12bcd952b420af0c95e5f",
      "tree": "9b150acf56cd6d4ae9cf0bda173aba555b8ad372",
      "parents": [
        "4461f6028df664009c707b3dc1815b789171f4dc"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 10 14:08:16 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 10 14:08:16 2012 -0700"
      },
      "message": "Handle keyguard visibility states separately.\n\nPrevious to this change the forceHiding variable was a boolean. This\nchange recognizes the different configurations of the keyguard by\ndefining separate states for forceHiding and testing for window\nvisibility differently in each state.\n\nFixes bug 6786114.\n\nChange-Id: I078e0df7865ddafe498ee46e02110c3a017386d0\n"
    },
    {
      "commit": "4461f6028df664009c707b3dc1815b789171f4dc",
      "tree": "aca220b06cb32cac030d5e5ffb5cc33c9cf9486e",
      "parents": [
        "42eae21fb9abcff50ad69ab2faf2ffbdbd3b1156",
        "a3195057fc5874d158cc8ea053aa75d5e016bdcf"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Mon Jul 09 16:43:04 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 09 16:43:04 2012 -0700"
      },
      "message": "Merge \"Fixing index-out-of-bounds in AppWidgetService. (Bug 6717459)\""
    },
    {
      "commit": "918b53bc531f5bd1ea102e8b827d693bd4d0555b",
      "tree": "00f631c41da810de508abb8e42896416e47134bd",
      "parents": [
        "9c469ca0ff92ffa533faed9416d725be2204ed55"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 09 14:15:54 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 09 14:15:54 2012 -0700"
      },
      "message": "Isolate layout and animation wallpaper objects.\n\nProvide separate copies of mWallpaperTarget, mWallpaperTokens, and\nmLower/UpperWallpaperTarget in the layout and animation sides of\nWindow Manager.\n\nSimplify constructors of WindowAnimator and WindowStateAnimator.\n\nChange-Id: I7e35794a432c25c4194c046e9e27150d1c905403\n"
    },
    {
      "commit": "2639da500e3d53ea3a17d888b1c0001d043c6b98",
      "tree": "a2c3a32fc1c0c6d0ab88f1b22981b891587e86a6",
      "parents": [
        "12670b5fb401733d14684b8d02259462eb640dc7"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 09 09:39:06 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 09 09:39:06 2012 -0700"
      },
      "message": "Fix hang on rotation.\n\nA recent optimization to only send updates to WindowManagerService\nwhen there is something to report backfired. One bit indicating\nchange had negative polarity so the update should also have been\nsent when this bit was cleared. This change alters the bit to\npositive polarity.\n\nFixes bug 6780496.\n\nChange-Id: I3336812a60534ebffc9e94b2fb1d0df4d6969bca\n"
    },
    {
      "commit": "12670b5fb401733d14684b8d02259462eb640dc7",
      "tree": "a491ea908b187d78c2463a7ef574ff1fa28103ee",
      "parents": [
        "a76fdb7713d900763cff090557a10d3942b9b3ca"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 19:15:35 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 19:15:35 2012 -0700"
      },
      "message": "Make setting wallpaper offset immediate.\n\nWallpaper offset was passing through H Handler before being set.\nIt isn\u0027t part of animation and wasn\u0027t going through animation anyways.\nThis change goes back to original implementation of setting\nwallpaper offset directly from call.\n\nChange-Id: Ied88e2dc042af814b5ba91c7efb839bd82682567\n"
    },
    {
      "commit": "a76fdb7713d900763cff090557a10d3942b9b3ca",
      "tree": "9d2f179ef7912f566065b99e372604fb373a0c62",
      "parents": [
        "462823948eb6af34653305b24aa27ab4186511b2"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 19:03:02 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 19:03:02 2012 -0700"
      },
      "message": "Use new object to sync DimAnimator.\n\nThe controls for the DimAnimator were going through the H Handler\nto sync with the Animator. We are switching to using the\nLayoutToAnimator object for passing data from layout to animator.\n\nChange-Id: Ib6d0afabba781c88bcc1c525e3ae424cf19ac1ad\n"
    },
    {
      "commit": "711f90a7c1e99a435fa8f5335f13772f0b41270b",
      "tree": "6bbbc18ea7c66bea5cc97b3782791d75953f02fb",
      "parents": [
        "078ea0a6444bfb5c7ab1678b1c8898e590828731"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 18:43:52 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 18:43:52 2012 -0700"
      },
      "message": "Swap source and destination transfer objects.\n\nIt will be better to have the object that moves layout parameters to\nanimation on the layout side, and the object that moves animation\nparameters back to layout on the animation side. That way we can\ndo partial filling of these objects without calling across. We\nmay never do partial draining of these objects.\n\nChange-Id: I88826fa97350f96e309beef386885f55a9a73305\n"
    },
    {
      "commit": "078ea0a6444bfb5c7ab1678b1c8898e590828731",
      "tree": "a8cf559b4a0867918e7814753680a5cce24352c4",
      "parents": [
        "6491e845457d38659d86d792e441a596e9b23358"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jun 25 11:04:29 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 18:28:46 2012 -0700"
      },
      "message": "Step 2 in consolidating wallpaper animation.\n\nSeparate updateWindowsAndWallpaperLocked into two methods,\nupdateWindowsLocked and updateWallpaperLocked. Eliminates mForceHiding.\n\nChange-Id: I3958cfae09283aaa7f1781d1b54ef224d8e80f3f\n"
    },
    {
      "commit": "6fbda63e68513ece4409dac845588711ab25c39d",
      "tree": "c04d570c2a4179b0af62078fc670142541fb023b",
      "parents": [
        "c8d5f7d607123966651b2bc521ba9c4470952b34"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 09:26:39 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jul 03 09:31:09 2012 -0700"
      },
      "message": "Merge CL 202423/3 App launching has random pauses.\n\nChange-Id: Iba5616182c02e51f4d9063d0a01b30b9f558549a\n"
    },
    {
      "commit": "c751e37c4fea4aecb7cc8859d8ac9a6e2a8ce93f",
      "tree": "492d6b1454c5f1a904e62851ba6a00a180d85ec3",
      "parents": [
        "80059d6c1b60e9920b7ae133808c989b4d3fa8fe",
        "cc93507124855591be40af55a94deeb33d74e719"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 02 17:22:40 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 02 17:22:40 2012 -0700"
      },
      "message": "am cc935071: Merge \"DO NOT MERGE Set force hiding differently\" into jb-dev\n\n* commit \u0027cc93507124855591be40af55a94deeb33d74e719\u0027:\n  DO NOT MERGE Set force hiding differently\n"
    },
    {
      "commit": "cc93507124855591be40af55a94deeb33d74e719",
      "tree": "a0e122542274f84b5657b83b08bf223ac18604b8",
      "parents": [
        "00b9e899320488ff5623d8c80258ed7dfefc7b53",
        "503d6a44a8193d8111eba393651dcb522cc1cf87"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 02 17:20:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 02 17:20:00 2012 -0700"
      },
      "message": "Merge \"DO NOT MERGE Set force hiding differently\" into jb-dev"
    },
    {
      "commit": "7b04c2cc816ab53bd303ca97dcbbb8c116047872",
      "tree": "a62fa3e8bce2f6a7a473efd539e23e3cf36b1981",
      "parents": [
        "088f26fe6d5f06832427de97575c46fe1ddda314",
        "80059d6c1b60e9920b7ae133808c989b4d3fa8fe"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 02 17:09:18 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 02 17:09:18 2012 -0700"
      },
      "message": "am 80059d6c: am 00b9e899: Merge \"Clear startingDisplayed flag when removing window.\" into jb-dev\n\n* commit \u002780059d6c1b60e9920b7ae133808c989b4d3fa8fe\u0027:\n  Clear startingDisplayed flag when removing window.\n"
    },
    {
      "commit": "80059d6c1b60e9920b7ae133808c989b4d3fa8fe",
      "tree": "9e62c3b7693fd63430f1ef8393b3dff03151c3bc",
      "parents": [
        "e102b8168a9a54cd84c58904111986640286997f",
        "00b9e899320488ff5623d8c80258ed7dfefc7b53"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 02 17:05:16 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 02 17:05:16 2012 -0700"
      },
      "message": "am 00b9e899: Merge \"Clear startingDisplayed flag when removing window.\" into jb-dev\n\n* commit \u002700b9e899320488ff5623d8c80258ed7dfefc7b53\u0027:\n  Clear startingDisplayed flag when removing window.\n"
    },
    {
      "commit": "38b2478f63004c493d7f7f1ac0bf07f51d6f0757",
      "tree": "2cc3737dba7d1379ef54c8e4247c365697ec9484",
      "parents": [
        "73d90e797bf52b52372314477553b140818717c9"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 02 16:21:28 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 02 16:21:28 2012 -0700"
      },
      "message": "Clear startingDisplayed flag when removing window.\n\nThe flag indicating that the Starting window is displayed was not\nbeing cleared when the Starting window was removed. That caused the\ngoodToGo indication to falsely indicate that all windows were drawn\nwhen in fact the destination activity had not yet been drawn. This\ncaused the animation to begin when it was still black behind the old\nanimation.\n\nThis fixes bug 6764727.\n\nChange-Id: Iacef73b0335b9bde2cdc8d0b072034222cd728e8\n"
    },
    {
      "commit": "503d6a44a8193d8111eba393651dcb522cc1cf87",
      "tree": "6318522389e2f7a0ead1d0866ff3951c038b78ad",
      "parents": [
        "73d90e797bf52b52372314477553b140818717c9"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jun 25 11:13:24 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jul 02 13:16:15 2012 -0700"
      },
      "message": "DO NOT MERGE Set force hiding differently\n\nOnly force hide windows when the keyguard is animating in.\n\nFixes bug 6721572.\n\nChange-Id: Iad7b8b811bcf0840726cbf6c6f279dabd08a3aba\n\nConflicts:\n\n\tservices/java/com/android/server/wm/WindowAnimator.java\n"
    },
    {
      "commit": "095c58b73ac112cc7e00771430765434893d8bc5",
      "tree": "43c6ccb97dffe45ea697a1d9ad2eb70403b478db",
      "parents": [
        "f632562f7d2e94978d185d192a62eb73925a59a2"
      ],
      "author": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Tue May 29 12:40:46 2012 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Jul 02 10:57:11 2012 -0700"
      },
      "message": "Enhance StateMachine Quitting and logging support. DO NOT MERGE\n\nMake StateMachine#quit non-conditional and remove the need to\nprocess the SM_QUIT_CMD it is now private.\n\nRename halting to onHalting.\n\nAdd onQuitting\n\nChange the message specific logging to be more generic and change\nthe xxxProcessedMessagesYyy methods to xxxLogRecXyy names. Also add\naddLogRec(String) and addLogRec(String, State) as the generic logging\nmethods.\n\nbug: 5678189\nChange-Id: I22f66d11828bfd70498db625fe1be728b90478b7\n\nConflicts:\n\n\tservices/java/com/android/server/NsdService.java\n"
    },
    {
      "commit": "5702d4dfb5b81491f873a3617f8d8fc8dc5279e6",
      "tree": "e9e9a95db55f1ee7ef8c3e9d5e807b083c53c59a",
      "parents": [
        "5af65850eaa92c53be37a6973603b1f1e4f02a43"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sat Jun 30 14:10:16 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sat Jun 30 14:10:16 2012 -0700"
      },
      "message": "Notify client side of window movement.\n\nAdd a one way method to notify Views that the window has moved\non the screen. Fixes issues arising from the IME popping up and\ntranslating the window that uses it. Accessibility was left unaware\nof these movements and was drawing the box around the wrong widgets.\nSimilarly PopupWindow used getLocationOnScreen to determine how\nmuch screen real estate was above and below the anchor point to\ndetermine where to put an anchored window.\n\nFixes bug 6623031.\n\nChange-Id: I4731a94d5424c1ec77bf1729fba8fc9ea34cae46\n"
    },
    {
      "commit": "c32e190ea6da8c9acd8dc1a29a6e8794ecf7d857",
      "tree": "d337fdee137eb4d3f99412547949599045dff095",
      "parents": [
        "4efade8a85d1352d91dcb4f4be2c337223688840",
        "a9c3846194b69f1bfa73066be670c9d77f6dd0d7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 29 16:23:49 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 29 16:23:49 2012 -0700"
      },
      "message": "resolved conflicts for merge of a9c38461 to master\n\nChange-Id: Ie7044c4f9f15384c3edd328fa8e2932c731d9d5c\n"
    },
    {
      "commit": "a9c3846194b69f1bfa73066be670c9d77f6dd0d7",
      "tree": "a25e667b48ddb6b91f07c901ae403957cbb95025",
      "parents": [
        "b69c77cd194ccbe24a8b1e5d8457b44d150f9a96",
        "bfb752f8f0e4d73dc251c19d2ef79649fbbe4fd1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 29 15:43:37 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 29 15:43:37 2012 -0700"
      },
      "message": "am bfb752f8: Merge \"Fix issue #6761130: Clearing app data in settings does not clear app\\\u0027s USB storage\" into jb-dev\n\n* commit \u0027bfb752f8f0e4d73dc251c19d2ef79649fbbe4fd1\u0027:\n  Fix issue #6761130: Clearing app data in settings does not clear app\u0027s USB storage\n"
    },
    {
      "commit": "183ce028f10442dd6ada59de8fa531d690134663",
      "tree": "bb826af501467e58f564c7bf0675fa4868aba77d",
      "parents": [
        "074b54fbc0b6254c0ba308e0cf2e86c1cc929348"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 29 15:00:21 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 29 15:00:21 2012 -0700"
      },
      "message": "Fix issue #6761130: Clearing app data in settings does not clear app\u0027s USB storage\n\nThe package manager calls to clear data / clear cache were not also\nhaving default container service clear the data on external storage.  Now\nthey do.\n\nChange-Id: Ib5e5eb6adf2cac5a4cc094cc1a02ac8cfb6a2edf\n"
    },
    {
      "commit": "30729fb9d7dda76e8c96fcaa6af0d5cb838538a2",
      "tree": "c82a7cebf2f63a23898571158cc82935a099c2f1",
      "parents": [
        "667ca82189dcdb6bf46ce03c78d38671da99f72e",
        "c7b2778c2dc7934665c56067b65d83d76fbe31e5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 28 15:40:05 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 28 15:40:05 2012 -0700"
      },
      "message": "am c7b2778c: am cfb0f409: Merge \"Fix issue #6745498: Cannot view consecutive event details from agenda view\" into jb-dev\n\n* commit \u0027c7b2778c2dc7934665c56067b65d83d76fbe31e5\u0027:\n  Fix issue #6745498: Cannot view consecutive event details from agenda view\n"
    },
    {
      "commit": "c7b2778c2dc7934665c56067b65d83d76fbe31e5",
      "tree": "63974c8e37700894b8df98c36c60be91f8ac9083",
      "parents": [
        "9454e29896e22268416082c99931d13a37b7c71e",
        "cfb0f40903cf2180ce0947cdd965e2f5b90b48bb"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 28 15:36:40 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 28 15:36:40 2012 -0700"
      },
      "message": "am cfb0f409: Merge \"Fix issue #6745498: Cannot view consecutive event details from agenda view\" into jb-dev\n\n* commit \u0027cfb0f40903cf2180ce0947cdd965e2f5b90b48bb\u0027:\n  Fix issue #6745498: Cannot view consecutive event details from agenda view\n"
    },
    {
      "commit": "cfb0f40903cf2180ce0947cdd965e2f5b90b48bb",
      "tree": "aa354cc9c8e9d2aaf99aaadcac40cbaeb93ea17b",
      "parents": [
        "98fd6405aec16c6062f562bf6e7c5f2d50da5d60",
        "45a25bcfc9af74bc4275cc710347304e581f3c51"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 28 15:33:53 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 28 15:33:53 2012 -0700"
      },
      "message": "Merge \"Fix issue #6745498: Cannot view consecutive event details from agenda view\" into jb-dev"
    },
    {
      "commit": "45a25bcfc9af74bc4275cc710347304e581f3c51",
      "tree": "14a27ab34231d641eba57b9b6b4f4f1898770535",
      "parents": [
        "9e608c12186d308fb1711e8824901fdf931a3a96"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 28 13:49:17 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 28 13:49:17 2012 -0700"
      },
      "message": "Fix issue #6745498: Cannot view consecutive event details from agenda view\n\n- There was a long-standing bug when using FLAG_ACTIVITY_REORDER_TO_FRONT\nwhere we could find and use an activity that is currently finishing.\n- There was a recently introduced bug where activities being destroyed\nwould not be removed from the history stack at the time they are done\nbeing destroyed, allowing the above bug to be exposed.\n- Removing a task would not kill any processes associated with the app\nthat had a different name from the app itself.\n\nChange-Id: I4401ab6d348a69e1ac4fb8f719d2c69d5a78e567\n"
    },
    {
      "commit": "2c59c5b6b2ee98322a310fd380eba61be6cb4493",
      "tree": "1131b5c1cf2e47845f3112419adedf3aae1aa9fc",
      "parents": [
        "4aa86813d1bfd56cbd0901a746799bf40e3ab96e",
        "2dca20e194778e6ce54709a484442df77f8d11be"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Jun 28 10:03:06 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 28 10:03:06 2012 -0700"
      },
      "message": "am 2dca20e1: am 4fa46485: Merge \"Update dumpsys power output.\" into jb-dev\n\n* commit \u00272dca20e194778e6ce54709a484442df77f8d11be\u0027:\n  Update dumpsys power output.\n"
    },
    {
      "commit": "2dca20e194778e6ce54709a484442df77f8d11be",
      "tree": "5be707aea87f37681e2010e6edcb47b0270bf55b",
      "parents": [
        "a9ee110cd955a57ecec725f1357711876a418d2c",
        "4fa4648515c3c1f77a31da186a9fe31d6c509412"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Jun 28 10:00:04 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 28 10:00:04 2012 -0700"
      },
      "message": "am 4fa46485: Merge \"Update dumpsys power output.\" into jb-dev\n\n* commit \u00274fa4648515c3c1f77a31da186a9fe31d6c509412\u0027:\n  Update dumpsys power output.\n"
    },
    {
      "commit": "4fa4648515c3c1f77a31da186a9fe31d6c509412",
      "tree": "8771d4ad52b2c1929ef23e28dbb0d6f6dae3e0fb",
      "parents": [
        "8930458639527448429362255af96e94f5aba5ed",
        "672083b88aebc3f6fae978f2dafd15fdf4b9cd54"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Thu Jun 28 09:56:47 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 28 09:56:47 2012 -0700"
      },
      "message": "Merge \"Update dumpsys power output.\" into jb-dev"
    },
    {
      "commit": "0e5416f661a01221a3b22a3e4764e2505af64488",
      "tree": "034d7e9bb90b79414eb55ddd805e12dd05445ef7",
      "parents": [
        "19a53dc66ee1669091f85f82d2b5bc709da92056",
        "a4b7f2f75e7803193429ec1179fb5e2eb1c6fbda"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 26 18:16:01 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 26 18:16:01 2012 -0700"
      },
      "message": "Merge \"Use two fingers to work some magic...\""
    },
    {
      "commit": "672083b88aebc3f6fae978f2dafd15fdf4b9cd54",
      "tree": "380a33ce41e78443bd5fbe8c3c3713fe121da4ac",
      "parents": [
        "95cf8c1121a95750358ee99169c96d8d4dfb4950"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jun 26 11:49:08 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Jun 26 17:42:17 2012 -0700"
      },
      "message": "Update dumpsys power output.\n\nA little more detail on the animation state. For aid in debugging\nb/6720247.\n\nChange-Id: Ibfabf7fc8822ccb74bb83e2fd8e53004691dcd76\n"
    },
    {
      "commit": "5359bc38a2f1a39a059c16cb4e435be0d1100c2f",
      "tree": "80889fcf7279237c0c5deba876fd85ce290c6de0",
      "parents": [
        "4fb85d3515e18e1e8d917d5c48f62cb2a0bbd37e",
        "2e8295ce1861d8284f16e0f0f80475db0ec2983f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 26 16:40:48 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 26 16:40:48 2012 -0700"
      },
      "message": "am 2e8295ce: am 3bb98aec: Merge \"Fix issue #6730064: When turning off Nakasi, it very often...\" into jb-dev\n\n* commit \u00272e8295ce1861d8284f16e0f0f80475db0ec2983f\u0027:\n  Fix issue #6730064: When turning off Nakasi, it very often...\n"
    },
    {
      "commit": "2e8295ce1861d8284f16e0f0f80475db0ec2983f",
      "tree": "79f3ed84dc79daf2bddbf30543ac7c11ea2c7fac",
      "parents": [
        "70585ac646998f4c6773b8c17c48210419bf676f",
        "3bb98aec9344af1299b90d1567b4443e4d50cc91"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 26 16:38:00 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 26 16:38:00 2012 -0700"
      },
      "message": "am 3bb98aec: Merge \"Fix issue #6730064: When turning off Nakasi, it very often...\" into jb-dev\n\n* commit \u00273bb98aec9344af1299b90d1567b4443e4d50cc91\u0027:\n  Fix issue #6730064: When turning off Nakasi, it very often...\n"
    },
    {
      "commit": "3bb98aec9344af1299b90d1567b4443e4d50cc91",
      "tree": "0d8e2f3f0ab468733197b71e14b7c00022910acb",
      "parents": [
        "eb2ab860259af98f0f640dc10f1c5fce7a17cbc1",
        "ea401541c51422ba76f8319927cca0f303c57a4e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 26 16:36:36 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 26 16:36:36 2012 -0700"
      },
      "message": "Merge \"Fix issue #6730064: When turning off Nakasi, it very often...\" into jb-dev"
    },
    {
      "commit": "ea401541c51422ba76f8319927cca0f303c57a4e",
      "tree": "4d29da07d4882eb124b9f74a2d3e5f8a6f29d5f2",
      "parents": [
        "9e608c12186d308fb1711e8824901fdf931a3a96"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 26 14:34:54 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 26 14:44:08 2012 -0700"
      },
      "message": "Fix issue #6730064: When turning off Nakasi, it very often...\n\n...turns itself immediately back on.\n\nThe ON_AFTER_RELEASE flag is documented to not turn the screen on if\nit is currently off.\n\nUnfortunately, it didn\u0027t seem to actually do this -- it would just\ncause a userActivity() call, which turns on the screen if it is\ncurrently off.\n\nFix this by adding yet another boolean to that function to tell it\nto not poke user activity if the screen is off.  (Yes the number of\nbooleans on it is now insane, and should be cleaned up after we\nget through JB.)\n\nBug: 6730064\nChange-Id: I850dfbc777c7668d08b7d63f42a293e22b878256\n"
    },
    {
      "commit": "25a525411b0fa6ec386b4fea9d827ff37f8146a0",
      "tree": "5b98b1d14385521de2d5e5f3f009143ebbc2a6c0",
      "parents": [
        "48d4ab73d5b60b677cbf6d4887a67e52e62fa20b",
        "7d33d0c36c7e8c9de4139af383f7491823055bc7"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jun 26 10:39:24 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 26 10:39:24 2012 -0700"
      },
      "message": "am 7d33d0c3: am c17f92ce: Merge \"Use removePackageLI instead of removing mPackages\" into jb-dev\n\n* commit \u00277d33d0c36c7e8c9de4139af383f7491823055bc7\u0027:\n  Use removePackageLI instead of removing mPackages\n"
    },
    {
      "commit": "7d33d0c36c7e8c9de4139af383f7491823055bc7",
      "tree": "1ef20e96465e556be77d06b0fbc721da5a3797a4",
      "parents": [
        "59bd7c2f4e5f1e2aedf9a8ca578561c13e4b6be3",
        "c17f92ce047e8d62fac829d1df5dae654f7e4de8"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jun 26 10:36:54 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 26 10:36:54 2012 -0700"
      },
      "message": "am c17f92ce: Merge \"Use removePackageLI instead of removing mPackages\" into jb-dev\n\n* commit \u0027c17f92ce047e8d62fac829d1df5dae654f7e4de8\u0027:\n  Use removePackageLI instead of removing mPackages\n"
    },
    {
      "commit": "c17f92ce047e8d62fac829d1df5dae654f7e4de8",
      "tree": "ca0d5409e33e79474afc48c6208b75bf184f5a97",
      "parents": [
        "64b7a3e99526550aacd95f1dbd35487df7375ac6",
        "eca64b391408dfdb9ff3ae03fc39cfdb6918f3ad"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jun 26 10:34:44 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 26 10:34:44 2012 -0700"
      },
      "message": "Merge \"Use removePackageLI instead of removing mPackages\" into jb-dev"
    },
    {
      "commit": "a4b7f2f75e7803193429ec1179fb5e2eb1c6fbda",
      "tree": "287a64b2e558134e4f80ce5ae2356405204a369b",
      "parents": [
        "6a15634f601617b815935bc7fdbe0c356d020f44"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon May 21 11:28:41 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 19:19:15 2012 -0700"
      },
      "message": "Use two fingers to work some magic...\n\nChange-Id: Ibcb3dbd3d158c22da8277e544d81fb47eadccd49\n"
    },
    {
      "commit": "6a15634f601617b815935bc7fdbe0c356d020f44",
      "tree": "b9d1aa63f76ae9b25d9e45af503cb9a69add75cf",
      "parents": [
        "dfcd6653c5b142e7e2f4275e35f06eaa1a363e60",
        "3346bc69493e75565208f9b485bd6038e6abefe9"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jun 25 18:48:27 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 18:48:27 2012 -0700"
      },
      "message": "am 3346bc69: am ab294eeb: Merge \"DevicePolicyManagerService: dump less\" into jb-dev\n\n* commit \u00273346bc69493e75565208f9b485bd6038e6abefe9\u0027:\n  DevicePolicyManagerService: dump less\n"
    },
    {
      "commit": "3346bc69493e75565208f9b485bd6038e6abefe9",
      "tree": "6504c4dc8fd645f7c876357f1fa078cf6905bd62",
      "parents": [
        "e53fd84a28584692d9c99712a3d36100643ba000",
        "ab294eeb20d884855b038600f94a6e17b88b5772"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jun 25 18:46:12 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 18:46:12 2012 -0700"
      },
      "message": "am ab294eeb: Merge \"DevicePolicyManagerService: dump less\" into jb-dev\n\n* commit \u0027ab294eeb20d884855b038600f94a6e17b88b5772\u0027:\n  DevicePolicyManagerService: dump less\n"
    },
    {
      "commit": "ab294eeb20d884855b038600f94a6e17b88b5772",
      "tree": "1600437308e4895c0aac80195f7d8386d5a8ba82",
      "parents": [
        "9e608c12186d308fb1711e8824901fdf931a3a96",
        "be00b410146b35b50fc213474a8d04d463021554"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jun 25 18:43:56 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 25 18:43:56 2012 -0700"
      },
      "message": "Merge \"DevicePolicyManagerService: dump less\" into jb-dev"
    },
    {
      "commit": "dfcd6653c5b142e7e2f4275e35f06eaa1a363e60",
      "tree": "4ea17791d0284f85273dfe4295107875a6b6163b",
      "parents": [
        "e6c2d62efb65fa7b4681d29ad0710df56bf9002b",
        "e53fd84a28584692d9c99712a3d36100643ba000"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 18:17:19 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 18:17:19 2012 -0700"
      },
      "message": "am e53fd84a: am 9e608c12: Merge \"Fix issue #6381224: Initial emulator boot fails and shows a blank black screen.\" into jb-dev\n\n* commit \u0027e53fd84a28584692d9c99712a3d36100643ba000\u0027:\n  Fix issue #6381224: Initial emulator boot fails and shows a blank black screen.\n"
    },
    {
      "commit": "e6c2d62efb65fa7b4681d29ad0710df56bf9002b",
      "tree": "45734f823b115abe994c84946c691e6c942e14a7",
      "parents": [
        "2ccb1126338fc61429f1578fc6517c4a6db116d8",
        "9906e784faca2cc8388a04fdc544722ea93d51be"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 18:17:15 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 18:17:15 2012 -0700"
      },
      "message": "am 9906e784: am 17990395: Merge \"Fix issue #6717667: expanded notification actions don\\\u0027t work on the lock screen\" into jb-dev\n\n* commit \u00279906e784faca2cc8388a04fdc544722ea93d51be\u0027:\n  Fix issue #6717667: expanded notification actions don\u0027t work on the lock screen\n"
    },
    {
      "commit": "be00b410146b35b50fc213474a8d04d463021554",
      "tree": "2f79d9a66aa26d2dc2ea8534c0447f60b9d843da",
      "parents": [
        "e40c4636d970c50f7719e7d5067963be93c25750"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jun 25 17:39:12 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jun 25 17:39:12 2012 -0700"
      },
      "message": "DevicePolicyManagerService: dump less\n\nReduce the amount of unnecessary information emitted from\nthe DevicePolicyManagerService.\n\nBug: 6732364\nChange-Id: I639f6beab8471bdbe41ce6cd3a5a378acaf678b2\n"
    },
    {
      "commit": "e53fd84a28584692d9c99712a3d36100643ba000",
      "tree": "51dbea070a3328acb3003eba647fb10eedebffd9",
      "parents": [
        "9906e784faca2cc8388a04fdc544722ea93d51be",
        "9e608c12186d308fb1711e8824901fdf931a3a96"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 17:37:17 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 17:37:17 2012 -0700"
      },
      "message": "am 9e608c12: Merge \"Fix issue #6381224: Initial emulator boot fails and shows a blank black screen.\" into jb-dev\n\n* commit \u00279e608c12186d308fb1711e8824901fdf931a3a96\u0027:\n  Fix issue #6381224: Initial emulator boot fails and shows a blank black screen.\n"
    },
    {
      "commit": "9906e784faca2cc8388a04fdc544722ea93d51be",
      "tree": "ed3523a5e647141e9c9f63fe1b7aa24882437efb",
      "parents": [
        "b4215267f342759c8bdad02ed124dae4bb6d6833",
        "17990395bc62f8ce1bae4f1880899f231a8e613b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 17:37:15 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 17:37:15 2012 -0700"
      },
      "message": "am 17990395: Merge \"Fix issue #6717667: expanded notification actions don\\\u0027t work on the lock screen\" into jb-dev\n\n* commit \u002717990395bc62f8ce1bae4f1880899f231a8e613b\u0027:\n  Fix issue #6717667: expanded notification actions don\u0027t work on the lock screen\n"
    },
    {
      "commit": "b4215267f342759c8bdad02ed124dae4bb6d6833",
      "tree": "a46f3dff34c7a776997ef1060280eca7e46f575a",
      "parents": [
        "4844fccc793078f44c8bffd1707ac589fad14f6e",
        "fca66cd828e214fe7494e46c7daa2879dfc3210d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 17:37:13 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 17:37:13 2012 -0700"
      },
      "message": "am fca66cd8: Merge \"DO NOT MERGE Fix issue #6697105: App launching sometimes has random pauses\" into jb-dev\n\n* commit \u0027fca66cd828e214fe7494e46c7daa2879dfc3210d\u0027:\n  DO NOT MERGE Fix issue #6697105: App launching sometimes has random pauses\n"
    },
    {
      "commit": "9e608c12186d308fb1711e8824901fdf931a3a96",
      "tree": "16fd48827a6d9b2885db3cb2e11ab7af12537b9e",
      "parents": [
        "17990395bc62f8ce1bae4f1880899f231a8e613b",
        "42e620caf0407f1b5e02935ac4323742c65459fd"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 17:35:49 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 25 17:35:49 2012 -0700"
      },
      "message": "Merge \"Fix issue #6381224: Initial emulator boot fails and shows a blank black screen.\" into jb-dev"
    },
    {
      "commit": "17990395bc62f8ce1bae4f1880899f231a8e613b",
      "tree": "3e27e810159e377634395ac1daf9939169a26313",
      "parents": [
        "fca66cd828e214fe7494e46c7daa2879dfc3210d",
        "1927ae8a56a010919a7535231fa0f7db70f7e152"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 17:35:36 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 25 17:35:36 2012 -0700"
      },
      "message": "Merge \"Fix issue #6717667: expanded notification actions don\u0027t work on the lock screen\" into jb-dev"
    },
    {
      "commit": "fca66cd828e214fe7494e46c7daa2879dfc3210d",
      "tree": "e835cf394145b39486bfdaf90cb6ddd4422feb2e",
      "parents": [
        "5d88c14cd39d1100e28f7e340874655ab7a42904",
        "357d99c61d1c97199ca421408b3e26566e879f2a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 17:35:21 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 25 17:35:21 2012 -0700"
      },
      "message": "Merge \"DO NOT MERGE Fix issue #6697105: App launching sometimes has random pauses\" into jb-dev"
    },
    {
      "commit": "eca64b391408dfdb9ff3ae03fc39cfdb6918f3ad",
      "tree": "0dbed5da46e6c62559e100c78132693957cbcd3b",
      "parents": [
        "e9b4b3e94d396d176338c62f8c9f4c183b340f9b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jun 25 16:37:32 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Jun 25 16:39:45 2012 -0700"
      },
      "message": "Use removePackageLI instead of removing mPackages\n\nWhen adding an system app via OTA, trying to remove it from mPackages\ndirectly doesn\u0027t work. The ContentProviders and other things aren\u0027t\nremoved and point to the hidden system app\u0027s applicationInfo instead of\nthe updated app.\n\nBug: 6685263\nChange-Id: I487cf518e0e3c60fae736e9b974617023a7dee8d\n"
    },
    {
      "commit": "ad51a1e9230cdf95082b5e05690f0b72eaed3f35",
      "tree": "5bff51a1147b435c0a908d2d56a4f42e5378fae6",
      "parents": [
        "c585841115a859eadb2f6479cb4d09a1d3ea9cba",
        "0086ec0d3009bc8c80e1330cd73ba534aa45f489"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jun 25 15:31:23 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 15:31:23 2012 -0700"
      },
      "message": "am 0086ec0d: am d48cf0c0: Merge \"Don\\\u0027t wait until boot timeout if there is no wallpaper.\" into jb-dev\n\n* commit \u00270086ec0d3009bc8c80e1330cd73ba534aa45f489\u0027:\n  Don\u0027t wait until boot timeout if there is no wallpaper.\n"
    },
    {
      "commit": "c585841115a859eadb2f6479cb4d09a1d3ea9cba",
      "tree": "4412885be1144456747ab42d4353cf552083d2e4",
      "parents": [
        "3b00fc2ecabcd0d33545a404c13669ceb6a3dfd8",
        "db65cc520ebb3f9cfafa4a9d5be9f07621814213"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jun 25 15:31:19 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 15:31:19 2012 -0700"
      },
      "message": "am db65cc52: am a3a59a2f: Merge \"Don\\\u0027t enable input dispatch until display enabled.\" into jb-dev\n\n* commit \u0027db65cc520ebb3f9cfafa4a9d5be9f07621814213\u0027:\n  Don\u0027t enable input dispatch until display enabled.\n"
    },
    {
      "commit": "0086ec0d3009bc8c80e1330cd73ba534aa45f489",
      "tree": "81c9c2ce9c099f990348b8f929ebca06dd8431b7",
      "parents": [
        "db65cc520ebb3f9cfafa4a9d5be9f07621814213",
        "d48cf0c0ce5f9458802d2be8671c85fa027a74a0"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jun 25 15:28:46 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 15:28:46 2012 -0700"
      },
      "message": "am d48cf0c0: Merge \"Don\\\u0027t wait until boot timeout if there is no wallpaper.\" into jb-dev\n\n* commit \u0027d48cf0c0ce5f9458802d2be8671c85fa027a74a0\u0027:\n  Don\u0027t wait until boot timeout if there is no wallpaper.\n"
    },
    {
      "commit": "db65cc520ebb3f9cfafa4a9d5be9f07621814213",
      "tree": "c8392436f0f1904bd8cf22f309baa2736639286a",
      "parents": [
        "4415838b4b7014cee4a4bd1bfaeafa39d177a503",
        "a3a59a2fa7e3b3b044b41d2741118be37c57509a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jun 25 15:28:44 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 25 15:28:44 2012 -0700"
      },
      "message": "am a3a59a2f: Merge \"Don\\\u0027t enable input dispatch until display enabled.\" into jb-dev\n\n* commit \u0027a3a59a2fa7e3b3b044b41d2741118be37c57509a\u0027:\n  Don\u0027t enable input dispatch until display enabled.\n"
    },
    {
      "commit": "1927ae8a56a010919a7535231fa0f7db70f7e152",
      "tree": "ef0c02adbd41100faf4a18d553ad7206584991d2",
      "parents": [
        "e9b4b3e94d396d176338c62f8c9f4c183b340f9b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 22 15:21:36 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 14:28:48 2012 -0700"
      },
      "message": "Fix issue #6717667: expanded notification actions don\u0027t work on the lock screen\n\nFLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS was a mistake.\n\nInstead, and the infrastructure for the status bar to take care\nof closing and hiding things itself when you press these buttons,\njust like it does for the main Intent of the notification.\n\nBug: 6717667\nChange-Id: I1b22186e0cedc05f46a1a3ec78053a72afaf61b1\n"
    },
    {
      "commit": "42e620caf0407f1b5e02935ac4323742c65459fd",
      "tree": "950736ba92c530521a1a1f417db42be759a6a0b3",
      "parents": [
        "e9b4b3e94d396d176338c62f8c9f4c183b340f9b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Jun 24 13:20:51 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 25 14:27:41 2012 -0700"
      },
      "message": "Fix issue #6381224: Initial emulator boot fails and shows a blank black screen.\n\nMake sure that all cases where we remove an activity from the history\nstack, we call resumeTopActivityLocked() to cause the home activity\nto be launched if the stack is now empty.\n\nAlso fixed a problem where some timeouts would not be removed when destroying\nan activity, and a race condition in boot that would cause the\nPhoneWindowManager to initially start out with the home key not working.\n\nBug: 6381224\nChange-Id: If046bb01aed624b0d9ee3bbaaba68ed6b98fd1d0\n"
    },
    {
      "commit": "f12100e0255c86d0d05dba2e7ba87a745870423d",
      "tree": "e180360513b6b4a4dfbfee58c5b975016ac36dc9",
      "parents": [
        "10943335a4098b8757f6000d0cc8e3e6cd121acd"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jun 25 11:13:24 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Jun 25 11:13:24 2012 -0700"
      },
      "message": "Eliminate jank by setting force hiding differently\n\nOnly force hide windows when the keyguard is animating in.\n\nFixes bug 6721572.\n\nChange-Id: Iad7b8b811bcf0840726cbf6c6f279dabd08a3aba\n"
    }
  ],
  "next": "a3195057fc5874d158cc8ea053aa75d5e016bdcf"
}
