)]}'
{
  "log": [
    {
      "commit": "bfe319e06aa56c081d0d94d64a8181291d7f7388",
      "tree": "d0015a99d27fd84554b4b8757304f4b017f75d50",
      "parents": [
        "a7719af31290bea50d822b535b6a886ba7a88097"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 21 00:34:05 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 21 17:26:41 2009 -0700"
      },
      "message": "Turn animations on by default.\n\nAdd API to skip the animation for a particular start activity, so that\na latter better one can be used.\n\nFix Theme.NoDisplay to actually work.\n\nFiddle with various animations: don\u0027t do a different animation for task\nswitching, try a scale animation for switching in/out of the wallpaper.\n\nAdjust the animation duration so that at normal speed we have something\nmore like the slower animation option (so slow is now the default).\n\nChange-Id: Ieba9f3db0bd9a762a19b327a3ecccbc7b547893d\n"
    },
    {
      "commit": "d55e18acbe444b74dc9e71eff6ea2c3eaf25fbd0",
      "tree": "cdb9404d28612d9bf1d149063cfb515dd9f50161",
      "parents": [
        "f8d8b46a2c684d51cd661a9d479dd895420a90b2"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Mon Sep 21 10:12:59 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Mon Sep 21 10:19:17 2009 -0700"
      },
      "message": "Reset backup tracking in response to transport data-wipe notification\n\nWhen attempting a backup, the transport may inform us that the backend is in an\nuninitialized state.  This typically means that the device\u0027s data has been wiped\nafter a period [e.g. 90 days] of inactivity.  This means that we need to\nre-store all data subject to backup, and all of our incremental state tracking\non the device is now stale.\n\nIn response, we wipe all of our recorded backup state and restart the backup\npass on all participants.\n"
    },
    {
      "commit": "2eb239f92dbde5cd0fb6b8f665009878cbc63356",
      "tree": "a48f3963e379c75fced315f347bea1bfe8e1436b",
      "parents": [
        "5feb428f349a3d9f481ba98b8ce11d25e05f2eb3"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@google.com",
        "time": "Mon Sep 21 15:30:21 2009 +0400"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@google.com",
        "time": "Mon Sep 21 15:30:21 2009 +0400"
      },
      "message": "Fix NPE crash-loop when cpufreq not available in the kernel.\n"
    },
    {
      "commit": "e705ca961f6c4f76f5b403d8556ee38305553aa7",
      "tree": "e56b146243cf3b5c837f15b1b565045ae53621e0",
      "parents": [
        "718970bcf35252451ae15a326bd897b436ba93f3",
        "7c2bb66db77653c0a690962858cf105b0cb981d7"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 20 22:49:44 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 20 22:49:44 2009 -0400"
      },
      "message": "Merge change 26103 into eclair\n\n* changes:\n  Handle restore of the original naive wallpaper backup schema\n"
    },
    {
      "commit": "7c2bb66db77653c0a690962858cf105b0cb981d7",
      "tree": "e133b14ba516709f2942c849e9786c59518edf34",
      "parents": [
        "eb8aad7b2a99d3332a2fa6d8778356d634c47127"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Sun Sep 20 19:47:46 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Sun Sep 20 19:47:46 2009 -0700"
      },
      "message": "Handle restore of the original naive wallpaper backup schema\n"
    },
    {
      "commit": "e43530ab571e901f94361078c7c1f970a0bd27f2",
      "tree": "2a2c528dab1a81064c63bbc1adbe77ba39eb66ac",
      "parents": [
        "eb8aad7b2a99d3332a2fa6d8778356d634c47127"
      ],
      "author": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Fri Aug 21 13:11:37 2009 -0700"
      },
      "committer": {
        "name": "Amith Yamasani",
        "email": "yamasani@google.com",
        "time": "Sun Sep 20 16:03:50 2009 -0700"
      },
      "message": "Track CPU speed stepping to get more accurate CPU cost per app.\n\nMore CPU speed stepping happening with newer devices, so we need\nto qualify CPU time with the CPU speed, since power consumption\nvaries greatly by speed. Apps that peg the CPU should get a higher\npenaltly.\n\nAlso, fix for 2062930: NPE at VolumePreference.onKey()\n"
    },
    {
      "commit": "90967f4f0d5ba38ae7225788b111289516d1dda1",
      "tree": "a2379cfab758280839c9c5dc812e94f925fa9a08",
      "parents": [
        "0647b580aa7874311fc77b659e4f646750ddd74e"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Sun Sep 20 15:28:33 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Sun Sep 20 15:33:35 2009 -0700"
      },
      "message": "Fix up the first-backup-ever tracking\n\nThis changes a couple of bits of the Backup Manager\u0027s logic around\nfirst-backup-ever handling.  First, it uses the same \"what we\u0027ve ever backed up\"\nhandling as the rest of the system for purposes of instructing the backend to do\na wipe when the metadata is initialized for the device, instead of looking at\nthe presence of the @pm@ file.  Secondly, for the time being we won\u0027t be using\nthe saved state produced by agents\u0027 doRestore() logic.  Until the server is\nmigrating each restored package\u0027s data over to the new dataset, this was\nresulting in the client holding an agent state blob for which no data existed on\nthe server under this device\u0027s identity but which the device thought was fully\nup to date.\n"
    },
    {
      "commit": "25a747f5c47f25c1a18961b03507f309b84924fe",
      "tree": "d0ffbf3ab00bcc821e572054dccdf8e0848dcf0f",
      "parents": [
        "d163f4babe101b89aaf322c34d3bafeae237f7da"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Sun Sep 20 12:43:58 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Sun Sep 20 12:43:58 2009 -0700"
      },
      "message": "Add an \u0027init everything\u0027 operation to the first backup pass\n\nIBackupTransport.performBackup() now takes a flag \"wipeAllFirst\", which if set\nwill result in the entire restore set for the current device/account being wiped\nclean prior to the storage of the provided package.  This ensures that a device\non which backup has just been enabled will not confront potentially-stale\ninformation, nor will the restore set potentially contain mismatched data from\norphaned packages.\n\nThe Backup Manager has also been revised to pass this flag when first backing up\nits master metadata block (and never pass it thereafter unless something has\ncaused the backup state tracking to be erased, e.g. the user has opted out of\nbackup and then later re-enabled it).\n"
    },
    {
      "commit": "4492bcd8b0437b1200e93c001ca75d9fa8c4ad30",
      "tree": "d41df1de6fb8dd27c7b742be49288f20674ff90c",
      "parents": [
        "b4c0b3d8ccbadca9d4e8a0e5c50a4549f2c84bf6",
        "a99f461b98df6b88c6b0fae83b41077dde9a2228"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 20 10:48:09 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 20 10:48:09 2009 -0400"
      },
      "message": "Merge change 25938 into eclair\n\n* changes:\n  Don\u0027t require WAKE_LOCK permission to enable wifi\n"
    },
    {
      "commit": "b8155068ef855147d86465817be2660a5212a6bb",
      "tree": "0316cd303f96c178eba60681bffe9fdeabf0cfee",
      "parents": [
        "2b1cfef19efb11d283a08042d37a326141c28429",
        "200b30bba53412919d2b5b4b85c02727b87f51df"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 20 00:27:28 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 20 00:27:28 2009 -0400"
      },
      "message": "Merge change 25944 into eclair\n\n* changes:\n  Wake the screen if the proximity wakelock is released while the proximity sensor is active.\n"
    },
    {
      "commit": "200b30bba53412919d2b5b4b85c02727b87f51df",
      "tree": "860fb249ab78682871fa1afc77edbc372bd5bba7",
      "parents": [
        "27272bfac63fab28aa3899243dfe79f226445b3b"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Sep 20 00:23:59 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Sep 20 00:23:59 2009 -0400"
      },
      "message": "Wake the screen if the proximity wakelock is released while the proximity sensor is active.\n\nThis fixes a problem that resulted in the screen staying off indefinitely if the prox sensor\nis active at the beginning of a bluetooth call and could result in the screen staying off\nin other similar circumstances.\n\nChange-Id: Icfa0046d3179f9bb2247e7a3c1f9ff073312667a\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "a99f461b98df6b88c6b0fae83b41077dde9a2228",
      "tree": "6a72c849d7ee0bb11e7a967aa664e502b92cf2d4",
      "parents": [
        "9a24bc563f28d8489c7178b93ff05f02e8b8a893"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Sat Sep 19 18:14:32 2009 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Sat Sep 19 18:14:32 2009 -0700"
      },
      "message": "Don\u0027t require WAKE_LOCK permission to enable wifi\n\nThe process for starting wifi was using a wakelock around a message-pass and this was causing\nan exception for meer mortals (who don\u0027t have WAKE_LOCK permission).\n\nbug: 1750535\n"
    },
    {
      "commit": "1f6c7e6a2b99f99fdfbe438118241e60b4ded745",
      "tree": "f5f7b3e64926760f7494c0f7284c447bcdd03070",
      "parents": [
        "e69335f8b4f4195e57613fe6b83e18e23e0c2760"
      ],
      "author": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Sat Sep 19 18:06:52 2009 -0700"
      },
      "committer": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Sat Sep 19 18:06:52 2009 -0700"
      },
      "message": "Change the broadcast intent for dock state changes from a sticky broadcast to\na sticky ordered broadcast. This is so individual apps can override the default\nbehavior and stop the related dock app from launching.\n"
    },
    {
      "commit": "edd9316ca9b3b24d54e8a2468927da7e813098fc",
      "tree": "3b79a0c7b48e23623480abebbaa9fc9708175006",
      "parents": [
        "efa199f016985b0a9d0471e42c803ee9f7941f0e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Sep 19 14:03:05 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Sep 19 14:03:05 2009 -0700"
      },
      "message": "Add better APIs for the battery status, and other cleanup.\n\nAlso add new configs for keeping screen on while docked, which will\nbe used elsewhere.\n\nChange-Id: Ifaa1118f14fd850ac809895f9a5c9e8c413259b8\n"
    },
    {
      "commit": "65c23872066d39521e98fd4b000069c562c57076",
      "tree": "3fdfd799c77d31303eb3ab1a76511ecf1180cdd2",
      "parents": [
        "de71cb3b6f3a7484402e2288ddfaad3ea3821f59"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 18 17:47:02 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 18 17:47:02 2009 -0700"
      },
      "message": "Fix transformation on windows.\n\nThe window offset was being applied incorrectly in relation to the\nanimation transform.\n\nChange-Id: Ia578129f48cf6c57ae795af862d2b6ce5d447994\n"
    },
    {
      "commit": "90d8a6a449dc12fea2b56b557c243e33746d914a",
      "tree": "4984d93853bdfe28c63da7f776be2f255e264101",
      "parents": [
        "b18b0956afbe0730ced1c5b95c0071dba447765e",
        "83861e74c3c89337b0cc43fb38daedfef19e6edf"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 18 18:25:33 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 18 18:25:33 2009 -0400"
      },
      "message": "Merge change 25628 into eclair\n\n* changes:\n  Inefficient but correct fix for 2122381: call finishBackup after every performBackup\n"
    },
    {
      "commit": "c3a3b399a9d7707b7f3c4108e0e31a1b664a6f22",
      "tree": "87e9a8dbd09e3ac0a70bd32c7a22c698e38f73d4",
      "parents": [
        "66fdd84e28a0619b7981ca00f2f2cd7681dbc82d",
        "a233943cb1b064155d001556c573140ed333149e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 18 15:07:28 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 18 15:07:28 2009 -0400"
      },
      "message": "Merge change 25752 into eclair\n\n* changes:\n  Add a Gservices setting to controll the app error reporting feature.\n"
    },
    {
      "commit": "6136b7ef169a65a02a6660be636fcec370c68145",
      "tree": "b72181348bd6e5f0c9e74126795d6e69a74dd2f2",
      "parents": [
        "da05aa828853964dccd185f6a7f5ca72cc0d3573"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 18 01:53:49 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 18 09:27:22 2009 -0700"
      },
      "message": "Show the live wallpaper on the lock screen.\n\nThis also takes care of the problem of system dialogs like the\ncrash dialog causing the status bar to dim behind the lock screen.\n\nOn the down side, the fade transition from the lock screen is\nnow gone, and I\u0027m not sure how likely it is for it to return.\n\nChange-Id: I7f9e6d0f3510a1fdbbe6ad252d986bd85a16475d\n"
    },
    {
      "commit": "a233943cb1b064155d001556c573140ed333149e",
      "tree": "d87cc2d6c19cf8da6b6438361391e419923eae74",
      "parents": [
        "0050ee36398c3ab6e5f1ee0038609aff8cf4f0e9"
      ],
      "author": {
        "name": "Jacek Surazski",
        "email": "jaceks@google.com",
        "time": "Fri Sep 18 15:01:26 2009 +0200"
      },
      "committer": {
        "name": "Jacek Surazski",
        "email": "jaceks@google.com",
        "time": "Fri Sep 18 15:01:26 2009 +0200"
      },
      "message": "Add a Gservices setting to controll the app error reporting feature.\n"
    },
    {
      "commit": "fa82f22f1d8c4c828bdf9b670006be4f4fec772e",
      "tree": "586dbd1bf9cbefe26cfecd6cf853b78eb6a4fb64",
      "parents": [
        "9b64ef133c1eb24c8d00aa7e46ec86c544af5fe2"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 17 15:14:12 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 17 18:01:35 2009 -0700"
      },
      "message": "Fix issue #2093608: Calendar widget takes a few seconds to launch\n\nAvert your eyes!\n\nThe key change here is that RemoteViews can now call a Context API to\nstart its pending intent, which inside of the activity manager we can\nuse to determine to cancel the timeout delay for external entities\nto disrupt the home screen.\n\nChange-Id: If097cf7478cbed7a3c04a304050bd7fd5703d197\n"
    },
    {
      "commit": "c7d2530d52e9c188392b118caea64673dbbad45c",
      "tree": "fb5771194ab1b4fa32f2e386a5b99e874feb88b9",
      "parents": [
        "0d51d63595014c4237010118aaac891e657c2d23"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Sep 17 14:58:16 2009 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Sep 17 16:34:39 2009 -0700"
      },
      "message": "Report NO_CONNECTIVITY when failover net unavail\n\nFix ConnectivityService so that it reports connection status correctly.\n\nbug: 2128595\n"
    },
    {
      "commit": "0d51d63595014c4237010118aaac891e657c2d23",
      "tree": "d6a9baba1e93e20a8a79a340eb4fe7c3fad4191b",
      "parents": [
        "96352104fbb172d91f957551c772988e02d79f33",
        "3d7e855df3e8556b311ef3900990047554aaa0e5"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 17 19:32:34 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 17 19:32:34 2009 -0400"
      },
      "message": "Merge change 25626 into eclair\n\n* changes:\n  Check if rename of current settings file was successful before persisting new changes to settings.\n"
    },
    {
      "commit": "3d7e855df3e8556b311ef3900990047554aaa0e5",
      "tree": "21e294b6c263f661be5f2174f5314e6b605494dd",
      "parents": [
        "7805933738de33b1961bd03553237a86d90792dd"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Sep 17 15:38:20 2009 -0700"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Sep 17 16:30:14 2009 -0700"
      },
      "message": "Check if rename of current settings file was successful before persisting\nnew changes to settings.\n"
    },
    {
      "commit": "83861e74c3c89337b0cc43fb38daedfef19e6edf",
      "tree": "1f0d67d70131a46c4cfd51a2ae91e3e22e51c0b2",
      "parents": [
        "6817946fd0a009a554f6c0aae1b6c608ebd531c5"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Sep 17 16:17:55 2009 -0700"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Sep 17 16:19:02 2009 -0700"
      },
      "message": "Inefficient but correct fix for 2122381: call finishBackup after every performBackup\n"
    },
    {
      "commit": "4ac137cad9fb9aa5b69776b4ae3c8f906cc57511",
      "tree": "471d973d87105f492bab15d9edc32233dd79bc0c",
      "parents": [
        "b9c107a362d85deda61da3cfac594cc1de7b6294",
        "4f21c4cf077cfee5b35a56703618115614bc40f2"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 17 15:11:22 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 17 15:11:22 2009 -0400"
      },
      "message": "Merge change 25526 into eclair\n\n* changes:\n  Add API to retrieve memory used by running processes.\n"
    },
    {
      "commit": "c2912a662d984e2f23187fa31e7e71122d9472d9",
      "tree": "7f037891c5c46216e185be62e307f8f242d9c454",
      "parents": [
        "dfe095a045f132dd9c75da4286b87532d9a973a0",
        "c17f07aa0468424e3475d7761313b761372d1860"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 17 14:39:43 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 17 14:39:43 2009 -0400"
      },
      "message": "Merge change 25490 into eclair\n\n* changes:\n  Revert \"Don\u0027t activate keyguard if screen is turned off while proximity sensor is active.\"\n"
    },
    {
      "commit": "4f21c4cf077cfee5b35a56703618115614bc40f2",
      "tree": "4f3ef99f737c731521ab5f8e81fba2e18e8facba",
      "parents": [
        "7805933738de33b1961bd03553237a86d90792dd"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 17 10:24:05 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 17 11:13:45 2009 -0700"
      },
      "message": "Add API to retrieve memory used by running processes.\n\nChange-Id: I9c1935c2ef3c78bd67ec4dfd811a1caaab4514c3\n"
    },
    {
      "commit": "2d2078aa1d6e31063f565a20b717f3b8908fff02",
      "tree": "84a03e58a63ff6f2f4e79c512081e0f57b6b1fd3",
      "parents": [
        "94ef49918240cedaa559ad7f7752d20cf4d1668b"
      ],
      "author": {
        "name": "Yusuf T. Mobile",
        "email": "yusuf.saib@T-Mobile.com",
        "time": "Tue Jul 14 15:46:26 2009 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 17 13:56:36 2009 -0400"
      },
      "message": "LocationManagerService: Take fix accuracy into account in proximity zone logic.\n\nFixes http://code.google.com/p/android/issues/detail?id\u003d2002\n\nChange-Id: If2b0665c556269279c5813f2254f9624a556bd92\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "c17f07aa0468424e3475d7761313b761372d1860",
      "tree": "558bd3ca293a19fa96ec215c62d48758a1d1fa0b",
      "parents": [
        "c7aef5d0fda58a1685e5584b34e1b80ba016f017"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 17 11:47:56 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 17 11:58:01 2009 -0400"
      },
      "message": "Revert \"Don\u0027t activate keyguard if screen is turned off while proximity sensor is active.\"\n\nThis reverts commit ddfe879b783ad72603308e28e8f683454464684e.\n"
    },
    {
      "commit": "b8eb1cb79b2912b91a1b0198ba3e61776af07a79",
      "tree": "3e3699cf7bd719a57ee3bb2284d0d8269317cb6c",
      "parents": [
        "cfc7f1aaefa60f43e27969690a939f664ff1c678"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Wed Sep 16 10:57:21 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Wed Sep 16 17:58:45 2009 -0700"
      },
      "message": "Be sure to include shared lib path info when dealing with agents\n\nIn particular, this ensures that on the client side the full classpath is known\nand used by the class loader during execution of the agent.\n"
    },
    {
      "commit": "248b188860534c50147592fc9b486512bfe75c78",
      "tree": "fcb954ed93176b0dc939913fa374c9eea7e15030",
      "parents": [
        "32c687c20d6ac3080b396787147892dc85126b33"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 16 16:46:44 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 16 16:46:44 2009 -0700"
      },
      "message": "Fix #1827299: Google login screen to re-enter password is not viewable\n\nThis was a problem with not hiding the starting window when it got\ntransfered to an activity whose window (instead of token) animates\nwhen displayed.\n\nChange-Id: I9eb58faa6e27d53144687952a715fc083a5c5842\n"
    },
    {
      "commit": "9092ab4d458ad60b459d5fad52368bde5d25f665",
      "tree": "3c96a0fe1bc09770934b18f15a4bc293e5d06572",
      "parents": [
        "764916d01b779ccc8064946c6ba2962fe063ed86"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Sep 16 13:01:32 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Sep 16 14:43:21 2009 -0400"
      },
      "message": "Add support for launching activities when attaching to a car or desk dock.\n\nCategories CATEGORY_CAR_DOCK and CATEGORY_DESK_DOCK can be assigned to\nactivities to make them launchable on docked events.\nThis is a better mechanism than listening for ACTION_DOCK_EVENT with a broadcast receiver.\n\nChange-Id: Ic5f3ab3555ce02ca922bc31ebba41978cefe8bda\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "2a66eee3ef88bdc7167e5e5d0471c1e8b2e68fc6",
      "tree": "df5e9510d58893dd7490a1cad5251f0e7bb75d86",
      "parents": [
        "d3ba4811d48e01e85b4faa57da159471022e6daa",
        "ee5ece4a4db46458207b93bce2d4c01459236376"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 16 12:36:36 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 16 12:36:36 2009 -0400"
      },
      "message": "Merge change 25157 into eclair\n\n* changes:\n  Remove deadlock in PackageManager when installing or upgrading packages. PM first creates a temporary file from the input package uri before installing it. if the package uri points to a content uri, the content provider  has to be retrieved via the ActivityManager which could cause deadlocks with the package manager locks being held. Clean up by always copying or creating temporary files before acquiring these locks. Fix issue when restoring a failed upgrade for third party apps.\n"
    },
    {
      "commit": "4337476a6669ce52549ce4a60f5e4d07f8e3033f",
      "tree": "c2644a037e4d69e18436dcc72e80bc28026948aa",
      "parents": [
        "85628188e74c015060e7f315560e659e53294775"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Sep 16 14:28:42 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Sep 16 14:28:42 2009 +0800"
      },
      "message": "Fix the missing part for reading enterprise fields in wifi configuration\n\n+ refactor the enterprise fields.\n"
    },
    {
      "commit": "93e462b79d6896da10e15e74c5aec6beb098dddf",
      "tree": "1f5f178b544a49ba5a80e74269b083775ff97854",
      "parents": [
        "6cf05f1c3d6f4585573c8663a62848a09f6a08ff"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 15 22:50:40 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 15 22:50:40 2009 -0700"
      },
      "message": "Implement issue #1780928: Need support hiding nav keys.\n\nThis implements support for devices whose hardware can hide\ntheir navigation keys.  It works much like the existing keyboardHidden\nconfiguration, and for compatibility uses the same configuration\nchange bit.\n\nAlso add FLAG_TURN_ON_SCREEN for windows, which has the system\ncause the screen to be turned on when the window is displayed.\nGreat fun when used with FLAG_SHOW_WHEN_LOCKED!\n\nChange-Id: I0b867f19af85cfd8786a14cea194b34f7bdd9b7a\n"
    },
    {
      "commit": "6ee7b04d270824214fca0296d0386e0c3d733cdf",
      "tree": "4c2217018e8b346d47019f6597169485f7494395",
      "parents": [
        "dd8f6186775f69a8fef6213bcdc23be633d1ab6f",
        "9767e41d92bd6f4cf16111b3f911cef78c8b01eb"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 15 22:06:24 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 15 22:06:24 2009 -0400"
      },
      "message": "Merge change 25192 into eclair\n\n* changes:\n  Some improvements for wallpaper configuration.\n"
    },
    {
      "commit": "9767e41d92bd6f4cf16111b3f911cef78c8b01eb",
      "tree": "115b324793c1bcc89164ee249711fe9a2475eb9b",
      "parents": [
        "5862b673d412e596f3fa419c00bd0ba16bf6c094"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 15 18:45:34 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 15 18:59:31 2009 -0700"
      },
      "message": "Some improvements for wallpaper configuration.\n\nThis introduces a new activity that you can derive from to implement\na wall paper configuration activity.  This is supposed to select\na theme based on whether it is being run to configure a real wallpaper\nor a preview, but this is going to be more difficult to do than I\nthought. :(\n\nAlso fix a problem in the white theme where the list view\u0027s background\nwas being set to white, so it wouldn\u0027t work on a transparent bg.\n\nChange-Id: I26d5a8695a3c878a1664eb09900eded57eaff990\n"
    },
    {
      "commit": "cc9f52f94349ce34489a5a2c803271e53961286b",
      "tree": "14514be967bd4455ce7b1d386b3bdf2d5294e53a",
      "parents": [
        "d6b10fb86229ed0e904138ec4604066ea85059db"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 15 18:23:59 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 15 18:23:59 2009 -0700"
      },
      "message": "make the window-shade use an opaque surface if possible\n"
    },
    {
      "commit": "ee5ece4a4db46458207b93bce2d4c01459236376",
      "tree": "ad5dd9223c4f798acabeb1de6115adb69c2837dc",
      "parents": [
        "1cd403eaac24e0e84619dea07e2d1d60e58e1fd2"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Sep 15 13:41:47 2009 -0700"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Sep 15 16:42:20 2009 -0700"
      },
      "message": "Remove deadlock in PackageManager when installing or upgrading packages.\nPM first creates a temporary file from the input package uri before installing it.\nif the package uri points to a content uri, the content provider  has to be retrieved via the ActivityManager\nwhich could cause deadlocks with the package manager locks being held.\nClean up by always copying or creating temporary files before acquiring these locks.\nFix issue when restoring a failed upgrade for third party apps.\n"
    },
    {
      "commit": "237a29923a05663a2195bf93b392768dbaf31ebf",
      "tree": "37a21b8413a9c6be00843a56fd0bb63b1cd05e85",
      "parents": [
        "f02c0740d3039977149773604a229c9f76c8121d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 15 14:42:16 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 15 15:47:09 2009 -0400"
      },
      "message": "Move backlight brightness from HardwareService to PowerManager\n\nto prevent apps from changing the hardware behind its back.\nFixes b/2041941 Lock screen flashes the screen very bright before dimming\n\nChange-Id: Ice757f7ae87902bdfb3634471cf44f020ebfaae4\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "f02c0740d3039977149773604a229c9f76c8121d",
      "tree": "0576332b741a0cae55a6fa95c7007e59c0a87c6f",
      "parents": [
        "f73f91c5b1f66bbe4b3ca59b743a62ad5a65853f"
      ],
      "author": {
        "name": "Ken Schultz",
        "email": "kschultz@motorola.com",
        "time": "Thu Sep 10 18:37:37 2009 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 15 10:58:05 2009 -0400"
      },
      "message": "DockObserver wakes the display when broadcasting a change\n\t- normal display timeout applies after wake\n\nSigned-off-by: Ken Schultz \u003ckschultz@motorola.com\u003e\n"
    },
    {
      "commit": "d20ea369b26cb40ee6122dd819ce9ef947489146",
      "tree": "da91bc5a91b9056841164567e85439649400fccf",
      "parents": [
        "951764b97010dfa073126f52b43ea1bdf1b35998"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 15 00:13:38 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 15 02:29:28 2009 -0400"
      },
      "message": "PowerManagerService: Use 5 cm threshold for the proximity sensor.\n\nThis eliminates the assumption that the proximity sensor will always return\nzero distance when it is active.\n\nChange-Id: I6245b074e4c42aeae3a181e6a5087554517046d2\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "951764b97010dfa073126f52b43ea1bdf1b35998",
      "tree": "a4385faacb89cb30250d2a8ce0da611d1eefddc2",
      "parents": [
        "151921a62485f2141ad1316076c196ef00e1b421"
      ],
      "author": {
        "name": "Dan Murphy",
        "email": "D.Murphy@motorola.com",
        "time": "Thu Aug 27 14:59:03 2009 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 15 02:29:15 2009 -0400"
      },
      "message": "Add automatic lighting control framework\n\nAdd changes to have the ability to turn on and off the\nautomatic light sensing for the device.  This is fully configurable\nand is by default not  present.  Vendors should override the ALS setting\nto enable the automatic lighting controls.\n\nThese changes will add a check box to the Brightness settings menu to give control\nto the user to allow the device\u0027s display lighting to be controlled via the slide bar\nor the auto lighting system.\n\nIf the user selects auto then the slide bar will become invisible.  Manual mode\nwill present the slide bar to the user.\n\nChange-Id: I146a6d75b99b08c9b839218ce6b85adf21f9fd73\nSigned-off-by: Dan Murphy \u003cD.Murphy@motorola.com\u003e\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "83fe3f559249451706957b1a5f660b2b8272f114",
      "tree": "1693c610256fbe8fea20da55c21458d65ced98ef",
      "parents": [
        "c2974809373697147cbe5754835cc871fb93aef1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Sep 12 23:38:30 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 14 17:53:52 2009 -0700"
      },
      "message": "Last big work on #1991910: Make swipes work with capacitive keys\n\nThis takes care of allowing us to cancel the back button.  The\nback button is a bear because it is strewn all over the place --\neverywhere you can close something, there is some code looking\nfor the back button that now needs to deal with being canceled.\n\nThe main things changed are activity (of course), dialog,\ninput method, search dialog.  There are some other misc places\nin the framework (and some I missed here that I will get in a\nsecond pass).\n\nTo facility all of this, the key dispatching APIs now provide\na lot more support for dealing with looking for cancelled keys,\nand incidentally also provide an actual API for catching long\nkey presses.  This also helped clean up the code in PhoneWindow\nwhere it deals with all of the combinations of key pressed and\nreleases.  (And also allows people to override\nActivity.onKeyLongPress() to provide a different long press\naction for a standard key like search.)\n\nAnd while I was doing this, I reworked how we detect long\npresses by having this be part of the key event delivered by\nthe window manager.  This should greatly reduce (hopefully\noutright eliminate) the problems with long presses being\nmis-detected when an application is being slow.\n\nChange-Id: Ia19066b8d588d573df3eee6d96e1c90fdc19f57d\n"
    },
    {
      "commit": "d023f9a9a90705410250cd86bc6446c738423a99",
      "tree": "7ed7ccf3847d48af6e692813cdcc5e5838a53c8b",
      "parents": [
        "aa931bcb0acb93ce760f4e5d27153fb1c6d33a10",
        "19382ac1a4e4e7c23a1346d299368763f149de9c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 14 18:45:42 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 14 18:45:42 2009 -0400"
      },
      "message": "Merge change 24829 into eclair\n\n* changes:\n  Some optizations to wallpaper drawing/scrolling.\n"
    },
    {
      "commit": "19382ac1a4e4e7c23a1346d299368763f149de9c",
      "tree": "9165f1b94f1bd5e9966729b1047d03a733570867",
      "parents": [
        "714ec1360cde8b1cbf6e6b8572256e4100f11560"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 11 21:13:37 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 14 15:29:44 2009 -0700"
      },
      "message": "Some optizations to wallpaper drawing/scrolling.\n\nFirst, fix some issues with the final wallpaper bitmap\nwe use: ensure it is always 16bpp, and make sure dithering\nof its bitmap is turned off.   We take of dithering\nwhen loading, to make sure we don\u0027t use it when drawing.\n\nAlso add new APIs to return the wallpaper with the equivalent\nof Launcher\u0027s old FastBitmapDrawable.  As doing this, also load\nthe default wallpaper the same way as custom ones, taking care to\nresize it as needed at load time.\n\nFinally implement a mechanism for the window manager to wait\nfor the wallpaper to redraw at its new position before returning\nfrom the application\u0027s call to change the offset.  This ensures\nthat the wallpaper better tracks the application.  Note that there\nis a timeout in this wait that is relatively short, and if it\nexpires we will run for a while without waiting.\n\nChange-Id: Ife449437746da85958bd447e0a6cf3d2223b398c\n"
    },
    {
      "commit": "a625b38cb3a6a6b3a890369b7bbbed7c028cb120",
      "tree": "551318458c10d95a665eb079ee4a714c5448ace8",
      "parents": [
        "91e2d8651fe38a921b37a8bf8b3148c572cf9430"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sat Sep 12 17:36:03 2009 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Sep 14 15:08:37 2009 -0400"
      },
      "message": "PowerManagerService: Fix keyboard backlight support:\n\nTurn off keyboard backlight immediately when keyboard is closed.\nChanging keyboard visibility state signals user activity except in the case\nwhere the keyboard is closed and the screen is already off.\n\nFixes bugs b/1351141 and b/1319625\n\nChange-Id: If4bf2c1dd8e0c2bc08196e443b6103a6041f27e1\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "7c9bf7caa2936e8b76598be9fffea980d81c61d3",
      "tree": "d474c5edac25a48c986f913aea99e66fa4a89951",
      "parents": [
        "d68781ace179e19b70120411baf307104683fa4b"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Sep 11 17:23:35 2009 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Sep 11 17:23:35 2009 -0700"
      },
      "message": "Don\u0027t init wifiChannels until after supplicant up\n\nThe supplicant can take up to 15 seconds to start - setting the number of wifi channels\nimmediately after requested wifi start often will fail.\n\nChanged to set the number of channels when the supplicant is reported as alive.\n\nbug:2083601\n"
    },
    {
      "commit": "005b228cdfb369d9b3b325884c0337ba5968bf8c",
      "tree": "d1ee610898b65acd5c472014d395748b9d950150",
      "parents": [
        "9b6911cb85a9c9a0fef145f91c9999da5a75ce21"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Sep 10 10:21:56 2009 -0700"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Sep 10 18:52:21 2009 -0700"
      },
      "message": "API_CHANGE: Cleanup, javadoc and unhide more Bluetooth API.\n\nThis is a large batch, and covers:\n\n-- Bluetooth Device Discovery --\nBluetoothAdapter.ACTION_DISCOVERY_STARTED\nBluetoothAdapter.ACTION_DISCOVERY_FINISHED\nBluetoothAdapter.startDiscovery()\nBluetoothAdapter.cancelDiscovery()\nBluetoothAdapter.isDiscovering()\n\n-- Bluetooth bonding (pairing) --\nBluetoothAdapter.getBondedDevices()\nBluetoothDevice.ACTION_BOND_STATE_CHANGED\nBluetoothDevice.EXTRA_BOND_STATE\nBluetoothDevice.EXTRA_PREVIOUS_BOND_STATE\nBluetoothDevice.BOND_NONE\nBluetoothDevice.BOND_BONDING\nBluetoothDevice.BOND_BONDED\nBluetoothDevice.getBondState()\nBluetoothDevice.createBond()\nBluetoothDevice.cancelBondProcess()\nBluetoothDevice.removeBond()\n\n-- BluetoothClass --\nBluetoothDevice.ACTION_CLASS_CHANGED\nBluetoothDevice.EXTRA_CLASS\nBluetoothDevice.getBluetoothClass()\nBluetoothClass.Service.*\nBluetoothClass.Device.Major.*\nBluetoothClass.Device.*\nBluetoothClass.getDeviceClass()\nBluetoothClass.getMajorDeviceClass()\nBluetoothClass.hasService()\n\n-- Misc BluetoothDevice --\nBluetoothDevice.ACTION_ACL_CONNECTED\nBluetoothDevice.ACTION_ACL_DISCONNECTED_REQUESTED\nBluetoothDevice.ACTION_ACL_DISCONNECTED\nBluetoothDevice.ACTION_DISCOVERED\nBluetoothDevice.ACTION_NAME_CHANGED\nBluetoothDevice.EXTRA_DEVICE\nBluetoothDevice.EXTRA_NAME\nBluetoothDevice.EXTRA_RSSI\n\n-- Misc BluetoothAdapter --\nBluetoothAdapter.ACTION_LOCAL_NAME_CHANGED\nBluetoothAdapter.EXTRA_LOCAL_NAME\nBluetoothAdapter.checkBluetoothAddress()\n\nI deprecated BluetoothIntent and moved each intent into the class it relates\nto.\n\nChange-Id: I877b1280428ab46278b2bc25668bb44cda22dc36\n"
    },
    {
      "commit": "f3f720031932500d92090b0093393651e7a713e0",
      "tree": "96db274a3d3af960d13e0e6f4f3c09349011cb8b",
      "parents": [
        "ebebf9c36c0112d99cb2e11953febdff8ba5ff23",
        "8206ff30c23c76851bebc8d72a65e65b0f7f9a29"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 10 21:10:58 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 10 21:10:58 2009 -0400"
      },
      "message": "Merge change 24588 into eclair\n\n* changes:\n  Fix for multi-apn MMS access.\n"
    },
    {
      "commit": "8206ff30c23c76851bebc8d72a65e65b0f7f9a29",
      "tree": "82c437af24595ae95bc313124cb9df09108b1041",
      "parents": [
        "bcbcaa7edd32ba67c6290d79f7e7821c4b5b39ac"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Sep 10 15:06:20 2009 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Sep 10 18:01:01 2009 -0700"
      },
      "message": "Fix for multi-apn MMS access.\n\nMark cellular variants with the same availability, regardless of which are currently in use.\nAvailability just means the radio is enabled and sees the network, but has no guarantees that\nwe could connect to an APN if requested.\n\nFix the requestRouteToHost logic to support apn switches without WIFI.\n\nbug:2093841\n"
    },
    {
      "commit": "5a8a1151e267b29978f219f9569fdfc5e74cc210",
      "tree": "82e9098547c12283278fb001a48788133a5285c1",
      "parents": [
        "bcbcaa7edd32ba67c6290d79f7e7821c4b5b39ac"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Thu Sep 10 16:08:47 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Thu Sep 10 16:08:47 2009 -0700"
      },
      "message": "Try not to crash the system server because of corrupt restore data\n\nWhen we\u0027re about to allocate an array based on the restore data for purposes of\nunflattening a signature block, don\u0027t automatically assume that it\u0027s valid.  If\nit\u0027s corrupt [and we\u0027ve seen this in practice] we can wind up trying to allocate\nan array with 1.8 million objects, and throw an OutOfMemoryError, bringing down\nthe system.\n\nThis change arbitrarily decides that no package should have more than 20\nsignatures in its block, and aborts the restore if the metadata is thus revealed\nto be corrupt.\n"
    },
    {
      "commit": "bcbcaa7edd32ba67c6290d79f7e7821c4b5b39ac",
      "tree": "7840b8a005d8261f864b8404e5cf5941cf6caf80",
      "parents": [
        "e1fd02400d69c059db2cc6299c893eba4096cc1d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 10 10:54:46 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 10 12:08:50 2009 -0700"
      },
      "message": "Wallpapers, animations, pending intent.\n\nSome more tweaks and fixes to wallpapers.  Make sure wallpapers are\ntold they are not visible when the screen is off.  Add some new animations\nfor transitions across tasks, and fiddle with many of the existing\nanimations.  Clean up the relationship between translucent activities\nand animations.  Add new API to start a PendingIntent from an\nactivity.\n\nChange-Id: Ie0bf45fe44081bb6982c75361257a55d9cd9d863\n"
    },
    {
      "commit": "a7ef2698a6c9182ffd41574495a18da1ffc2be2c",
      "tree": "a3ead0110190c2a6c18d82df7127e1ac92222233",
      "parents": [
        "f63e3f3cc8c61bc9eeda980f314795412eb03b79"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 10 11:15:26 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 10 11:19:57 2009 -0400"
      },
      "message": "MountService: Use correct icon for SD card notifications.\n\nChange-Id: Ia15847c48fce7957f1a376e173d39137b661d51c\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "b24e11baac589fe16426f2d243b460ab84991c7b",
      "tree": "fff4842c3fe188414743e077294984a1f0389a7c",
      "parents": [
        "de893f550301a60274e87aa8168225e7a7a42184"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Sep 08 17:40:43 2009 -0700"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Sep 09 10:52:18 2009 -0700"
      },
      "message": "API_CHANGE\n\nDeprecate BluetoothError.java.\n\nI spent a lot of time experimenting with a class BluetoothError to enumerate\nthe many error codes returned by the Bluetooth API. But at the end of the day\nthey were never used. The vast majority of method calls only really need a\ntrue/false error value, and often not even that.\n\nMethods which do need more detailed error enumeration (for example, bonding\nfailures) can have there own enumerated error codes. But there is no need\nfor a common set of error codes.\n\nAlso change the IPC failed warnings in BluetoothA2dp to Log.e. These indicate\na very serious error.\n\nIntroduce BluetoothAdapter.ERROR and BluetoothDevice.ERROR as helper sentinel\nvalues.\n"
    },
    {
      "commit": "de893f550301a60274e87aa8168225e7a7a42184",
      "tree": "c8458bccf747e7c8035c349d42b13616fc1d5ac8",
      "parents": [
        "100f08613392c225b8dff3f1e1d586f981884e29"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Tue Sep 08 13:15:33 2009 -0700"
      },
      "committer": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Wed Sep 09 10:52:02 2009 -0700"
      },
      "message": "API_CHANGE\n\nAnother round of Bluetooth API clean up, javadoc\u0027ing and unhide\u0027ing.\n\n-- Symbols for getting/setting bluetooth state --\nBluetoothAdapter.ACTION_STATE_CHANGED\nBluetoothAdapter.EXTRA_STATE\nBluetoothAdapter.EXTRA_PREVIOUS_STATE\nBluetoothAdapter.STATE_OFF\nBluetoothAdapter.STATE_TURNING_ON\nBluetoothAdapter.STATE_ON\nBluetoothAdapter.STATE_TURNING_OFF\nBluetoothAdapter.isEnabled()\nBluetoothAdapter.getState()\nBluetoothAdapter.enable()\nBluetoothAdapter.disable()\n\n-- Symbols for getting/setting scan mode --\nBluetoothAdapter.ACTION_SCAN_MODE_CHANGED\nBluetoothAdapter.EXTRA_SCAN_MODE\nBluetoothAdapter.EXTRA_PREVIOUS_SCAN_MODE\nBluetoothAdapter.SCAN_MODE_NONE\nBluetoothAdapter.SCAN_MODE_CONNECTABLE\nBluetoothAdapter.SCAN_MODE_DISCOVERABLE\nBluetoothAdapter.getScanMode()\nBluetoothAdapter.setScanMode()\n\n-- Symbols for getting address/names --\nBluetoothAdapter.getAddress()\nBluetoothAdapter.getName()\nBluetoothAdapter.setName()\n"
    },
    {
      "commit": "f9e0e6bd5e070d4c213e0237fa2fb8d4bb558bcb",
      "tree": "4cc1de3d637b0a74ed225452bbd5257bcebb8813",
      "parents": [
        "377c5c15f8fea14b575b6b0f14ac7fd3a4d44b3a"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue Sep 08 16:24:36 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue Sep 08 16:24:36 2009 -0400"
      },
      "message": "Fix b/2105945 - Windowshade not closed when device locked.\n"
    },
    {
      "commit": "eb034652c2037a47ebfd99779e8383bb8bb528af",
      "tree": "0d4f6d9b752d6be70083cdf51085872e52610c3b",
      "parents": [
        "9c93007bcdf684cd15fd9db0cf1eae238dd38191"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 07 00:49:58 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 07 22:48:02 2009 -0700"
      },
      "message": "Implement all of the infrastructure for configuring wallpapers.\n\nActually being able to configure a wallpaper relies on additional\nwork in the launcher and wallpapers that will be in another change.\nAlso note that this breaks all existing wallpapers, since they now\nneed to include a meta-data item about themselves.  This also\nwill be fixed in another change.\n\nChange-Id: I97d2c2bd07237abc32f92b9147c32530a2f73c71\n"
    },
    {
      "commit": "c916c04495292c86051a2c31e90cca26a9bd99c1",
      "tree": "b5a2198c570efcd9ca9174e82b0eab4150bb5436",
      "parents": [
        "510469fbe1ad44c3c6255afb236f51502b6960cc",
        "0586a1b77a788a119166a37fccd909bf9ed65f23"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 07 10:16:20 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 07 10:16:20 2009 -0700"
      },
      "message": "Merge change 24099 into eclair\n\n* changes:\n  Fix issue #2095422: Some fades from opaque to transparent don\u0027t work\n"
    },
    {
      "commit": "510469fbe1ad44c3c6255afb236f51502b6960cc",
      "tree": "02da9bd09191b3522d4a65ae95294e23ccbf9bbc",
      "parents": [
        "96f8613d95122a491a44f755f06845cc2c13e81e",
        "a1e989b5755ea171ebe6875994d9174deee4399a"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 07 10:14:44 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 07 10:14:44 2009 -0700"
      },
      "message": "Merge change 24098 into eclair\n\n* changes:\n  Fix bug where we wouldn\u0027t release remote provider references.\n"
    },
    {
      "commit": "0586a1b77a788a119166a37fccd909bf9ed65f23",
      "tree": "274272fd870b2cde2215b086138f557622cef8f2",
      "parents": [
        "88e625795943dea84b2e7c32f37e71303143b728"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Sep 06 21:08:27 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 07 01:01:15 2009 -0700"
      },
      "message": "Fix issue #2095422: Some fades from opaque to transparent don\u0027t work\n\nViewRoot was using Surface.clear(), which has different behavior\nin different processes -- in the system process it would kill the\nsurface, causing all windows in that process to immediately disappear\ninstead of animating away.\n\nThis change makes Surface.release() public and uses that instead.  It\nalso renames Surface.clear() to Surface.destroy().\n\nAlso fixed some issues in the window manager that were causing the\nwallpaper to not get immediately resized when the orientation changes\nand its target window is removed and re-added.\n\nChange-Id: I2a992e365cf5747511f0bf1193db32dc2525b218\n"
    },
    {
      "commit": "a1e989b5755ea171ebe6875994d9174deee4399a",
      "tree": "faf1e8694283ece60a86ca2c61aa8c4b78483d7b",
      "parents": [
        "6e4b7d66998b9ec9255767f6070a2f94d83944a5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 01 19:54:29 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Sep 06 21:15:41 2009 -0700"
      },
      "message": "Fix bug where we wouldn\u0027t release remote provider references.\n\nThe check for whether the release call is coming from another process was\nvery broken, and just happened to work by chance.  It also never worked for\napps that had code running in two different processes, with one process\nusing a provider in another of its processes.  Also a little cleanup and\ndebugging logs for provider management, and removal of that increasingly\nannoying log about services being stopped.\n\nChange-Id: Ibc298e674db7d35c4b6499fb32e30929a141b670\n"
    },
    {
      "commit": "e540833fdff4d58e37c9ba859388e24e2945ed45",
      "tree": "d1ec39dba3be85a50a1ac8556ab6d68b49d927b6",
      "parents": [
        "9cc1817d46d8092865d8f1e7a6391dcae197a26a"
      ],
      "author": {
        "name": "Bob Lee",
        "email": "crazybob@crazybob.org",
        "time": "Fri Sep 04 18:31:17 2009 -0700"
      },
      "committer": {
        "name": "Bob Lee",
        "email": "crazybob@crazybob.org",
        "time": "Sat Sep 05 11:53:18 2009 -0700"
      },
      "message": "Integrated the profiler into the framework. We run it all the time if the persist.sampling_profiler\nsystem property is set. Saves snapshots to the SD card.\n"
    },
    {
      "commit": "25994b4306a256b88d79159106834c9f114e6943",
      "tree": "bd6189443ff082f07761f5ace7ad013eba66da86",
      "parents": [
        "107039f94888fce212e0965b74971727d2b01b82"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 04 14:21:19 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 04 14:28:42 2009 -0700"
      },
      "message": "Wallpapers: new transitions, hiding when not visible, other cleanup.\n\nThis is work on the transitions with wallpapers.  There are now new\nanimations specifically for leaving the wallpaper and returning to\nit, which allow us to have a consistent animation when entering home\nand returning to it.  I also renamed the existing animations across\nwallpapers, and cleaned up some junk in the various interpolators.\n\nThis also now hides the wallpaper surface when it is not visible,\nto get rid of the wallpaper flickers people complained about albeit\nin a somewhat brutal way. :)  (Though really returning us to the\nprevious behavior with the same previous bugs and name back to them\nnot being very visible, yay!)  There is are also some bug fixes\nhere and there about managing the wallpaper visibility that this\nchange revealed.\n\nChange-Id: I913990a9a81651728122ed2e1101b75ed2c36fcb\n"
    },
    {
      "commit": "445f43081e207ee704a5152a5333054d7b4e13a4",
      "tree": "84adb97b95e2b72f1dc354f98094f6eb275d51bf",
      "parents": [
        "7111904802934e1fa4cf68c445f13c34c30c9cdb"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Sep 04 11:06:46 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Sep 04 11:06:46 2009 -0400"
      },
      "message": "NotificationManagerService: Only blink red battery low LED when not charging.\n\nChange-Id: Ie5836ae99d4ca19d9d062e7c78c8b40cd8d6c29d\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "dd9b82c283815747b75fe4434c65e4b6c9c9b54f",
      "tree": "43b783b4c76db57f1e526d85e92ae3309079b043",
      "parents": [
        "19d6f7ac27448b59c936878756bad49f623a6a99"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 03 00:18:47 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 03 14:11:02 2009 -0700"
      },
      "message": "Add better service reporting.\n\nThis will be used elsewhere.\n\nChange-Id: Id561fa7fed5eb65446312cb697813483903d33a6\n"
    },
    {
      "commit": "d42685d5de1dbd6d75b48d42418f370adaa4daef",
      "tree": "f175b669f7f5e888fc9454478d52c8df23c50868",
      "parents": [
        "1a3af62bfb3583ac2fece18523927587b6b6a277"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 03 09:25:22 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Sep 03 13:47:54 2009 -0400"
      },
      "message": "Add support for running apps with uid/gid AID_LOG by specifying android.uid.log in the manifest\n\nThis is needed to allow the BugReportService to start the dumpstate service.\n\nChange-Id: I12cab23767c919592da102c654b6b80416717661\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "e3c393d3d14dab5b1eab37d2c52b7283df253f7f",
      "tree": "63e7b8becc207bc0aff95dcc2f9a53a39a03efed",
      "parents": [
        "e2c9187b993a652fa8fdad516461ab66caa96cb4",
        "cc27870098a5b6105d6007a18bebaec8940db2d5"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 02 23:11:16 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 02 23:11:16 2009 -0700"
      },
      "message": "Merge change 23787 into eclair\n\n* changes:\n  Fix issue #2097313: Latin IME crashes first use\n"
    },
    {
      "commit": "cc27870098a5b6105d6007a18bebaec8940db2d5",
      "tree": "bf1867f2775722823a68982c284ebc7ca4781281",
      "parents": [
        "fb16e5ccdb230a11cbbbfd17d323db7b88395c2f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 02 23:07:23 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 02 23:08:45 2009 -0700"
      },
      "message": "Fix issue #2097313: Latin IME crashes first use\n\nChange-Id: I50c48b66aff5aff42e71058591d20775eba73fed\n"
    },
    {
      "commit": "bdd52b264af8f562dd368d40b66771c88d45127f",
      "tree": "bb059c0e6b0032be61f8154f7fa49865503724f0",
      "parents": [
        "fb16e5ccdb230a11cbbbfd17d323db7b88395c2f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 02 21:46:19 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 02 21:54:18 2009 -0700"
      },
      "message": "Fix issue #2097060: Screen all messed up when setup wizard finished\n\nThe new code to rebuild the window list was missing some app tokens.\nAlso there were a few other smaller bugs floating around.\n\nChange-Id: I7734917af0b76ee4aa304e6a5321401d87640f89\n"
    },
    {
      "commit": "a34f1ad7c3a68d971e6332aa2fb1c16d083920b3",
      "tree": "1bfa09439ef3130cb5dacde84fc8dce44dac1a70",
      "parents": [
        "75f1d43b64cbf4b68ad62919a0c58907933ccd59"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 02 13:26:28 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 02 17:39:54 2009 -0700"
      },
      "message": "Fiddle system boot ordering.\n\nThis makes the system a little more careful to not start third party\ncode until it is ready to.\n\nAlso fix a little bug in SyncManager that would cause it to crash\nduring boot if sync was in a failure state.\n\nChange-Id: Ib2d287d8441d155d393fe740a5f98690895fd358\n"
    },
    {
      "commit": "a8f6018d6c2d28313f9550fa8fcb39c2f607e09c",
      "tree": "a64e1d3e4b63e2792ab93ee69d913b415925d814",
      "parents": [
        "14de0880dd7b716f39b822917e874ca5e579ff37"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 01 19:01:50 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 02 17:20:25 2009 -0700"
      },
      "message": "Work on issue #2079167: Flickering issue across multiple UI\n\nThis addresses a few parts of the bug:\n\n- There was a small issue in the window manager where we could show a window\n  too early before the transition animation starts, which was introduced\n  by the recent wallpaper work.  This was the cause of the flicker when\n  starting the dialer for the first time.\n\n- There was a much larger problem that has existing forever where moving\n  an application token to the front or back was not synchronized with the\n  application animation transaction.  This was the cause of the flicker\n  when hanging up (now that the in-call screen moves to the back instead\n  of closing and we always have a wallpaper visible).  The approach to\n  solving this is to have the window manager go ahead and move the app\n  tokens (it must in order to keep in sync with the activity manager), but\n  to delay the actual window movement: perform the movement to front when\n  the animation starts, and to back when it ends.  Actually, when the\n  animation ends, we just go and completely rebuild the window list to\n  ensure it is correct, because there can be ways people can add windows\n  while in this intermediate state where they could end up at the wrong\n  place once we do the delayed movement to the front or back.  And it is\n  simply reasuring to know that every time we finish a full app transition,\n  we re-evaluate the world and put everything in its proper place.\n\nAlso included in this change are a few little tweaks to the input system,\nto perform better logging, and completely ignore input devices that do not\nhave any of our input classes.  There is also a little cleanup of evaluating\nconfiguration changes to not do more work than needed when an input\ndevices appears or disappears, and to only log a config change message when\nthe config is truly changing.\n\nChange-Id: Ifb2db77f8867435121722a6abeb946ec7c3ea9d3\n"
    },
    {
      "commit": "f52e9f703305a03e76f59ad41094c5bc8636d31c",
      "tree": "5f7ba99e6646224a88cfaf7c268863e9e8a978df",
      "parents": [
        "983b837ea1effc462ecd9c14620b19178f98fd92",
        "e1b4437dba7c33566af55d4e5d27d35729678684"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 02 15:35:01 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 02 15:35:01 2009 -0700"
      },
      "message": "am e1b4437d: Revert \"Fix content provider\"\n\nMerge commit \u0027e1b4437dba7c33566af55d4e5d27d35729678684\u0027 into eclair\n\n* commit \u0027e1b4437dba7c33566af55d4e5d27d35729678684\u0027:\n  Revert \"Fix content provider\"\n"
    },
    {
      "commit": "0214e9475fa3b9aa00a784b5152bf4f1939c941e",
      "tree": "20b77f6204cfb82d8cde013472053ca191dadd20",
      "parents": [
        "bb54f93ff66f382dc706b9fff508d386e046fdc2"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Wed Sep 02 11:03:18 2009 -0700"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Wed Sep 02 12:32:32 2009 -0700"
      },
      "message": "    For intent ACTION_PACKAGE_CHANGED, there could be a lot of broadcasts related to enabling/disabling\n    components by apps which could result in thrashing on the PackageManager. For apps that\n    do not want to be restarted when such a broadcast is sent, we can just aggregate these broadcasts and\n    handle them at one go.\n    Changes include:\n    New structure to hold pending broadcasts by class name. If a component is enabled or disabled frequently\n    aggregate component enabled/disabled settings in this structure in a 10 second window and then\n    send out the accumulated list of broadcasts to the ActivityManager.\n    A new Handler implementation handles this message\n    Add new attribute name EXTRA_CHANGED_COMPONENT_NAME in broadcast intent Intent.ACTION_PACKAGE_CHANGED for\n    additional information for apps like Launcher.\n    Rename a couple of parameters, the names were too jarring.\n"
    },
    {
      "commit": "5e1ab335e6e8fbfa19c64d53880a22f472010953",
      "tree": "4da429b3833ff29256d23f9e2e7f1b3a41715b65",
      "parents": [
        "c937b5ce4ff2f39fd9c60f718f98550a932b62f0"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Tue Sep 01 20:32:49 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Tue Sep 01 20:59:36 2009 -0700"
      },
      "message": "Expand apps\u0027 control over the settings restore process\n\nApplications can now specify two more aspects of the restore process:  whether\nthey need to run with their own custom Application subclass rather than being\nlaunched in the usual restricted mode during restore, and whether it\u0027s okay for\nthe backup manager to kill the app process once restore has completed.  The new\nmanifest attributes for these are, respectively, android:restoreNeedsApplication\nand android:killAfterRestore.\n\nIf unspecified in the manifest, restoreNeedsApplication is false, and\nkillAfterRestore is true.\n\nIn order to support kill-after-restore cleanly, this change also adds a new\nsystem-process-only interface to the Activity Manager, which will schedule a\n\"commit suicide\" event on the target app\u0027s main thread looper.\n\nThe framework backup agents have been given the appropriate new backup\nattributes as well.\n"
    },
    {
      "commit": "e1b4437dba7c33566af55d4e5d27d35729678684",
      "tree": "b19d6696816a2892cea093dab422becd50e9a21f",
      "parents": [
        "c804efe278fa33555e6e836504a467cb14505eb3"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 01 19:21:08 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 01 19:21:08 2009 -0700"
      },
      "message": "Revert \"Fix content provider\"\n\nArgh!\n\nThis reverts commit da706900f45dca82d89f090e4e52fa5d1772c495.\n"
    },
    {
      "commit": "ff0dc82c1cfe780e6f4c87d1d34de6dc3b741a2d",
      "tree": "f88ea0a73df05a08f1de2b61d3b1e39b31a44ad3",
      "parents": [
        "cc22efb52e8b5851b7d53099f7f814bfae266124",
        "6a98f8d93e4ddd407baad8d9b7481a892001d281"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 01 19:11:44 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 01 19:11:44 2009 -0700"
      },
      "message": "am 6a98f8d9: Merge change 23499 into donut\n\nMerge commit \u00276a98f8d93e4ddd407baad8d9b7481a892001d281\u0027 into eclair\n\n* commit \u00276a98f8d93e4ddd407baad8d9b7481a892001d281\u0027:\n  Fix content provider\n"
    },
    {
      "commit": "da706900f45dca82d89f090e4e52fa5d1772c495",
      "tree": "bad5a815faa00061a779e7ad4f7f208228837182",
      "parents": [
        "56205fea879543a50bb797016832416a8b48cabb"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 01 13:57:11 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 01 13:57:11 2009 -0700"
      },
      "message": "Fix content provider\n"
    },
    {
      "commit": "3025ef332c29e255388f74b2afefe05f64bce07c",
      "tree": "b7982d9ebe8a578b5b439c564c014a9af8be952f",
      "parents": [
        "d9942b5cb1662638bb6fb57c12a06976e3c34651"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 31 21:31:47 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 01 11:16:25 2009 -0700"
      },
      "message": "Various infrastructure to support a running services UI.\n\nSome of this is temporary (in particular the two approaches for getting\nprocess memory, one working but horrible, the other not working but\npreferred) until I figure out the best way to do it.\n\nChange-Id: I8c8f25062d481fcea22a47d459b083d2fd8a5040\n"
    },
    {
      "commit": "9aa1fa2d3612d1d8ffeae6552d65669f4ca194d9",
      "tree": "21545e2ec4c53e65147b3f4129afd16b4e3fe89d",
      "parents": [
        "3a76fd627945c1df59aa0318867401e0e53da022"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 01 07:51:15 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 01 07:51:15 2009 -0400"
      },
      "message": "LocationManagerService: Remove caching of last known locations to flash.\n\nChange-Id: Ibbab20a7c48823fb74c2e175824f55248f25bf8a\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "3a76fd627945c1df59aa0318867401e0e53da022",
      "tree": "a0ab42bcd122a4f61ab9aa688b8d10edf34f72f4",
      "parents": [
        "2bd4326a4694ea3055dc758c05533c905ad78291"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 01 07:26:56 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Sep 01 07:26:56 2009 -0400"
      },
      "message": "LocationManagerService: Add null pointer check and remove useless finalize() method.\n\nChange-Id: I4017d38a1bea7564a85575486a7c2aef569dfe5d\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "b0a054048329c31948c2f5dbcc11b6f99e454177",
      "tree": "3cb43f480f4148e6ea88c771171e16fb8cb63390",
      "parents": [
        "2d93a11663d1d872bc7e9d6512a445fa84148583",
        "2d6b67d37f3164e53b311650aab94faabf46ef67"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Aug 30 13:33:57 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Aug 30 13:33:57 2009 -0700"
      },
      "message": "Merge change 23223 into eclair\n\n* changes:\n  SensorService: call close_data_source when we have no more sensor clients.\n"
    },
    {
      "commit": "2d93a11663d1d872bc7e9d6512a445fa84148583",
      "tree": "761954e7c20897ed8693c95317d1fa919aab22ea",
      "parents": [
        "f810d1a88b2d3166064c4a36d8cc9314f02094e0",
        "d0e82cec71442485d9cc952e5e16165d9d98b16e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Aug 30 12:02:07 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Aug 30 12:02:07 2009 -0700"
      },
      "message": "Merge change 23187 into eclair\n\n* changes:\n  Do not send dock state changed broadcasts until the system has finished booting.\n"
    },
    {
      "commit": "2d6b67d37f3164e53b311650aab94faabf46ef67",
      "tree": "0e0f301a837c0eb6b870b80860b6a4ba7c63a629",
      "parents": [
        "56f67d21459ad3f136c73c8932904d4a495989c0"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Aug 28 18:08:27 2009 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Sun Aug 30 14:25:56 2009 -0400"
      },
      "message": "SensorService: call close_data_source when we have no more sensor clients.\n\nChange-Id: I94accda4571c3f2cf6f8a5b6801e37c30c027fe1\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "284ac93aa30642fda87d5c40263a1263677c21cd",
      "tree": "2ff4c8d7a896dceb1fdb3fd14189ea67a2101b76",
      "parents": [
        "cfff8f2291881acb3b3400cd2a0f644c451c2f53"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Aug 28 10:34:25 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Aug 30 10:53:53 2009 -0700"
      },
      "message": "More work on wallpapers: animations, lifecycle, scaling, etc.\n\nYet more work on improving the behavior of wallpapers.  This fixes a few\nproblems in their lifecycle (corresponding change in the picker also\nrequired for this), makes their animations better for hardware that supports\nalpha fades, adds animations for the wallpapers themselves, eliminates\nfixed size wallpapers, and adjusts the API for retrieving a wallpaper\nbitmap to take care of scaling the raw wallpaper image to match the current\ndesired width and height.\n\nChange-Id: If1c0aaceba4ea4e175dcb7a8416ca7ddbb9bfa6f\n"
    },
    {
      "commit": "d0e82cec71442485d9cc952e5e16165d9d98b16e",
      "tree": "787c3cee546ba165013a0a2004ddac3efc46d3ef",
      "parents": [
        "9e6842caa8334f78744dee77d476ac6eec5b7540"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 16:19:07 2009 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Fri Aug 28 13:36:14 2009 -0700"
      },
      "message": "Do not send dock state changed broadcasts until the system has finished booting.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "49237345d83e62fdb9eb8d50b13ad086636a04fa",
      "tree": "224ca2d134177a09184c1440f4fceac13a10b627",
      "parents": [
        "5511c66955d96019ee62ac334d73e4d2bcda178b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 20:08:01 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 21:51:00 2009 -0700"
      },
      "message": "Add platform infrastructure for features.\n\nThis introduces a new mechanism to define features associated with\na platform, query the current device for the available features,\nand enforce that apps requiring features that aren\u0027t available can\u0027t\nbe installed.\n\nAlso now allows uses-library to specify that a library is optional,\nso the lack of such a library will not prevent the app from being\ninstalled (but if it does exist it will be correctly linked into\nthe app).\n\nChange-Id: I5b369b46cfa0b3d37c9e08fd14ef1098a978e67b\n"
    },
    {
      "commit": "d6ac7c73e17f0ce0cc3b1290760c4f67cafcdec5",
      "tree": "f33455300b85807f583ea6045f6cb9c9a6d613bf",
      "parents": [
        "5352e237cad365f39c87aaeda3822c891c7ca474",
        "6c3f571a1498f513dd53a67313a79bff877d3160"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 15:10:27 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 15:10:27 2009 -0700"
      },
      "message": "Merge change 22975 into eclair\n\n* changes:\n  Fix issue #2069662: The wallpaper doesn\u0027t move along with the home screen\n"
    },
    {
      "commit": "6391830d103ccb19465c69660065c22c2711dcfd",
      "tree": "78a1bd1636ce3ecfa506507c27516f2beffc8084",
      "parents": [
        "18ad9f657bda79069233c0b8e1476888ffd894d4",
        "ddfe879b783ad72603308e28e8f683454464684e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 14:31:06 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 14:31:06 2009 -0700"
      },
      "message": "Merge change 22958 into eclair\n\n* changes:\n  Don\u0027t activate keyguard if screen is turned off while proximity sensor is active.\n"
    },
    {
      "commit": "18ad9f657bda79069233c0b8e1476888ffd894d4",
      "tree": "4d1ae78e5918d2e9dd570a204c90555bec66a677",
      "parents": [
        "22d1f9fb23015471de6af1a70e40fb5c82ecb665"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 14:01:23 2009 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 14:22:27 2009 -0700"
      },
      "message": "Only allow system code to call LocationManager.sendNiResponse()\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "6c3f571a1498f513dd53a67313a79bff877d3160",
      "tree": "c904079d5c263bc662fde8b2b02dd2638e274361",
      "parents": [
        "1e0f7627389a18d7a2ea74d7a5fb2c251de56a56"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 25 18:42:59 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 14:18:51 2009 -0700"
      },
      "message": "Fix issue #2069662: The wallpaper doesn\u0027t move along with the home screen\n\nThe wallpaper target was being lost when an activity was restarted.\n\nChange-Id: Ib05622591c9bb2f01bb8f2c0a0a8e77fe657ae88\n"
    },
    {
      "commit": "22d1f9fb23015471de6af1a70e40fb5c82ecb665",
      "tree": "0952ea04b5b0059aa48812f76e26599946e605c2",
      "parents": [
        "0409cde3601131caf14c88d132c65d74774bbd79"
      ],
      "author": {
        "name": "Danke Xie",
        "email": "dankex@qualcomm.com",
        "time": "Tue Aug 18 18:28:45 2009 -0400"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 14:18:30 2009 -0700"
      },
      "message": "gps: Network initiated SUPL\n\nInitial contribution from Qualcomm.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "ddfe879b783ad72603308e28e8f683454464684e",
      "tree": "4011fd9c435bea64f3dd5dc440980fc63a0a4475",
      "parents": [
        "36fc302560fbc6dff3099860356d290d1653371c"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 13:27:08 2009 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 13:27:08 2009 -0700"
      },
      "message": "Don\u0027t activate keyguard if screen is turned off while proximity sensor is active.\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "aa52f9a7c63d4fdeba0fa16fe0aba3b47fef3738",
      "tree": "d94c366008683c1fe066b75758b856f3ebe145ad",
      "parents": [
        "b3b1ccfe0e8d9ea6582646a6cedb7f4669e41352"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 25 16:01:15 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 13:10:09 2009 -0700"
      },
      "message": "Make SINGLE_TOP work with CLEAR_TOP.\n\nChange-Id: Ie98b491dc4b1a2ae5e8fc8452c6410597bc9676b\n"
    },
    {
      "commit": "aa0a3b09e7a2947130e9a98c459a63349ef2d339",
      "tree": "defb7804e825556510af393e461afba2e72cb0e8",
      "parents": [
        "bc86bda499b8600cc3dc900bba0e6421304c26dd",
        "6ccd2aff3eb4450c6f1021637d18e4e5d9346bf0"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 12:27:51 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 12:27:51 2009 -0700"
      },
      "message": "Merge change 22944 into eclair\n\n* changes:\n  resolved conflicts for merge of 301b97ac to eclair\n"
    },
    {
      "commit": "6ccd2aff3eb4450c6f1021637d18e4e5d9346bf0",
      "tree": "692dfb78939b511e815e41783036c0d7d4028063",
      "parents": [
        "4d5b4225e492f3de543efa195204f38d03a6721a",
        "301b97ac19caf677c481cdf86ed27b2dd80a81b3"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 12:26:44 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 12:26:44 2009 -0700"
      },
      "message": "resolved conflicts for merge of 301b97ac to eclair\n\nChange-Id: I0fb70cbe0a52006ad14f43a02c30b72aad457c48\n"
    },
    {
      "commit": "25b9cec8de75bd38c4868515e611cd69aff524ca",
      "tree": "c57d0020980222d4cd5a66212267cce979856be4",
      "parents": [
        "e0daf8043fd4a9be995ff737d217b7b3514d4519",
        "36fc302560fbc6dff3099860356d290d1653371c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 11:26:44 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 11:26:44 2009 -0700"
      },
      "message": "Merge change 22692 into eclair\n\n* changes:\n  PowerManagerService: Disallow all user activity when in proximity wake lock.\n"
    },
    {
      "commit": "36fc302560fbc6dff3099860356d290d1653371c",
      "tree": "c8bc73126cd0f81e3cc4d8566cf8f745f3c0b013",
      "parents": [
        "09b0ca1ceefde02b9ed50dc4dd12774ba569143f"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Aug 25 16:49:06 2009 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 11:07:49 2009 -0700"
      },
      "message": "PowerManagerService: Disallow all user activity when in proximity wake lock.\n\nFixes b/2076756\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "49c22570bb8717bb678dbd8bae6692bb585370fc",
      "tree": "90ff896ec36a96ed66658e0a79df3e936da67791",
      "parents": [
        "09b0ca1ceefde02b9ed50dc4dd12774ba569143f",
        "7566c1debebe072af76411e11d96810fd1409482"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Thu Aug 27 09:25:36 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 27 09:25:36 2009 -0700"
      },
      "message": "am 7566c1de: LocationManager: Fix problem replacing GPS and network providers with a mock provider.\n\nMerge commit \u00277566c1debebe072af76411e11d96810fd1409482\u0027 into eclair\n\n* commit \u00277566c1debebe072af76411e11d96810fd1409482\u0027:\n  LocationManager: Fix problem replacing GPS and network providers with a mock provider.\n"
    },
    {
      "commit": "301b97ac19caf677c481cdf86ed27b2dd80a81b3",
      "tree": "bd983f150775ec7af5a5375f4eed937bb6860721",
      "parents": [
        "7566c1debebe072af76411e11d96810fd1409482",
        "fd12af4e768fec852c4c5dfee3b9bd7403b4b347"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 01:14:00 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 27 01:14:00 2009 -0700"
      },
      "message": "Merge change 22883 into donut\n\n* changes:\n  Various tweaks to try to improve low memory behavior.\n"
    }
  ],
  "next": "fd12af4e768fec852c4c5dfee3b9bd7403b4b347"
}
