)]}'
{
  "log": [
    {
      "commit": "60ec50a850ac7265b662df3c872583b6ef581ef8",
      "tree": "4087f394f53373bfec6878041de9b3b3f30f481f",
      "parents": [
        "dfc8e799ed7500c1a07d4ba1f72e77d3de0f803a"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Oct 04 17:00:10 2012 -0700"
      },
      "committer": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Oct 04 17:23:12 2012 -0700"
      },
      "message": "Last position improvements for GeofenceManager\n\nUse LocationManager.getLastPosition() in GeofenceManager instead of\nkeeping track of it manually. Keeping track of it in GeofenceManager\ndoesn\u0027t handle the case where we install a fence, and cross it just\nafter that based on the last position before we installed the fence.\n\nAlso shuffle around some code in LocationManagerService to remember the\nlast position even if there are no UpdateRecords. This is useful in the\nGeofenceManager for example.\n\nBug: 7047435\nChange-Id: Ia8acc32e357ecc2e1bd689432a5beb1ea7dcd1c7\n"
    },
    {
      "commit": "dfc8e799ed7500c1a07d4ba1f72e77d3de0f803a",
      "tree": "f7ac471321469eb03123e8f150885730373ae146",
      "parents": [
        "2646b3a46af3a24d54acffb1f956deeb6831d3ab",
        "941221c1577a34c922c03b30be7ef0a4afda4278"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Thu Oct 04 17:11:41 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 17:11:42 2012 -0700"
      },
      "message": "Merge \"Handle other providers in isAllowedProviderSafe()\" into jb-mr1-dev"
    },
    {
      "commit": "7fd1386b8a2b30669e0ffe0bacf17dd1feb5dba5",
      "tree": "aea13f15ab63075f658664136ad2007e0971374a",
      "parents": [
        "a9afaccf303da2b57a47ad16cca559e87e649d15",
        "3cab6b0f1deff1ee4b4b2e048935f2201d2cbc0d"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Oct 04 16:50:39 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 16:50:40 2012 -0700"
      },
      "message": "Merge \"Properly cancel Tether notification.\" into jb-mr1-dev"
    },
    {
      "commit": "a9afaccf303da2b57a47ad16cca559e87e649d15",
      "tree": "3cc75043ed503f694069104030f311fc16e7fba7",
      "parents": [
        "dce8b948320e933e46e4a38c496f56555472495f",
        "83762d22c9bde92d412cf5a263a228d705606721"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Thu Oct 04 16:49:15 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 16:49:15 2012 -0700"
      },
      "message": "Merge \"multiuser support for LocationBlacklist\" into jb-mr1-dev"
    },
    {
      "commit": "3cab6b0f1deff1ee4b4b2e048935f2201d2cbc0d",
      "tree": "87b916f3557ef7a26af808fe1256bce495d92ca9",
      "parents": [
        "dce8b948320e933e46e4a38c496f56555472495f"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Oct 04 16:44:26 2012 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Oct 04 16:44:26 2012 -0700"
      },
      "message": "Properly cancel Tether notification.\n\nWhen we add a second type of tethering we unify the notifications\ninto a single generic type.  This is done by canceling the first\nand replacing it, but this flow was improperly canceling, so\nyou could end up with orphaned tethering icons.\n\nbug:7283605\nChange-Id: I1d136f51592b4326d48578cf67b69122e45d4984\n"
    },
    {
      "commit": "941221c1577a34c922c03b30be7ef0a4afda4278",
      "tree": "f4a665ac6bc3ea88d2394f36b124f6813a00a9c8",
      "parents": [
        "57e6203457cedbc6f4bf8a45635862a3eb717e9f"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Oct 04 14:21:52 2012 -0700"
      },
      "committer": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Thu Oct 04 15:18:05 2012 -0700"
      },
      "message": "Handle other providers in isAllowedProviderSafe()\n\nAdd a case for isAllowedProviderSafe() to handle providers that are not\nGPS/Passive/Network/Fused. For example, this is useful for mock\nproviders.\n\nBug: 7047435\nChange-Id: If4799aa90a5338889c47582d45cbfc25772c9c53\n"
    },
    {
      "commit": "8a2291952528303d284878468fe260ec41998db3",
      "tree": "e6463af3aeebd650b327772aaf10e160e3a5e3a5",
      "parents": [
        "c30b6da804483e65eddda059e971727e1c80b7bf",
        "5fe7e2a3043d6a8ca933c77ccf95c791b57b221a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Oct 04 12:41:41 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 12:41:41 2012 -0700"
      },
      "message": "Merge \"Fix issue #6968859: home not exiting an ANR\u0027d dream\" into jb-mr1-dev"
    },
    {
      "commit": "d367b70c4ad5d8e6cdbcc0d6d429428413cd39b3",
      "tree": "30b14a48ea5c8c9039bb0ad245fd31f03be9d890",
      "parents": [
        "6ebbe1b97005a40850a1633aa4fc12af0392e986",
        "f068fed6c4c3fc2003aec19b6e7e892358179b02"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Thu Oct 04 12:31:01 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 12:31:02 2012 -0700"
      },
      "message": "Merge \"Accessibility HOVER_ENTER / EXIT without enclosing EXPLORATION_GESTURE_START / END\" into jb-mr1-dev"
    },
    {
      "commit": "27b3819df0ff3bbfb680b5bac54ef7e9b4d3aac1",
      "tree": "aef62e66d72917c62a8eb746cf4997391270abba",
      "parents": [
        "e4ed092076430e4cc8aa2e179883f721da5b2a61",
        "4e6922d89e72e79a8ab31ae2cb8a19d85bee91f8"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Oct 04 12:26:17 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 12:26:18 2012 -0700"
      },
      "message": "Merge \"Reset status bar in keyguard, fix MU status bar bug.\" into jb-mr1-dev"
    },
    {
      "commit": "5fe7e2a3043d6a8ca933c77ccf95c791b57b221a",
      "tree": "f45af64c05358cec85257742b108b775c5cee8b3",
      "parents": [
        "f7ee2a03c1f930db4b20c04225f496ada97e646b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Oct 04 11:58:16 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Oct 04 12:04:58 2012 -0700"
      },
      "message": "Fix issue #6968859: home not exiting an ANR\u0027d dream\n\nAdd a new call to the activity manager for the input dispatcher\nto report about any pid having an ANR.  This has a new feature\nwhere it can also tell the activity manager that it is above the\nsystem alert layer, so the activity manager can pop its ANR dialog\non top of everything if it needs to.  (Normally we don\u0027t want\nthese dialogs appearing on top of the lock screen.)\n\nAlso fixed some debugging stuff here and there that was useful\nas I was working on this -- windows now very clearly include\ntheir uid, various system dialogs now have titles so you know\nwhat they are in the window manager, etc.\n\nChange-Id: Ib8f5d29a5572542cc506e6d338599ab64088ce4e\n"
    },
    {
      "commit": "dcf5a663cdec5ed1aa6b5d583cdac177a0974fcb",
      "tree": "cc27d1f47f5a42e55915d83db575d928652652c1",
      "parents": [
        "3364b2ff7970bea9013b53554caf98c2d5f783ed",
        "7077b3c9bb7367bae3e073aa213de51baf3321a9"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Thu Oct 04 11:56:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 11:56:29 2012 -0700"
      },
      "message": "Merge \"Read in the disable-keyguard-features flag from the XML file\" into jb-mr1-dev"
    },
    {
      "commit": "4e6922d89e72e79a8ab31ae2cb8a19d85bee91f8",
      "tree": "241f2cc34591502473590f45fe6e78f6ab323cf8",
      "parents": [
        "ebf7e2851cab55348153fca299c52042b125924d"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Oct 04 14:51:51 2012 -0400"
      },
      "committer": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Oct 04 14:51:51 2012 -0400"
      },
      "message": "Reset status bar in keyguard, fix MU status bar bug.\n\nTwo things going on here, status bar disabled flags need to be reset\non user switch.  Also make status bar\u0027s internal disable-record lookup\nmulti-user aware.\n\nBug:7278793\nChange-Id: I1d7088d956a065330736da4c09cc1874c528c133\n"
    },
    {
      "commit": "18c2b6e730f6d639421e45328f4fb2514683efe5",
      "tree": "8f43deb96618225a5bd67edbac7281d5df84febf",
      "parents": [
        "b3f55fdef6659b836d97e6859e89a9427b97cc67",
        "f429921e3a8b171771e268f23fc3fa909d791441"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Thu Oct 04 11:18:13 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 11:18:14 2012 -0700"
      },
      "message": "Merge \"throw SecurityException in isProviderEnabled()\" into jb-mr1-dev"
    },
    {
      "commit": "7077b3c9bb7367bae3e073aa213de51baf3321a9",
      "tree": "e92f7fe22dca8b6dedf0bd1d078cdebcba4d6feb",
      "parents": [
        "33c36895a294c7b731fd59017a7ea0f06ac2a356"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Thu Oct 04 10:28:50 2012 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Thu Oct 04 11:00:55 2012 -0700"
      },
      "message": "Read in the disable-keyguard-features flag from the XML file\n\nBug: 7283501 Exchange Services crash while using Email App after upgrading\nChange-Id: I40d13f5d3805ea3139dc3938077a5265ff78c426\n"
    },
    {
      "commit": "83762d22c9bde92d412cf5a263a228d705606721",
      "tree": "eee3fc3d53d600c2ad2192c2e6fed5b94ff84bbd",
      "parents": [
        "0f9deb3c1ab2c09ea59e5c53bfbb4fab9d9fa7e4"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Wed Oct 03 13:51:17 2012 -0700"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Thu Oct 04 09:46:52 2012 -0700"
      },
      "message": "multiuser support for LocationBlacklist\n\nThis allows primary/secondary users to have different \"Google\nLocation Services\" preferences. It also reenables LocationBlacklist,\nwhich is fixed elsewhere.\n\nBug: 7213502\nBug: 7248239\nChange-Id: I94837682f95920c225c00b7da2de6dd1418a673e\n"
    },
    {
      "commit": "078a490c2276c91ab84536d603c7848dc244e330",
      "tree": "1fc0b0e02b0143898c1ad16609f07f5dcf69da22",
      "parents": [
        "ebf7e2851cab55348153fca299c52042b125924d"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Oct 04 12:00:53 2012 -0400"
      },
      "committer": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Thu Oct 04 12:00:53 2012 -0400"
      },
      "message": "Clear notifications properly on ACTION_USER_STOPPED.\n\nWhich also takes care of the ACTION_USER_REMOVED case.\n\nBug:7277853\nChange-Id: I0a6bade11bd0d420df03e16e69a386cfccfa07cc\n"
    },
    {
      "commit": "f429921e3a8b171771e268f23fc3fa909d791441",
      "tree": "8ee7b21c912d5ec8cd87b66f69302dcd3c98499f",
      "parents": [
        "0f9deb3c1ab2c09ea59e5c53bfbb4fab9d9fa7e4"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Thu Oct 04 08:01:19 2012 -0700"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Thu Oct 04 08:01:19 2012 -0700"
      },
      "message": "throw SecurityException in isProviderEnabled()\n\nIn MR0, we did not allow applications to query enabled status of\nlocation providers they did not have permission to use. Some\napplications counted on this behavior, using the thrown\nSecurityException to determine whether or not they have permission\nto use the specified provider.\n\nReverting to this behavior fixes the regressions seen in those\napplications.\n\nBug: 7251459\nChange-Id: I8b0cfd5862c80f0c831a4ab544c3fa7408bc84a0\n"
    },
    {
      "commit": "f068fed6c4c3fc2003aec19b6e7e892358179b02",
      "tree": "e4a32991e129f2126da630f950e373d36ae0c886",
      "parents": [
        "26884df75c69587561e397ec4da6b5b463e37fe9"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Oct 03 22:25:07 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Oct 03 22:48:11 2012 -0700"
      },
      "message": "Accessibility HOVER_ENTER / EXIT without enclosing EXPLORATION_GESTURE_START / END\n\n1. The initial implementation was not sending the gesture start and end\n   events until the the user has moved more than a given slop and did not\n   do it faster than a given velocity. However, there is the case where\n   if the user did not move or just taped on the screen an exploration\n   occurs. The system was not sending the exploration start and end\n   events for the latter case.\n\n2. The delaued command for long press was not canceled when the pointer\n   moves more than the slop distance.\n\nbug:7282811\n\nChange-Id: I7d98470cd4d9ea9b2519326e5e550ff68b040747\n"
    },
    {
      "commit": "ebf7e2851cab55348153fca299c52042b125924d",
      "tree": "606efaa5e836ac0d12510f074f31a65d7cc47276",
      "parents": [
        "5b14b9698c288031fea6b40f0e1240c32ac83725",
        "3573950e0b30178dc963de3fa00aba2ebcfd552d"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Oct 03 21:02:19 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 21:02:20 2012 -0700"
      },
      "message": "Merge \"Close the current input method when attached view doesn\u0027t have a handler\" into jb-mr1-dev"
    },
    {
      "commit": "a6cab32d68692f69729195ac69b7f9e9c8d2001f",
      "tree": "fb9ec14374b6b7bafaca50d5726fa89bea8c3d4c",
      "parents": [
        "1a2fac3eeda031ac5f4c7d17c883d54af5661a66",
        "58fd9f8d6ad6bf1975e834f1a69e68673db9a452"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Oct 03 19:00:17 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 19:00:17 2012 -0700"
      },
      "message": "Merge \"Events for window\u0027s content change should be dispatched  only for the active window.\" into jb-mr1-dev"
    },
    {
      "commit": "58fd9f8d6ad6bf1975e834f1a69e68673db9a452",
      "tree": "f02273c5545b94e52a2ee3e7d0fe00ea41b5784a",
      "parents": [
        "26884df75c69587561e397ec4da6b5b463e37fe9"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Oct 03 18:10:27 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Oct 03 18:33:30 2012 -0700"
      },
      "message": "Events for window\u0027s content change should be dispatched  only for the active window.\n\n1. Accessibility events for changes in the content of a given window, such as\n   click, focus, etc. are dispatched to clients only if they come from the\n   active window.\n\n   Events for changes in the state of a window, such as window got input focus\n   or a notification appeared, are always dispatched. The notification events\n   do not contain source, so a client cannot introspect the notification area\n   (unless the user explicitly touches it which generates hove events). The\n   events for a window getting input focus change the active window so they\n   have to be dispatched.\n\n   Events that are a result of the user touching the screen, such as hover\n   enter, first tocuh, etc. should always be dispatched.\n\nbug:7282006\n\nChange-Id: I96b79189f8571285175d9660a22394cc84f39559\n"
    },
    {
      "commit": "c428aae6429c3fd5e2037c3793af399d9f6e23bf",
      "tree": "ea5452cc311e5440b6e3dbce5f856fbc8915b653",
      "parents": [
        "2e307a61a3730e6b65906f575d85258b197e3494"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Oct 03 16:38:22 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Oct 03 18:07:23 2012 -0700"
      },
      "message": "Fix issue #7267494, issue #7212347\n\n7267494 Calendar is not syncing\nCheck for whether a content provider is dead before returning\nit.  This is kind-of a band-aid, but probably the right thing\nto do; I\u0027m just not sure exactly the full details of why this\nproblem is happening.  Hopefully this \"fixes\" it, though I don\u0027t\nhave a way to repro to tell.\n\n7212347 System power off dialog is only visible to user 0\nMake it visible.  Also turn on some battery debugging stuff and\nclean it up so we can just keep it.\n\nChange-Id: I5add25bf2a763c8dfe1df23bc5c753a9ea5d157a\n"
    },
    {
      "commit": "0fd713ca12da9a1ecaaca3a117057b8d94704a99",
      "tree": "6ebf7187f60dc6b4cd20b3c41a36db50c62e3e56",
      "parents": [
        "88c3a51123bf39988c33c9074289fddff0e0fec8",
        "ec33d56300aa417efb4a055786d73d1bf23a6a85"
      ],
      "author": {
        "name": "Mike Cleron",
        "email": "mcleron@google.com",
        "time": "Wed Oct 03 17:07:04 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 17:07:05 2012 -0700"
      },
      "message": "Merge \"Exception in the touch explorer when dragging.\" into jb-mr1-dev"
    },
    {
      "commit": "ec33d56300aa417efb4a055786d73d1bf23a6a85",
      "tree": "799051fa73e8f2f7dd7c750809444ec5986df63b",
      "parents": [
        "26884df75c69587561e397ec4da6b5b463e37fe9"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Oct 03 17:00:18 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Oct 03 17:05:57 2012 -0700"
      },
      "message": "Exception in the touch explorer when dragging.\n\n1. During a drag in touch exploration we have two pointers moving in the same\n   direction but inject only one of them. If the dragging pointer goes up we\n   send an up to the view system and wait for all pointers to go up to transition\n   to touch exploring state. At this point the dragging pointer id is cleared\n   and if a new pointer goes down we are trying to send up (rather do nothing)\n   for the dragging pointer which we already did and due to the invalid pointer\n   id we get an exception when splitting the motion event.\n\nbug:7282053\n\nChange-Id: I690bf8bdf6e2e5851ee46a322c4a1bb7d484b53a\n"
    },
    {
      "commit": "8abd7021a681dd9db355ad7b17e0249200d6cc17",
      "tree": "fe56cc1f8ce222c26a4cf502f160d4437aed61fe",
      "parents": [
        "70bf7d2f641401abb745bcc0aee242ff6030d72b",
        "645832dd2ba63d5328cf934ceaa0ec6339573558"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 03 15:24:45 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 15:24:45 2012 -0700"
      },
      "message": "Merge \"Ensure dreams can be started when not powered.\" into jb-mr1-dev"
    },
    {
      "commit": "645832dd2ba63d5328cf934ceaa0ec6339573558",
      "tree": "73d615d7a920795fc850e5cb2750c08cf5d740f0",
      "parents": [
        "8bd206b54872d7b77110562ed535b6d1c72a1ca9"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 03 14:57:03 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Oct 03 14:57:03 2012 -0700"
      },
      "message": "Ensure dreams can be started when not powered.\n\nPreviously dreams could not be started unless plugged in.\nNow we allow them to start but they will eventually stop\nif a user activity timeout occurs and no screen wakelocks\nare held.\n\nBug: 7253639\nChange-Id: I84703e144ca6d4aba1ef9437f04a201c3dde8a49\n"
    },
    {
      "commit": "cdf932e050ba2220025072f37e50cc011d310cad",
      "tree": "be5eb74268a41168355f73b2ec626f36330a131e",
      "parents": [
        "8bd206b54872d7b77110562ed535b6d1c72a1ca9"
      ],
      "author": {
        "name": "rich cannings",
        "email": "richc@google.com",
        "time": "Wed Oct 03 14:32:38 2012 -0700"
      },
      "committer": {
        "name": "rich cannings",
        "email": "richc@google.com",
        "time": "Wed Oct 03 14:32:38 2012 -0700"
      },
      "message": "Fix PackageInstaller displays with multi-user\n\nWith this fix, when all users cancel installing an app they were warned about,\nthen the \"Installing...\" screen disappears, as desired.\n\nBug: 7255231\nChange-Id: I2475fa790a5d09abbf94411c696682502fb1e8df\n"
    },
    {
      "commit": "fc6770e748bb69f80b7b68942a273335b165000a",
      "tree": "46f27dde35a142444e442aad87eead0deed3fd26",
      "parents": [
        "1fd3474585e2f2c5c87572e8b1c6c0c05b718b1a",
        "0d21e2161f8542db0a54bf80b74b7fd33afef6f6"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Wed Oct 03 08:43:42 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 08:43:43 2012 -0700"
      },
      "message": "Merge \"Remove checkPermission() call in getAllProviders().\" into jb-mr1-dev"
    },
    {
      "commit": "3f0a57dcd9a060bb3b2b35da4d2ac6cb42733fef",
      "tree": "b6074d5757df5ebc6e92893537c38d62fce6aa15",
      "parents": [
        "5558b79e7a40adb3ad550e8bdf37996ddbeb714f",
        "ff532540f18e3b2181da0550fe55045418a3b84e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 23:28:18 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 23:29:47 2012 -0700"
      },
      "message": "Merge changes Iccea764b,I624b559e into jb-mr1-dev\n\n* changes:\n  Improve the screen dim duration calculation.\n  Implement screen on hack for wireless chargers.\n"
    },
    {
      "commit": "5558b79e7a40adb3ad550e8bdf37996ddbeb714f",
      "tree": "87fb794119bc6382adc0917b3c5648e7df92b505",
      "parents": [
        "6bcd73203ada36b446b05fa33f9834ac989c0621",
        "a4d8204e3068b9d8d6908d4cf3440e81967867a3"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 23:28:02 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 23:28:02 2012 -0700"
      },
      "message": "Merge \"Fix some synchronization issues in BatteryService.\" into jb-mr1-dev"
    },
    {
      "commit": "ff532540f18e3b2181da0550fe55045418a3b84e",
      "tree": "6b7c771a5838873365e3864ee1069de712b07c77",
      "parents": [
        "f3fb895269deadcda0cf497d421e4b89e8ee8f8f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 21:18:04 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 21:18:04 2012 -0700"
      },
      "message": "Improve the screen dim duration calculation.\n\nTake into account whether the screen off timeout is very short.\nIf so, we use a shorter dim timeout.  Don\u0027t allow the dim\ntime to be more than 20% of the total screen on time so that\nthe screen remains bright at least 80% of the time even when\nthe timeout is short.\n\nBug: 7273646\nChange-Id: Iccea764b90f0d8b1df7009d26160c6bcf6eabe5b\n"
    },
    {
      "commit": "f3fb895269deadcda0cf497d421e4b89e8ee8f8f",
      "tree": "d40d84e9c223dfde753bfd59d2f69c2807580df9",
      "parents": [
        "a4d8204e3068b9d8d6908d4cf3440e81967867a3"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 20:57:05 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 20:57:05 2012 -0700"
      },
      "message": "Implement screen on hack for wireless chargers.\n\nWe can\u0027t accurately detect whether the device is resting\non a wireless charger unless it is actually charging.\nSo we need to tweak the screen on when plugged / unplugged\npolicy accordingly to avoid spurious wakeups.\n\nBug: 7234284\nChange-Id: I624b559e2e92b8813b12090bc20eca5f5158997e\n"
    },
    {
      "commit": "3573950e0b30178dc963de3fa00aba2ebcfd552d",
      "tree": "b3b03c8c35ea6537a031adad778ff02256105461",
      "parents": [
        "d27f1cd30b140f042e11032e4aa4381756e2998f"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Tue Oct 02 19:00:26 2012 +0900"
      },
      "committer": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Oct 03 12:07:23 2012 +0900"
      },
      "message": "Close the current input method when attached view doesn\u0027t have a handler\n\nBug: 7187452\nChange-Id: Iba4f7ac89f5806e871aaeb97f366935b83b95a5a\n"
    },
    {
      "commit": "75b694f1d6038edee8b071df1e339b81d7960e97",
      "tree": "8df3a3553ef04a8cc86500802ea00c6431fd6dc1",
      "parents": [
        "3e2358a0e677ad1c88d677919aa9b8d7b2fb4eb2",
        "aa4b3c79f28560930e256ec5e2c5a7a4c20f5542"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Oct 02 19:19:41 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 19:19:41 2012 -0700"
      },
      "message": "Merge \"Fix issue #7274813: A few sticky broadcasts aren\u0027t being sent to all users\" into jb-mr1-dev"
    },
    {
      "commit": "3e2358a0e677ad1c88d677919aa9b8d7b2fb4eb2",
      "tree": "72d2c5eedebb050f3f3464d3b40124d5f53cf5bd",
      "parents": [
        "720d14db87a5683ef2d4ad976fd8c28a5d2af611",
        "4b5aa78c898a827c3cd65f578d31d3809b61aad6"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Oct 02 19:13:59 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 19:14:00 2012 -0700"
      },
      "message": "Merge \"Delay setting hidden until after isVisibleNow test.\" into jb-mr1-dev"
    },
    {
      "commit": "a4d8204e3068b9d8d6908d4cf3440e81967867a3",
      "tree": "5a3e01a517ca780549121d43564a76655c45ede2",
      "parents": [
        "cb882f90e4305bd40d7219707bc1796319e9c80e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 19:11:19 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 19:11:19 2012 -0700"
      },
      "message": "Fix some synchronization issues in BatteryService.\n\nSome of the BatteryService state was being locked\nsometimes and it wasn\u0027t at all consistent.\n\nBug: 7158734\nChange-Id: I46e75f66fde92c5a577a80a6bd99c9573066f3c1\n"
    },
    {
      "commit": "1ed299f822b22998b7236e3147d8cf4707bced08",
      "tree": "b060dfb097b8258d3135813f2ef75f9c72c86a39",
      "parents": [
        "031e9d2e21797fd668404be407dcc625f3b149c1",
        "fc3f24b4b60c10e0d3f41f70df37e11ea311cc2c"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 02 18:11:48 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 18:11:48 2012 -0700"
      },
      "message": "Merge \"Make USB services multi-user aware.\" into jb-mr1-dev"
    },
    {
      "commit": "4b5aa78c898a827c3cd65f578d31d3809b61aad6",
      "tree": "6413bde88a65731ff92d1bd2edc5d46d03531678",
      "parents": [
        "09f090b377cbe2332340580daf4adf4d2502d004"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Oct 02 18:11:25 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Oct 02 18:11:25 2012 -0700"
      },
      "message": "Delay setting hidden until after isVisibleNow test.\n\nSetting hidden prior to test guarantees the test will fail. This\nthen causes the exit animation to not be loaded and consequently\nthe window is immediately hidden. Then, when the window is removed\nlater it reappears in order to animate away. The consequent flash\nis undesirable.\n\nBug: 7242373 fixed.\nChange-Id: I56966bd9060124be372702090f86b29b4deea8c0\n"
    },
    {
      "commit": "fc3f24b4b60c10e0d3f41f70df37e11ea311cc2c",
      "tree": "be61172447392620b42c88517ad58a5210adf5cb",
      "parents": [
        "c6e570dbadc3689bc80c0516492a3209d5f6742b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 01 21:45:52 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 02 18:09:10 2012 -0700"
      },
      "message": "Make USB services multi-user aware.\n\nUSB settings are now isolated per-user, since they revolve around\ninstalled packages.  User-specific settings are returned based on\ncalling user, or referenced by UserHandle passed to SystemUI.  Each\nsettings Context is wrapped as a specific user, so all broadcasts are\nsent correctly.  Upgrades any existing USB settings to OWNER.\n\nPhysical events, like new devices, are routed to the currently active\nuser.  Switch to using AtomicFile when persisting settings.\n\nBug: 7244888\nChange-Id: I8a723ad3d55ac1bff99276c5f3a3f5e8f013432f\n"
    },
    {
      "commit": "031e9d2e21797fd668404be407dcc625f3b149c1",
      "tree": "4d61b2dbc4086a33faff9ff939ff62e57d27fec0",
      "parents": [
        "5cf72e11b6ec38c09e810611ec57bff9ff40ce9d",
        "cb882f90e4305bd40d7219707bc1796319e9c80e"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 17:07:45 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 17:08:07 2012 -0700"
      },
      "message": "Merge changes I0ed9ba00,Ia8c6d7fe into jb-mr1-dev\n\n* changes:\n  Fix bug removing all windows that belong to a display.\n  Add some missing debug output.\n"
    },
    {
      "commit": "bcbe9cf475835102ae2490dc9f067a3ac78a9551",
      "tree": "fd8e1b5efcce5a8a5b64edab5281690dd67e73a3",
      "parents": [
        "9c614bfe17e4e335d13ff5885a00fe8c3085fea1",
        "77aebfdbae489c3712ae3f9bca29d01fb1f09dc2"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 16:39:07 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 16:39:08 2012 -0700"
      },
      "message": "Merge \"Add new Display API for secure video capabilities.\" into jb-mr1-dev"
    },
    {
      "commit": "9bfb8bcfeb585c1692830ff91a36afa852455cf7",
      "tree": "2f133d76f32e809bc8f975793fddf3920fdccea4",
      "parents": [
        "046184f97aa71bd36a11b9d2cd27dafe2d29d246",
        "aeb8d0ed0d98d398a66a092c418f4f2bca8719e0"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Oct 02 16:27:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 16:36:29 2012 -0700"
      },
      "message": "Merge \"Up motion event not injected by the touch explorer at the end of a drag.\" into jb-mr1-dev"
    },
    {
      "commit": "cb882f90e4305bd40d7219707bc1796319e9c80e",
      "tree": "137f4d7bdb69d4c3eab56b94e8ab10dc00895629",
      "parents": [
        "c2726643e74873c544efc2769a5ab2a445c433c4"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 16:35:35 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 16:35:35 2012 -0700"
      },
      "message": "Fix bug removing all windows that belong to a display.\n\nRemoving one window causes its subwindows to also be removed.\nWe have to be careful when traversing the window list\nbecause multiple windows may be removed at a time so we\ndon\u0027t get IndexOutOfBoundsException due to the window\nlist changing in unexpected ways.\n\nBug: 7273702\nChange-Id: I0ed9ba00c325ad178ab28919ce2e763cb6fd38ba\n"
    },
    {
      "commit": "5bc54bf354f6e674a129b2e286b4bd3eefe91c2b",
      "tree": "8594ed4972a42992bac80ad72b6229dc4a2780d0",
      "parents": [
        "3ed62adad14c213117c2b869e71abc2474102ad4",
        "4a9f071f3d3fdd20615167cda6f22da912bc60c7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Oct 02 16:25:14 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 16:25:15 2012 -0700"
      },
      "message": "Merge \"Fix issue #7272775: Auto Start Apps Not Starting\" into jb-mr1-dev"
    },
    {
      "commit": "3ed62adad14c213117c2b869e71abc2474102ad4",
      "tree": "7eeecc1613a8b403a42158f2541d1b36ea3d2e12",
      "parents": [
        "970a494ce18ca4b05bdb7c668161dcc3efee0bbe",
        "d55deb0a7163a40fe9772ce659f0a3e3ed340de3"
      ],
      "author": {
        "name": "rich cannings",
        "email": "richc@google.com",
        "time": "Tue Oct 02 16:23:09 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 16:25:15 2012 -0700"
      },
      "message": "Merge \"Fix package verification with multi-user\" into jb-mr1-dev"
    },
    {
      "commit": "77aebfdbae489c3712ae3f9bca29d01fb1f09dc2",
      "tree": "5f3cf170ce629f5b2f74374ea4b21197ed7a841d",
      "parents": [
        "4253abbcfa3165ad7d06c4de97cd780c4e96f94a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 21:07:03 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 16:25:10 2012 -0700"
      },
      "message": "Add new Display API for secure video capabilities.\n\nAdded a new API to determine whether the display supports\nprotected buffers so that an application can choose a different\ncontent stream or change how it decodes the content so\nthat it will be viewable on the display.\n\nAt present, wifi display does not fully support protected\nbuffers although this may be enhanced in the future.\n\nBug: 6986623\nChange-Id: If53a53d72b0ec92753cc4b29f99fcb131e00449b\n"
    },
    {
      "commit": "c2726643e74873c544efc2769a5ab2a445c433c4",
      "tree": "f7c2af55284cf61382c80029534fcadac093290b",
      "parents": [
        "77aebfdbae489c3712ae3f9bca29d01fb1f09dc2"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 16:17:31 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue Oct 02 16:25:10 2012 -0700"
      },
      "message": "Add some missing debug output.\n\nBug: 7257579\nChange-Id: Ia8c6d7fefe6d4c4e6c37f20722c7ffce4bcfcbae\n"
    },
    {
      "commit": "aa4b3c79f28560930e256ec5e2c5a7a4c20f5542",
      "tree": "921682c888554301f9b07235524249436fd547cf",
      "parents": [
        "11d8481f10a12caef0cfd9be7fe86e61d953d58f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Oct 02 16:23:39 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Oct 02 16:23:39 2012 -0700"
      },
      "message": "Fix issue #7274813: A few sticky broadcasts aren\u0027t being sent to all users\n\nChange-Id: I2fc89de36be0709946f562f64002d0f6d223401f\n"
    },
    {
      "commit": "0d21e2161f8542db0a54bf80b74b7fd33afef6f6",
      "tree": "25fef64e1752d9e2a2b338fcf8faa46a73d4836b",
      "parents": [
        "57e6203457cedbc6f4bf8a45635862a3eb717e9f"
      ],
      "author": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Tue Oct 02 15:33:48 2012 -0700"
      },
      "committer": {
        "name": "Laurent Tu",
        "email": "laurentt@google.com",
        "time": "Tue Oct 02 16:02:23 2012 -0700"
      },
      "message": "Remove checkPermission() call in getAllProviders().\n\ngetAllProviders() should return all locators, including those not\nallowed or not enabled (according to the existing javadoc, at least).\nThe checkPermission() call prevented this behavior by throwing a\nsecurity exception. We restore the previous behavior by removing the\ncall.\n\nBug: 6950369\n\nChange-Id: I0c6bc676d4c4db482bb68f1ab7fa5c93675118b4\n"
    },
    {
      "commit": "4a9f071f3d3fdd20615167cda6f22da912bc60c7",
      "tree": "37b20a219d32fc71c0cbebcfbff37579a17ce646",
      "parents": [
        "11d8481f10a12caef0cfd9be7fe86e61d953d58f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Oct 02 15:29:06 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Oct 02 15:29:06 2012 -0700"
      },
      "message": "Fix issue #7272775: Auto Start Apps Not Starting\n\nBad defaults were causing stopped state to be set at each\nboot.\n\nChange-Id: I49b04e9c62f6ac391054201b508fddb6c7985615\n"
    },
    {
      "commit": "d5523dc7b7318f2774109dd30716ff7b74560e61",
      "tree": "20cc3e02d113ba19a1976d27692c23bbdccc930f",
      "parents": [
        "09f090b377cbe2332340580daf4adf4d2502d004"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Oct 02 13:49:22 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Tue Oct 02 15:28:09 2012 -0700"
      },
      "message": "Call Surface.destroy when Display is removed.\n\nPrevents leaked Surfaces.\n\nBug: 7272421.\nChange-Id: I6c87eb11bb0bedcf8de451b04477c70c248f905d\n"
    },
    {
      "commit": "d55deb0a7163a40fe9772ce659f0a3e3ed340de3",
      "tree": "c038592616cd3f2a8ee0e0b59d2aee8418366bd3",
      "parents": [
        "0944d625448209185452eb4e800daec49de51986"
      ],
      "author": {
        "name": "rich cannings",
        "email": "richc@google.com",
        "time": "Tue Oct 02 14:53:08 2012 -0700"
      },
      "committer": {
        "name": "rich cannings",
        "email": "richc@google.com",
        "time": "Tue Oct 02 14:53:08 2012 -0700"
      },
      "message": "Fix package verification with multi-user\n\nFixes the porblem of PackageManagerService always sending Intents to user 0.\n\nBug: 7272549\nChange-Id: I25995d8b2b9a24346f4813e6d8d9a84e5d5d2b6b\n"
    },
    {
      "commit": "aeb8d0ed0d98d398a66a092c418f4f2bca8719e0",
      "tree": "f2205d1c13a56ac161e19c19bf3f7a16dd9c7484",
      "parents": [
        "0944d625448209185452eb4e800daec49de51986"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Oct 02 14:16:08 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Oct 02 14:33:27 2012 -0700"
      },
      "message": "Up motion event not injected by the touch explorer at the end of a drag.\n\n1. The up event was not injected when the last pointer went up, i.e.\n   at the end of the drag. This patch sends an up event if the dragging\n   pointer goes up for both cases, when the dragging pointer goes up\n   first and when it goes up second.\n\nbug:7272830\n\nChange-Id: I708a2b93ee2d0a4c46dbeea002841666e919602d\n"
    },
    {
      "commit": "6e2bee75cea415621165698fdd9ce857bbb8872e",
      "tree": "840286617a3603685bb9f134e2fe4c924b8afef4",
      "parents": [
        "0944d625448209185452eb4e800daec49de51986"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 01 13:39:08 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 02 13:55:15 2012 -0700"
      },
      "message": "Migrate more System and Secure settings to Global.\n\nIncludes telephony, WindowManager, PackageManager, and debugging\nsettings.  Update API to point towards moved values.\n\nBug: 7231764, 7231252, 7231156\nChange-Id: I5828747205708872f19f83a5bc821ed0a801cb79\n"
    },
    {
      "commit": "0944d625448209185452eb4e800daec49de51986",
      "tree": "6fa9556b91388c4b6f7b300393259179e50d9bc4",
      "parents": [
        "217ca3b0d310472e4df1aa4af72769d7c7a5becb",
        "45af84a483165f06c04d74baba67f90da29c6ad2"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Oct 02 13:14:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 02 13:14:06 2012 -0700"
      },
      "message": "Merge \"Touch explorer and magnifier do not work well together.\" into jb-mr1-dev"
    },
    {
      "commit": "45af84a483165f06c04d74baba67f90da29c6ad2",
      "tree": "b033e50c11473892a162251c0664b847c9a2ee18",
      "parents": [
        "bfbf6e1232013a999f4776f7fdf7cf6fb577f89b"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Oct 01 16:25:08 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Oct 02 12:02:05 2012 -0700"
      },
      "message": "Touch explorer and magnifier do not work well together.\n\n1. If tocuh exploration and screen magnification are enabled and the screen\n   is currently magnified, gesture detection does not work well. The reason\n   is because we are transforming the events if the screen is magnified before\n   passing them to the touch explorer to compensate for the magnification so\n   the user can poke what he thinks he pokes. However, when doing gesture\n   detection/velocity computing this compensating shrinks the gestured shape/\n   decreases velocity leading to poor gesture reco/incorrect velocity.\n\n   This change adds a onRawMotionEvent method in the event transformation chain\n   which will process the raw touch events. In this method of the touch explorer\n   we are passing events to the gesture recognized and the velocity tracker.\n\n2. Velocity tracker was not cleared on transitions out of touch exploring state\n   which is the only one that uses velocity.\n\nbug:7266617\n\nChange-Id: I7887fe5f3c3bb6cfa203b7866a145c7341098a02\n"
    },
    {
      "commit": "56925d65fde7f1ac8676ada6f91d0e604645c0a5",
      "tree": "43fe507e917e6ae377005a447cc892a6384bfd8b",
      "parents": [
        "30ed33b141dd1add916466c193b6735cd0bf8315"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Mon Oct 01 23:01:57 2012 -0700"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Mon Oct 01 23:01:57 2012 -0700"
      },
      "message": "Always update peer list in display controller\n\nDisplay controller should always stay in sync with peer list to avoid\nshowing incorrect available status on peers which would\ncause connectivity issues.\n\nBug: 7268307\nChange-Id: If04644339c1ee3f567939e4441dd6f6a45e4179a\n"
    },
    {
      "commit": "30ed33b141dd1add916466c193b6735cd0bf8315",
      "tree": "687bc84c8eab88cce1f0b739436be7f0b5e08c87",
      "parents": [
        "0a551d6b36ace1388bea572be1a5b7c53c506a51",
        "59f07690c2bdd97b9e486b776d2175d914818d06"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Oct 01 21:18:13 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 21:19:11 2012 -0700"
      },
      "message": "Merge \"Owner should not be announces as a user switch.\" into jb-mr1-dev"
    },
    {
      "commit": "59f07690c2bdd97b9e486b776d2175d914818d06",
      "tree": "5bdb5515df2f9b54c981753d81aefe636c0a47a7",
      "parents": [
        "bfbf6e1232013a999f4776f7fdf7cf6fb577f89b"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Oct 01 19:01:32 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Mon Oct 01 19:22:43 2012 -0700"
      },
      "message": "Owner should not be announces as a user switch.\n\n1. The accessibility layer announces user switches. Even though\n   the initial switch to the owner on a singe user device is a\n   valid use switch we should not announce it for accessibility.\n\nbug:7264693\n\nChange-Id: Idf022fab6b74c84b7a96bc4ed7c7fee2b83029a6\n"
    },
    {
      "commit": "3750db176adbaf3f9779df5eadf335f673b2ac4f",
      "tree": "c3dc41f075caedc0f858fb5dfa0c743ef8b37327",
      "parents": [
        "6f354ed9994b4ea7612cc4499413de108dcac7d4",
        "38389b6cf7bd2ef49d2bd20ff1bca8677596590e"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Mon Oct 01 17:46:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 17:46:27 2012 -0700"
      },
      "message": "Merge \"Route GPS notifications to all users.\" into jb-mr1-dev"
    },
    {
      "commit": "6f354ed9994b4ea7612cc4499413de108dcac7d4",
      "tree": "45d8641308341f9ab8f801e82deb9edc9e5d7fb9",
      "parents": [
        "046cff13fc897e9e958ef387884eb97fd901840b",
        "cc5a055613efb463275633d83a04674b0be6d770"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Oct 01 17:42:02 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 17:46:27 2012 -0700"
      },
      "message": "Merge \"Fix issue #7226101: Secure image capture takes 5 seconds to start\" into jb-mr1-dev"
    },
    {
      "commit": "046cff13fc897e9e958ef387884eb97fd901840b",
      "tree": "856ff8a89c9c03b0f0ea2bda8f65542cdebcee90",
      "parents": [
        "9f5ed35d8afd23ecf5fea7e0a641a11feb039fdd",
        "9ba8d78186647a3f23606b5ccf9adb97b57278fb"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 17:41:52 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 17:41:53 2012 -0700"
      },
      "message": "Merge \"Fix CTS test failures.\" into jb-mr1-dev"
    },
    {
      "commit": "9ba8d78186647a3f23606b5ccf9adb97b57278fb",
      "tree": "bf192640fab80d5259798a7e20d19f7843fe29f9",
      "parents": [
        "850c5b7ca56b04d399f45c13e6c1a0bd4162555f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 16:38:23 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 17:34:07 2012 -0700"
      },
      "message": "Fix CTS test failures.\n\nBug: 7001730\nChange-Id: I5649b601c310458de5d64b549a407e251d745b7c\n"
    },
    {
      "commit": "b97d8764a0aa600d7bcc6242e7173453c87ee658",
      "tree": "a4e26afccbcfc0ace858908ab6d4bf826d6a6d07",
      "parents": [
        "efe9b483547ac44dbc88bdfd6a54be5c95c2d889",
        "2f39e9f8333183312b7f7d423c2ea60a93a25e32"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Oct 01 16:38:45 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 16:38:46 2012 -0700"
      },
      "message": "Merge \"Switch from uevent model to /dev/input/event.\" into jb-mr1-dev"
    },
    {
      "commit": "cc5a055613efb463275633d83a04674b0be6d770",
      "tree": "31d82eb149608b28433e2003f5e0d1d07f200dd6",
      "parents": [
        "933a7546c857dba7704a15b7f7f7847934f14912"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Oct 01 16:32:39 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Oct 01 16:32:39 2012 -0700"
      },
      "message": "Fix issue #7226101: Secure image capture takes 5 seconds to start\n\nMostly (turned off) debug output.  Main fix is to resume the next\nactivity if we are pausing while sleeping and the top activity is\nnot the now pausing activity.  Also helped things by fixing a problem\nwhere removing a task would leave around dead destroy timeout\nmessages.\n\nChange-Id: I9d550c216b4d7e2afe3d93553bb680cec41e2ed1\n"
    },
    {
      "commit": "410bc60a77ee3ba6e596e84d44ec23f3325ae310",
      "tree": "eb27c9abe95012d62a38cb6c8b9ea2972489e71b",
      "parents": [
        "cb6f950f15919794d26a55c20090fe5dacd11e4a",
        "90fc9059199cde8ff2ed3e3151070d11416e2553"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 15:20:47 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 15:22:43 2012 -0700"
      },
      "message": "Merge changes I790820b1,I3fcf3619,Ia0d5a156 into jb-mr1-dev\n\n* changes:\n  Enable hardware acceleration for pointer location overlay.\n  Disable use of twilight mode for auto-brightness.\n  Use new API to override user activity timeout from keyguard.\n"
    },
    {
      "commit": "cb6f950f15919794d26a55c20090fe5dacd11e4a",
      "tree": "bef822ab877bce84ab10a664380aae9e50f99b77",
      "parents": [
        "4b08e07477f1763a93d9658f618606c1f1e9f249",
        "1e3b98d47df596d0c4eadbdf60143709f8465b28"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 15:20:22 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 15:20:23 2012 -0700"
      },
      "message": "Merge \"New internal API to eliminate poke locks.\" into jb-mr1-dev"
    },
    {
      "commit": "2961d111570d310b3ba504784e7cff651bc93207",
      "tree": "f028f1426c6f2058c2893b3e5fb3d13d8ca6690d",
      "parents": [
        "1f7a09b5df9f859781d9cfa0053fad44c72c2168",
        "5c24fd03426db58b63e1a792c2595447cb722d46"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Mon Oct 01 14:59:56 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 14:59:57 2012 -0700"
      },
      "message": "Merge \"Avoid NPE in GpsLocationProvider\" into jb-mr1-dev"
    },
    {
      "commit": "db21284a7fb081065d26137891594bd8495b116f",
      "tree": "4e5a461a14d67c47f90fb09a753218a45e72f51e",
      "parents": [
        "3dc524bc31a1578693ca958ef442dfa092b7aa7f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 14:33:09 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 14:33:42 2012 -0700"
      },
      "message": "Disable use of twilight mode for auto-brightness.\n\nThis adjustment is still experimental.\n\nBug: 7165399\nChange-Id: I3fcf361933995d02a5329eeaec80155b39371ba3\n"
    },
    {
      "commit": "1e3b98d47df596d0c4eadbdf60143709f8465b28",
      "tree": "ed63fa39f6d2db3b3a3fd9caf61174129198c6cc",
      "parents": [
        "1f7a09b5df9f859781d9cfa0053fad44c72c2168"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Sep 30 18:58:59 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 14:27:34 2012 -0700"
      },
      "message": "New internal API to eliminate poke locks.\n\nAdded a new WindowManager.LayoutParams inputFeatures flag\nto disable automatic user activity behavior when an input\nevent is sent to a window.\n\nAdded a new WindowManager.LayoutParams field userActivityTimeout.\n\nBug: 7165399\nChange-Id: I204eafa37ef26aacc2c52a1ba1ecce1eebb0e0d9\n"
    },
    {
      "commit": "1f7a09b5df9f859781d9cfa0053fad44c72c2168",
      "tree": "5d1d2ae2a97de71b15e957ae6d1664aaff3cc079",
      "parents": [
        "ba30ac6aa7bc4df030292c62c9f38fac0a65b79e",
        "65d11b3eeff395011a2c6b56eb117fd3c4881c1a"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Oct 01 14:21:06 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 14:23:39 2012 -0700"
      },
      "message": "Merge \"Only inform DisplayManager of visible content.\" into jb-mr1-dev"
    },
    {
      "commit": "65d11b3eeff395011a2c6b56eb117fd3c4881c1a",
      "tree": "aa0d33b8fc3cf89bf3a5e975460bee2f34ccf8fd",
      "parents": [
        "bfbf6e1232013a999f4776f7fdf7cf6fb577f89b"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Oct 01 13:59:52 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Mon Oct 01 13:59:52 2012 -0700"
      },
      "message": "Only inform DisplayManager of visible content.\n\nWindowManager was notifying DisplayManager of content if any window\nexisted on a display. Now the window must be visible and we must not\nbe showing a Dream or the Keyguard.\n\nBug: 7214060.\nChange-Id: I9ce4a49aabfbac22ff1e39a837199ce35b9f7503\n"
    },
    {
      "commit": "b525c3cfc7484c87fcf96b48447b2a220b25f519",
      "tree": "0c9cf26d6da92cc40154aeaf3f8d121221f240d1",
      "parents": [
        "2036a94a9004613644bdbdab1b10e476be3f0213",
        "e98bde011c1a723b1dffa632d7dd3b194fb4084f"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Oct 01 13:05:28 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 13:05:28 2012 -0700"
      },
      "message": "Merge \"Fix broadcast to a specific user\" into jb-mr1-dev"
    },
    {
      "commit": "2036a94a9004613644bdbdab1b10e476be3f0213",
      "tree": "28cdc9122c5b22a4c27089412b8cf88c7d72d431",
      "parents": [
        "383b0f8f738df792050cc2f99f599e53718a3111",
        "54289b8b4a110cc1ae106d79785cc762a2aebd6e"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Oct 01 12:42:58 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 13:05:28 2012 -0700"
      },
      "message": "Merge \"Fix cache deletion for secondary users\" into jb-mr1-dev"
    },
    {
      "commit": "5c24fd03426db58b63e1a792c2595447cb722d46",
      "tree": "8b2624de351c5fffa89345712a40b669ab02a9b6",
      "parents": [
        "ce803d8ed8350179a8474564df8ff26be32bbe5e"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Mon Oct 01 11:00:50 2012 -0700"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Mon Oct 01 12:04:37 2012 -0700"
      },
      "message": "Avoid NPE in GpsLocationProvider\n\nOops, looks like we were spinning up a secondary thread to run some\ntasks that will just happen on the main thread regardless. Removed\nthe secondary thread and fixed up initialisation order regarding\nmHandler and things that post to it. Also reordered GPS and\nPASSIVE provider initialisation order since GPS depends on PASSIVE.\n\nThis should be both safer and easier to read.\n\nBug: 7248029\nChange-Id: I8630caf0a7bd1b2c401603075676f13dda5be4fa\n"
    },
    {
      "commit": "5e3dcf7210bed65d8f9aec40d9da078daf76dead",
      "tree": "ecab98553eecca1c18f3f2337d153a58e7fdcf08",
      "parents": [
        "c56e5600501a5c376dc13e6a99fcec7782fc8718",
        "edce6a797878792de2b0bde4360f3171b9e9d9d2"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Oct 01 11:35:53 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 11:35:55 2012 -0700"
      },
      "message": "Merge \"Remove clearUserActivityTimeout().\" into jb-mr1-dev"
    },
    {
      "commit": "e98bde011c1a723b1dffa632d7dd3b194fb4084f",
      "tree": "4989f4f5bfdd96ba78778bf48579c9726c3e7143",
      "parents": [
        "c56e5600501a5c376dc13e6a99fcec7782fc8718"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Oct 01 11:30:47 2012 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Oct 01 11:30:47 2012 -0700"
      },
      "message": "Fix broadcast to a specific user\n\nBug: 7255777\nBug: 7263657\n\nWhen userId is neither CURRENT nor ALL, the correct list of receivers\nwas not being built, due to a typo in ActivityManagerService;\n\nChange-Id: Ib1dc627f0dbd1c91d02c718d2e4d2384ad687d1f\n"
    },
    {
      "commit": "54289b8b4a110cc1ae106d79785cc762a2aebd6e",
      "tree": "a414077d404f27aa8643ef1516ad9829b6fc214d",
      "parents": [
        "c56e5600501a5c376dc13e6a99fcec7782fc8718"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Oct 01 10:39:14 2012 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Mon Oct 01 11:19:55 2012 -0700"
      },
      "message": "Fix cache deletion for secondary users\n\nBug: 7249419\n\nChange-Id: Idbc0f9994508059ebf5055aea961b87e08b3673a\n"
    },
    {
      "commit": "c56e5600501a5c376dc13e6a99fcec7782fc8718",
      "tree": "e7a84b030f994b13e90d8b7f39ff6a5050395981",
      "parents": [
        "bfbf6e1232013a999f4776f7fdf7cf6fb577f89b",
        "d56b4d1db34bd6928f599e7e9a7321c2a81cb995"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Oct 01 10:32:34 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 10:32:35 2012 -0700"
      },
      "message": "Merge \"Construct a task stack for picking a wifi network from notification\" into jb-mr1-dev"
    },
    {
      "commit": "38389b6cf7bd2ef49d2bd20ff1bca8677596590e",
      "tree": "df60d969dee05b53545e2b0b18bfba57d266d595",
      "parents": [
        "ce803d8ed8350179a8474564df8ff26be32bbe5e"
      ],
      "author": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Sun Sep 30 11:44:22 2012 -0700"
      },
      "committer": {
        "name": "Victoria Lease",
        "email": "violets@google.com",
        "time": "Mon Oct 01 09:09:25 2012 -0700"
      },
      "message": "Route GPS notifications to all users.\n\nThis takes the easy way around notifying the correct users\nabout GPS state transitions by notifying ALL the users(!).\n\nI\u0027ve also laid groundwork for proper multiuser support in\nLocationManager and did a tiny bit of cleanup in\nGpsNetInitiatedHandler while I was looking at notifications.\n\nBug: 7213552\nChange-Id: I2d6dc65c459e55d110ac0f5f79ae7a87ad638ede\n"
    },
    {
      "commit": "13451a25fff12c1429f9ecdc24b2aa7696359f7d",
      "tree": "de645223bc2e75005c7753465f27fe108968d7da",
      "parents": [
        "135e5fb71242b1151929e2ea7bf221ff421e6ad2"
      ],
      "author": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Fri Sep 28 14:40:41 2012 -0400"
      },
      "committer": {
        "name": "John Spurlock",
        "email": "jspurlock@google.com",
        "time": "Mon Oct 01 11:44:37 2012 -0400"
      },
      "message": "Status bar: Keep disabled state per user.\n\nBug:7165607\nChange-Id: If6f7a41c2516996612aef5e013dd0d2bd23f9084\n"
    },
    {
      "commit": "135e5fb71242b1151929e2ea7bf221ff421e6ad2",
      "tree": "3a531fda3d833643fc1a798d697b06d9fe3b9a68",
      "parents": [
        "bdac829f501421439b6558555577b3d6932b54ad"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Fri Sep 28 18:25:06 2012 +0900"
      },
      "committer": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Mon Oct 01 16:18:05 2012 +0900"
      },
      "message": "Always accept API calls from processes which have INTERACT_ACROSS_USERS_FULL in InputMethodManagerService\n\nBug: 6931482\nChange-Id: I1620413578b9e8da6564664219f65bdc00d5ecfd\n"
    },
    {
      "commit": "d56b4d1db34bd6928f599e7e9a7321c2a81cb995",
      "tree": "187f721ddb224b3a01178c62ca8cab943a46007f",
      "parents": [
        "2032a12036cf684f8ac6c24406685a7f97d52649"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Sun Sep 30 18:27:31 2012 -0700"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Sun Sep 30 18:30:42 2012 -0700"
      },
      "message": "Construct a task stack for picking a wifi network from notification\n\nBug 7001327\n\nChange-Id: I5a79e6933cd33386cd0aa4df626f15902deedd67\n"
    },
    {
      "commit": "2f39e9f8333183312b7f7d423c2ea60a93a25e32",
      "tree": "2a001e42c207dbe232e67da638739a77c67fba0a",
      "parents": [
        "a995b6e37f20b3e7eebfb37d8868c1bc14906204"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Fri Sep 21 11:39:54 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sun Sep 30 18:07:45 2012 -0700"
      },
      "message": "Switch from uevent model to /dev/input/event.\n\nHeadsets are now detected from calls coming in from the input switch\nsubsystem if a config.xml value is set to true.\n\nBug: 6548391.\n\nChange-Id: I79259d2742e157b106a746474f32ffd1c171ddf3\n"
    },
    {
      "commit": "71520a68f3906ce2a7e425edd7fe08bac535a967",
      "tree": "497eb50791ff44434ba7dfa536d1594fc1438bf6",
      "parents": [
        "62ea4363362526d32b48f920601d3b4e27a117bb",
        "32ee831eabc43001d756897e57f52f527bd9c431"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Sep 30 17:16:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 30 17:16:50 2012 -0700"
      },
      "message": "Merge \"Handle ISE when physical volume isn\u0027t mounted.\" into jb-mr1-dev"
    },
    {
      "commit": "edce6a797878792de2b0bde4360f3171b9e9d9d2",
      "tree": "4ff5110f64b5f48ec341bdb31330b02686936c5c",
      "parents": [
        "933a7546c857dba7704a15b7f7f7847934f14912"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Sep 30 15:52:02 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sun Sep 30 16:23:05 2012 -0700"
      },
      "message": "Remove clearUserActivityTimeout().\n\nThis function is not implemented and not needed.\n\nBug: 7165399\nChange-Id: Ib1c50fabad6292ccf670404ba70aeb1242c4614d\n"
    },
    {
      "commit": "2a30547af44536f6b0e2f7020ac1a435c72afc84",
      "tree": "51b7e3d767df429fed33315471b70ad6b0c277bb",
      "parents": [
        "2b58c1b503334ea20be9de3c2b5654855f9d4669",
        "fe37f8f51d90fc4c6230e54dcd1270df5fcc6be3"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Sep 30 15:52:46 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 30 15:52:47 2012 -0700"
      },
      "message": "Merge \"Work on issue #6949468: android.dpi.cts.ConfigurationScreenLayoutTest...\" into jb-mr1-dev"
    },
    {
      "commit": "fe37f8f51d90fc4c6230e54dcd1270df5fcc6be3",
      "tree": "26aff2996005a8c4069affd169d7157b11d399af",
      "parents": [
        "933a7546c857dba7704a15b7f7f7847934f14912"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Sep 30 12:24:33 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Sep 30 15:06:05 2012 -0700"
      },
      "message": "Work on issue #6949468: android.dpi.cts.ConfigurationScreenLayoutTest...\n\n...#testScreenLayout failures on JO\n\nThis doesn\u0027t actually fix it; I have concluded that the test is broken\n(the platform is correctly reporting that this is a NOT LONG device\nbecause in portrait once you account for the status bar and system\nbar our size is 880dp high and 600dp wide, which is not enough for us\nto be in the LONG config).\n\nHowever while working on this I noticed that the code for computing\nthe configuration of the external display was wrong.  I have fixed\nthat by putting this code for computing these parts of the configuration\nin a common place that both the window manager and external display\ncode can use.\n\nChange-Id: Ic6a84b955e9ec345a87f725203a29e4712dac0ad\n"
    },
    {
      "commit": "a2064df6ab77f71e9187da380cbe355c5eaf5a64",
      "tree": "7898e9a54e9f2430850e6d782f97ef443cc921ad",
      "parents": [
        "933a7546c857dba7704a15b7f7f7847934f14912"
      ],
      "author": {
        "name": "rich cannings",
        "email": "richc@google.com",
        "time": "Sun Sep 30 14:52:41 2012 -0700"
      },
      "committer": {
        "name": "rich cannings",
        "email": "richc@google.com",
        "time": "Sun Sep 30 14:52:41 2012 -0700"
      },
      "message": "Disable package verification in test harness\n\nBug: 7233608\nChange-Id: I521980728f5fb68b42a3906ff4fd25cd59dbbd7a\n"
    },
    {
      "commit": "32ee831eabc43001d756897e57f52f527bd9c431",
      "tree": "33680ec7fdd42423938ee988d035162afc0cb087",
      "parents": [
        "933a7546c857dba7704a15b7f7f7847934f14912"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Sep 30 13:21:31 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Sep 30 13:35:33 2012 -0700"
      },
      "message": "Handle ISE when physical volume isn\u0027t mounted.\n\nBug: 7238149\nChange-Id: I85081225a1a43a2c1b6f70b6275c6bbca0b3764e\n"
    },
    {
      "commit": "a6efc965cc6f42ab88c08e48463ea4604d29cc77",
      "tree": "7cdf664c2d3c04ca4e78e76eacfcd6f581dabd1f",
      "parents": [
        "ce75fef756bb0d1c433eabc7e49b64fdb7bd609d",
        "c36c49ee83123d6083c05a3e333ac43a13f664cd"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sun Sep 30 11:45:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 30 11:45:32 2012 -0700"
      },
      "message": "Merge \"Changing debug for b/7094175.\" into jb-mr1-dev"
    },
    {
      "commit": "c36c49ee83123d6083c05a3e333ac43a13f664cd",
      "tree": "fdd9c0e6fb68c2212de517305d7dc3dd3abfe592",
      "parents": [
        "a995b6e37f20b3e7eebfb37d8868c1bc14906204"
      ],
      "author": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sat Sep 29 16:02:43 2012 -0700"
      },
      "committer": {
        "name": "Craig Mautner",
        "email": "cmautner@google.com",
        "time": "Sat Sep 29 16:02:43 2012 -0700"
      },
      "message": "Changing debug for b/7094175.\n\nFixes bug 7094175 (but not really).\n\nChange-Id: Ice2abb93f479ea0bda931e9643710668c25aa285\n"
    },
    {
      "commit": "9ea8f390dbe8123415b9d64ce1a31683012958d9",
      "tree": "8b928e2b0c23db1531b16fb0f94419cf9ba8f007",
      "parents": [
        "a995b6e37f20b3e7eebfb37d8868c1bc14906204"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Sat Sep 29 10:46:13 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Sat Sep 29 10:46:16 2012 -0700"
      },
      "message": "Explore by touch enabled when screen magnification is on.\n\n1. A recently added check was preventing touch exploration being\n   disabled when the last touch exploring service was turned off.\n   As a consequence enabling explore by touch was initializing the\n   input filter with the magnification and the not disabled\n   screen magnification features.\nbug:7256223\n\nChange-Id: I9ed5457705d625805462e4d316b2c8a5af9aabca\n"
    },
    {
      "commit": "7f813202cb08a829b59e17be749ffee4a2f482b8",
      "tree": "ba01fd0aa6afe448c6d7304fb957810aa571317d",
      "parents": [
        "7c3586c576c7f7238274f1ffbc4577a57be0d1f1",
        "120664816a9bf325b618d8dd40febae2e3636ec8"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Sep 28 19:05:51 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 19:05:52 2012 -0700"
      },
      "message": "Merge \"Get rid of preventScreenOn().\" into jb-mr1-dev"
    },
    {
      "commit": "120664816a9bf325b618d8dd40febae2e3636ec8",
      "tree": "8a7b681cd87903f806b49504442d42a6921f1579",
      "parents": [
        "29dcd656dfa4c22855b12fb6ee7d6e2e4c4844c1"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Sep 28 18:21:36 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Sep 28 18:21:36 2012 -0700"
      },
      "message": "Get rid of preventScreenOn().\n\nBug: 7165399\nChange-Id: I1968265ecd74fff4d85efd2ca03b1983425ea518\n"
    },
    {
      "commit": "84215565dd5dda84db7fd35b8ae4ccb571465cd2",
      "tree": "b6b46922b7b469d7668760203e180aecf0119ded",
      "parents": [
        "c5211780ce60cd77d31b4df0f708bb760daddd5d",
        "be87e2f5885b28145a788fd31d1fb5ae88a71100"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 28 18:17:12 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 18:17:13 2012 -0700"
      },
      "message": "Merge \"Fix issue #7255954: API Review: rename Dream to DreamService\" into jb-mr1-dev"
    },
    {
      "commit": "be87e2f5885b28145a788fd31d1fb5ae88a71100",
      "tree": "e589ae24e57db702157f7fcd390335049eabf0ea",
      "parents": [
        "106a69271dd303baae1c428e269e1ec62994ff57"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 28 16:31:34 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 28 17:42:39 2012 -0700"
      },
      "message": "Fix issue #7255954: API Review: rename Dream to DreamService\n\nChange-Id: I89ecf2c3ec4fef09c0495aa68de11576f9cfd872\n"
    },
    {
      "commit": "c5211780ce60cd77d31b4df0f708bb760daddd5d",
      "tree": "2128d0cac6b31dccf62966bd6206d833a23f10ab",
      "parents": [
        "2c22bb85f2f6233eb3986f37b92386000433c7aa",
        "46824214bbe75d7e7e50cb15e3293c703d597a5f"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Sep 28 17:38:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 17:38:33 2012 -0700"
      },
      "message": "Merge \"Sending interaction end event at the end of a drag.\" into jb-mr1-dev"
    },
    {
      "commit": "46824214bbe75d7e7e50cb15e3293c703d597a5f",
      "tree": "8a0d665ebada50de0fe22cb41b662fc3e35637ae",
      "parents": [
        "925a659d824089d2977b44a6740f793ae65f809a"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Sep 28 16:51:53 2012 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Sep 28 17:04:14 2012 -0700"
      },
      "message": "Sending interaction end event at the end of a drag.\n\n1. In explore-by-touch when the user slides two fingers in the same\n   direction we consider it a drag gesture. We merge the pointers into\n   one and deliver a touch event. When one of the pointers goes up\n   we were transitioning into touch exploring state. This means that\n   were transitioning to another state in the middle of a gesture which\n   creates complications and leads for interaction end event not being\n   sent.\n\n   This change transitions out of dragging state when all pointers go up\n   - simple and all events are properly sent. Consequentially, staring a\n   drag the user has to lift all pointers to touch explore. Since usually\n   users either drags or touch explores this seems the simplest and\n   *least risky* fix.\n\nbug:7253731\n\nChange-Id: Ie8588fbe9b26cb81312bd7fd377c94732e41e3f8\n"
    },
    {
      "commit": "3ff8e1a80058e5557d13693d3223e1aa011c0038",
      "tree": "62d3c43fa2261c2aec17b76f08b7c8cc784c81fc",
      "parents": [
        "1d3527354396d3aa48b494fb409d680cce32dc8b",
        "d4ac8d7b3de27a9f0e4c6af2496ca71d794e42d1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 28 15:53:19 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 15:54:44 2012 -0700"
      },
      "message": "Merge \"Fix issue #7211769 and #7244492, thrash around on #7226656.\" into jb-mr1-dev"
    }
  ],
  "next": "925a659d824089d2977b44a6740f793ae65f809a"
}
