)]}'
{
  "log": [
    {
      "commit": "2b2eadd0f89eab97d3d84f38982fafebd984789d",
      "tree": "5489cd1aea7dc442847cb8a9c026b4bda29c15e8",
      "parents": [
        "31dc8f701fb14e185bf1c1b35d68bd7d1a42a54a"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Mar 19 10:24:06 2014 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Mar 19 10:24:06 2014 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: Ic7a9bdd8f8da2462638e3abf361ef938d1fb2a9e\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "38bae539f8208be542474eb05ab635cc9c0f3bdd",
      "tree": "d8b10476f9ba69142cf8bc868b10b993b483b255",
      "parents": [
        "3732f8d078b69b76461a50ce7a5fa8c9a1a61a42"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Mon Dec 09 13:55:11 2013 -0800"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Mon Dec 09 22:41:12 2013 +0000"
      },
      "message": "Remove deprecated locales\n\nBug:11340849\nChange-Id: Ib99486303927a6bce308b113d70f8e5b5bce4a13\n"
    },
    {
      "commit": "d5a9fb067cfbc999ad26fd3806ec0902a6ee22dc",
      "tree": "407ad9d60ae007e1eb748f810067fdeda17f1d75",
      "parents": [
        "fc85860f370a8b532d7a830b36287b41f88e9e24",
        "874dfd733a2fd2224f155ee2c4cf5e3065676402"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 11 20:51:48 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 11 20:51:48 2013 -0800"
      },
      "message": "am 874dfd73: am 34163e82: am 55d12486: Merge \"Give storage provider access to secondary devices.\" into klp-dev\n\n* commit \u0027874dfd733a2fd2224f155ee2c4cf5e3065676402\u0027:\n  Give storage provider access to secondary devices.\n"
    },
    {
      "commit": "874dfd733a2fd2224f155ee2c4cf5e3065676402",
      "tree": "617533d412704b508a2017a764edafc7d900aa59",
      "parents": [
        "dcb83484644fe212345b6f5f1689480fa4a624b8",
        "34163e8259db8661afbb267e3b899b64f429bcb7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 11 15:22:37 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 11 15:22:37 2013 -0800"
      },
      "message": "am 34163e82: am 55d12486: Merge \"Give storage provider access to secondary devices.\" into klp-dev\n\n* commit \u002734163e8259db8661afbb267e3b899b64f429bcb7\u0027:\n  Give storage provider access to secondary devices.\n"
    },
    {
      "commit": "7e1f5410ff246b1ec7b216cc737ec3eedf526b4f",
      "tree": "803250d1f006d6b64cd6e44678977c5ef6bd4f9e",
      "parents": [
        "3dbea35f7eaa6d5f94601a48ebb3be18223d4604"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 11 14:36:33 2013 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Nov 11 14:36:33 2013 -0800"
      },
      "message": "Give storage provider access to secondary devices.\n\nBug: 11411460\nChange-Id: I3827ed5b859a68c60742a27917459e8df2c276bb\n"
    },
    {
      "commit": "91868276294a7541beb8c2162d565a6b42f4dca9",
      "tree": "2092b353aeafff2be08f433da51ef66fe420c4b6",
      "parents": [
        "e14002b30b4978d7c684a12d439379218250585e",
        "66d079bf25ff3f99dbba91e02d392c936238170b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 29 12:01:44 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 29 12:01:44 2013 -0700"
      },
      "message": "am 66d079bf: am f7eb3398: am 19949b9d: Merge \"Guard against missing document columns.\" into klp-dev\n\n* commit \u002766d079bf25ff3f99dbba91e02d392c936238170b\u0027:\n  Guard against missing document columns.\n"
    },
    {
      "commit": "66d079bf25ff3f99dbba91e02d392c936238170b",
      "tree": "edfb2a8f107de1b2abc74f7f58b9937458d3f78d",
      "parents": [
        "b752c1b559a277675f90489eff4f7e7f9d03cc2f",
        "f7eb3398f16f4d76d2a342cf571040360d5a6df6"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 29 11:58:21 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 29 11:58:21 2013 -0700"
      },
      "message": "am f7eb3398: am 19949b9d: Merge \"Guard against missing document columns.\" into klp-dev\n\n* commit \u0027f7eb3398f16f4d76d2a342cf571040360d5a6df6\u0027:\n  Guard against missing document columns.\n"
    },
    {
      "commit": "5d321d472d9983db52610393e6506e2b2d2da4bf",
      "tree": "b6c64ec9638c2b44c840d5f95118863cb3313ec7",
      "parents": [
        "ac5d3827409dff757531347c5232bb34ea727274"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 29 11:48:26 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 29 11:48:30 2013 -0700"
      },
      "message": "Guard against missing document columns.\n\nWhen filtering and sorting, guard against missing columns to avoid\ncrashing entire app.\n\nBug: 11377065\nChange-Id: I04f035c918d743bcc84592f05e3ef9ad0ebfadce\n"
    },
    {
      "commit": "2e05b6777a2b7eb53a632ef444fe84349605433f",
      "tree": "6bb393a7b25a97b583c4f297ab9810d86be42a05",
      "parents": [
        "c847c883af1c9df6b4f4533f9adb36acef13eac4",
        "e643e33736e14a59f1f9a8acb4d630b2ea671a31"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 28 10:00:09 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 28 10:00:09 2013 -0700"
      },
      "message": "am e643e337: am 99dcb2eb: am 10e509dc: Merge \"Use inotify to update DocumentsUI.\" into klp-dev\n\n* commit \u0027e643e33736e14a59f1f9a8acb4d630b2ea671a31\u0027:\n  Use inotify to update DocumentsUI.\n"
    },
    {
      "commit": "e643e33736e14a59f1f9a8acb4d630b2ea671a31",
      "tree": "c49128d55abe5befd51309eaea5e7d4aa725fb7d",
      "parents": [
        "f65dd213900603116c7b064bfdfb57662f7682c3",
        "99dcb2eb3578c3d14658b3850cb3e32608e173b1"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 28 09:57:20 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 28 09:57:20 2013 -0700"
      },
      "message": "am 99dcb2eb: am 10e509dc: Merge \"Use inotify to update DocumentsUI.\" into klp-dev\n\n* commit \u002799dcb2eb3578c3d14658b3850cb3e32608e173b1\u0027:\n  Use inotify to update DocumentsUI.\n"
    },
    {
      "commit": "8b5f453a82e4e09933f31630ad7f94e4d81df1cd",
      "tree": "daa1063e0184698e310511ee6871fa46056f4d5d",
      "parents": [
        "b251e0794a6e95a7d48122ad8905cb4d662f0ae8",
        "de9b66fee1bdbc914c287fb9a2aa832dc2d3e6f9"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 25 18:22:22 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 25 18:22:22 2013 -0700"
      },
      "message": "am de9b66fe: am 3ac436b7: am 80f103ae: Merge \"Extra to always show advanced devices.\" into klp-dev\n\n* commit \u0027de9b66fee1bdbc914c287fb9a2aa832dc2d3e6f9\u0027:\n  Extra to always show advanced devices.\n"
    },
    {
      "commit": "de9b66fee1bdbc914c287fb9a2aa832dc2d3e6f9",
      "tree": "dba8154c1eb5513cab372e77d25178b4b737b9f9",
      "parents": [
        "33c7520b68e015c46ed1bcb277dc4faaa368cc55",
        "3ac436b758830eb938c62d5ed91caa7808b5b63e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 25 18:17:52 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 25 18:17:52 2013 -0700"
      },
      "message": "am 3ac436b7: am 80f103ae: Merge \"Extra to always show advanced devices.\" into klp-dev\n\n* commit \u00273ac436b758830eb938c62d5ed91caa7808b5b63e\u0027:\n  Extra to always show advanced devices.\n"
    },
    {
      "commit": "db5ef125007644daa94aeaf1bd8637f4e0095e94",
      "tree": "7b8121682fb4c74cc2794b844c593eaf2173a71c",
      "parents": [
        "96c620595bd0585f934b0971b4552c57845e9a78"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 25 17:12:49 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 25 17:51:04 2013 -0700"
      },
      "message": "Use inotify to update DocumentsUI.\n\nWhile user is actively looking at a directory, subscribe to inotify\nevents and notify of content changes to trigger requeries.  Reference\ncount the observers, since multiple cursors are regularly open during\nrequeries.\n\nFix leaking cursors on activity rotation; crazy loader ID generation\nis no longer needed.\n\nBug: 10999396\nChange-Id: Iddeb08a056fee80c93df8499874705bcd213a1e2\n"
    },
    {
      "commit": "96c620595bd0585f934b0971b4552c57845e9a78",
      "tree": "e523cdadefc3ac8730cc9a80f11c5e8fcddf2dc1",
      "parents": [
        "c802a6614095660bccfd0cdf4f15404ad1863b76"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 25 16:30:54 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 25 16:30:54 2013 -0700"
      },
      "message": "Extra to always show advanced devices.\n\nAlso always lower-case extension to extract MIME type correctly,\nwe may want to fix in MimeUtils at some point.\n\nBug: 11354402\nChange-Id: I77d0c06a663cd0c4320c41553ff1980b6f9a7778\n"
    },
    {
      "commit": "8e0164c5660ff821ad839014f87de4f90a6d8936",
      "tree": "3330aded637166c602463c8f62dc0b830800e84e",
      "parents": [
        "641089b69bfa878ae9527df8c4705355eaf2ac7c",
        "46106ca28e8a679ce2f0609d03ae6ba4b95d7f30"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 24 12:40:07 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 24 12:40:07 2013 -0700"
      },
      "message": "am 46106ca2: am 686fa2db: am c832ef0d: Merge \"Show spinner while waiting for mutations.\" into klp-dev\n\n* commit \u002746106ca28e8a679ce2f0609d03ae6ba4b95d7f30\u0027:\n  Show spinner while waiting for mutations.\n"
    },
    {
      "commit": "46106ca28e8a679ce2f0609d03ae6ba4b95d7f30",
      "tree": "515b481fc8e0459356591e3ea9a91b2b6694ae88",
      "parents": [
        "1a529ddaa71a3dfa50586a145ebfa502bea85e1d",
        "686fa2db5b8feeb9e378aeb8e5dbac2f79ef2153"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 24 12:35:22 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 24 12:35:22 2013 -0700"
      },
      "message": "am 686fa2db: am c832ef0d: Merge \"Show spinner while waiting for mutations.\" into klp-dev\n\n* commit \u0027686fa2db5b8feeb9e378aeb8e5dbac2f79ef2153\u0027:\n  Show spinner while waiting for mutations.\n"
    },
    {
      "commit": "04d45a0bdd47c243ad7ccb179aa52a83e7bf45db",
      "tree": "5280b55a941f5aaf277dc6f21896089882713981",
      "parents": [
        "9352c383e95c3e1facd8a7a2d49ff488fb7bbcaf"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 23 15:46:38 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 23 15:48:05 2013 -0700"
      },
      "message": "Show spinner while waiting for mutations.\n\nWhen mutation operations are waiting for a storage backend, show a\nspinner in place of the save button.\n\nBug: 11333249\nChange-Id: I2b620b4532ad977a2b60d4bdc5caa55f89021456\n"
    },
    {
      "commit": "ae25a1a89b777c444df5d34a2537aff3f5c2249b",
      "tree": "196ca065842d421f715a61cbd407fe8372382678",
      "parents": [
        "3efe70999173eb6ee9335142b80f42277bc695fa",
        "05f92b7c5810dfc4e96cd5dddff1f7f380739136"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 23 11:18:35 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 23 11:18:35 2013 -0700"
      },
      "message": "am 05f92b7c: am 6599c128: am 871cb5d5: Merge \"Update roots when data cleared, refresh UI.\" into klp-dev\n\n* commit \u002705f92b7c5810dfc4e96cd5dddff1f7f380739136\u0027:\n  Update roots when data cleared, refresh UI.\n  Treat document thumbnails as preemptable.\n"
    },
    {
      "commit": "75b96875bee961b12aed0f6e81369a4ecc6b26df",
      "tree": "6d95a1ad85c26ca0e7500123a7d77c09e05236ca",
      "parents": [
        "df5ba9bfeb8e77522fbea7cb60bd0d9da8fb5276",
        "3a27585df77997b5ea01a086b739ee6866000444"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 23 11:13:01 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 23 11:13:01 2013 -0700"
      },
      "message": "am 3a27585d: am a9a6007c: Merge \"Treat document thumbnails as preemptable.\" into klp-dev\n\n* commit \u00273a27585df77997b5ea01a086b739ee6866000444\u0027:\n  Treat document thumbnails as preemptable.\n"
    },
    {
      "commit": "b3d42635aafacd80b1e1d257338ea6abb93d22c3",
      "tree": "3a5c2e146afbaa0cc8041d1ff267cc8936de83b6",
      "parents": [
        "acc642bce9e1ca1782c8f93131d944d4a2f92be0"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 22 17:09:44 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 23 09:23:13 2013 -0700"
      },
      "message": "Treat document thumbnails as preemptable.\n\nWhen a more important request comes along, preempt all outstanding\nthumbnail requests.\n\nBug: 11317901\nChange-Id: I164fc8d804bb9c471e6da3f8127228043b3ca482\n"
    },
    {
      "commit": "eeb58c79c0512b9a4bff0383327665875304a53f",
      "tree": "6c41e2e6bb8af8adc98e48bf75eff72ef822741a",
      "parents": [
        "db289e0ac752ea204cf88abd7c38bf9b27e294c9",
        "703840da8a33c703f2d787526438c650b0318845"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 17 18:55:22 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 17 18:55:22 2013 -0700"
      },
      "message": "am 703840da: am 1a5804d7: am 0c0f1e2e: Merge \"Include external storage devices in DocumentsUI.\" into klp-dev\n\n* commit \u0027703840da8a33c703f2d787526438c650b0318845\u0027:\n  Include external storage devices in DocumentsUI.\n"
    },
    {
      "commit": "703840da8a33c703f2d787526438c650b0318845",
      "tree": "0c7bce42920a11cc46384e4df003781fdff3e3e9",
      "parents": [
        "47938450b4d19f60edf774c8f451d53aa110ea0b",
        "1a5804d7aa253432f37fbd5d8eb89ac363501fe9"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 17 18:53:26 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 17 18:53:26 2013 -0700"
      },
      "message": "am 1a5804d7: am 0c0f1e2e: Merge \"Include external storage devices in DocumentsUI.\" into klp-dev\n\n* commit \u00271a5804d7aa253432f37fbd5d8eb89ac363501fe9\u0027:\n  Include external storage devices in DocumentsUI.\n"
    },
    {
      "commit": "1f706c6cd1cb841adadc2babc57a34e5728983ec",
      "tree": "f0b9956276e741a7e7416a272ff47d8ba667fcfe",
      "parents": [
        "5aca2b8dc4f4ff2d466a64587d06666c7bbd9749"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 17 10:52:17 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 17 10:55:32 2013 -0700"
      },
      "message": "Include external storage devices in DocumentsUI.\n\nInclude volume UUID in generated document IDs to uniquely identify\nvolumes over time.  Show volume label to users.  Watch for mount\nchanges to update available roots.\n\nBug: 11175082\nChange-Id: Ia151bde768587468efde0c1d97a740b5353d1582\n"
    },
    {
      "commit": "d70d2d8ee3f4c31aa78474fd9efb865395b2249e",
      "tree": "7bd6f2b9deb0d6d3ab8b09868c230f30bdc1a29e",
      "parents": [
        "21a31f9e1199ce710a2509e49ef7e1b7d610b0bd",
        "25b99efb3259c9f6d7bcdacd3cb2bafd6b1a0e63"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 15 04:02:48 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 15 04:02:48 2013 -0700"
      },
      "message": "am 25b99efb: am ac0cb359: am 8e656df0: Merge \"Add extras to AFD, send orientation metadata.\" into klp-dev\n\n* commit \u002725b99efb3259c9f6d7bcdacd3cb2bafd6b1a0e63\u0027:\n  Add extras to AFD, send orientation metadata.\n"
    },
    {
      "commit": "25b99efb3259c9f6d7bcdacd3cb2bafd6b1a0e63",
      "tree": "2a1225855c97452dbe42ca726fe9b705727d4fe3",
      "parents": [
        "73b25d6ac0d310702c5f582680e415dfb773b35f",
        "ac0cb3591a637533c1f0329fd00a621fbe1fd997"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 14 19:00:51 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 14 19:00:51 2013 -0700"
      },
      "message": "am ac0cb359: am 8e656df0: Merge \"Add extras to AFD, send orientation metadata.\" into klp-dev\n\n* commit \u0027ac0cb3591a637533c1f0329fd00a621fbe1fd997\u0027:\n  Add extras to AFD, send orientation metadata.\n"
    },
    {
      "commit": "c1c8f3f97d344a24bfddcb56a8be05e7e2fabe9e",
      "tree": "378307092542fff53cc3ecd45dc404b5ace63afc",
      "parents": [
        "b5da7b23df5278a5e722b601eb8ef7e98537a51e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 14 14:57:33 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 14 15:28:19 2013 -0700"
      },
      "message": "Add extras to AFD, send orientation metadata.\n\nAssetFileDescriptor augments a ParcelFileDescriptor with details\nabout how it should be interpreted, so extend it to support a Bundle\nof extras.  Then use these extras to share thumbnail orientation\nmetadata.\n\nThe raw image data of EXIF thumbnails matches the orientation of\nthe enclosing image, but the thumbnail data doesn\u0027t repeat the EXIF\nflags.  This meant that receivers of openDocumentThumbnail() would\nget an image that needed to be transformed, but without enough\ncontext to actually transform it.\n\nInstead of transforming and recompressing the image on the fly on\nthe provider side, send a transformation hint that the receiver\nside can interpret.\n\nBug: 11205688\nChange-Id: Ibc5a7ad002377a55e6ffcb5ac5c8829841002e06\n"
    },
    {
      "commit": "c69cf322520f4fe48b67d52bf76d22674dcfee8a",
      "tree": "f21bf124d484ea7ac0784da933a27b621e1c50ea",
      "parents": [
        "d2bb1dd0310920ba703944016814a28688cbafda",
        "416165f4313ac2deea430030ff44d9da0388b8bc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 11 12:55:26 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 11 12:55:26 2013 -0700"
      },
      "message": "am 416165f4: am ce05cbc5: am 6e19feb4: Merge \"Treat dates near epoch as unknown.\" into klp-dev\n\n* commit \u0027416165f4313ac2deea430030ff44d9da0388b8bc\u0027:\n  Treat dates near epoch as unknown.\n"
    },
    {
      "commit": "416165f4313ac2deea430030ff44d9da0388b8bc",
      "tree": "24757addae4bd8c6e459026be0a23e15687dc0e6",
      "parents": [
        "7bc5cdc0e9ef61438135243db83ab426fa97acae",
        "ce05cbc5ec52417f1f927be2b3d9b93e0881a4d9"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 11 12:50:12 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Oct 11 12:50:12 2013 -0700"
      },
      "message": "am ce05cbc5: am 6e19feb4: Merge \"Treat dates near epoch as unknown.\" into klp-dev\n\n* commit \u0027ce05cbc5ec52417f1f927be2b3d9b93e0881a4d9\u0027:\n  Treat dates near epoch as unknown.\n"
    },
    {
      "commit": "d5a4658cea8def24155849a8621608155dcba05c",
      "tree": "c7bb892a86fc9c9fe3f3c1b9447fa1ecd8b36897",
      "parents": [
        "64be26fad743ae1d8b5f8e5c61b2e7db18379f8b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 11 09:49:03 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Oct 11 09:49:05 2013 -0700"
      },
      "message": "Treat dates near epoch as unknown.\n\nAlso document that rootIds need to be stable, so removable media\nroots should use the media serial number.\n\nBug: 11151557\nChange-Id: I1f3dcabcd0474f1bf92d2cafb0f37e82abe34e05\n"
    },
    {
      "commit": "5b6372171c5ee06dc0ce00644008297e7a14bb38",
      "tree": "e9757617c387a17e952b9b9b1ab3f008c61235ef",
      "parents": [
        "f1bab3c8162a0f9ee553c369d8e36157fa00ea07",
        "9d1383c61ca0932cb36b104a89c32db15de6a10e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 07 15:16:14 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 07 15:16:14 2013 -0700"
      },
      "message": "am 9d1383c6: am 5e02e0a9: am bcc77b50: Merge \"Add \u003cintent-filter\u003e support to \u003cprovider\u003e.\" into klp-dev\n\n* commit \u00279d1383c61ca0932cb36b104a89c32db15de6a10e\u0027:\n  Add \u003cintent-filter\u003e support to \u003cprovider\u003e.\n"
    },
    {
      "commit": "9d1383c61ca0932cb36b104a89c32db15de6a10e",
      "tree": "a2f1a422526b4705a6aead38e2ff2b95a909467b",
      "parents": [
        "f76843d52095315846d8a33a982bd7994cec9d8e",
        "5e02e0a9e1e075e3d451d929b0a67bf280c432ed"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 07 15:12:16 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 07 15:12:16 2013 -0700"
      },
      "message": "am 5e02e0a9: am bcc77b50: Merge \"Add \u003cintent-filter\u003e support to \u003cprovider\u003e.\" into klp-dev\n\n* commit \u00275e02e0a9e1e075e3d451d929b0a67bf280c432ed\u0027:\n  Add \u003cintent-filter\u003e support to \u003cprovider\u003e.\n"
    },
    {
      "commit": "85f5f8132015d8a5043ea4413702420d0d157c9f",
      "tree": "08493f51fca4a3ebd4eaf584e8c0fa03b373be9c",
      "parents": [
        "ca25db0cb3d6b9686a42c9cb99d90dc095f20cd8"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 07 10:16:12 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Oct 07 14:19:13 2013 -0700"
      },
      "message": "Add \u003cintent-filter\u003e support to \u003cprovider\u003e.\n\nFor the new documents work, we\u0027re only interested in the subset of\nContentProviders that actually implement DocumentsContract.  Instead\nof returning all providers, add \u003cintent-filter\u003e support to make it\neasier to limit the set of returned ProviderInfo.\n\nDefine a well-known action for DocumentsProviders, and start using it\nwhen querying for roots.  Continue supporting the old \u003cmeta-data\u003e\napproach until all apps have been updated.\n\nBug: 8599233\nChange-Id: I05f049bba21311f5421738002f99ee214447c909\n"
    },
    {
      "commit": "ba0591c9e3e22b975567011df784a825a49dcf4f",
      "tree": "8be65aeb5102f484f35146ed9ba8b6aaa176f760",
      "parents": [
        "4a8d08285c0218d8d4cf7bc7f63feed2b2ccdb08",
        "21d8e96d840be42fae56483a2e291fc10677b2d9"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 02 10:15:14 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 02 10:15:14 2013 -0700"
      },
      "message": "am 21d8e96d: am ef4c3790: am 27d3c0fe: Merge \"Isolate calls to each remote DocumentsProvider.\" into klp-dev\n\n* commit \u002721d8e96d840be42fae56483a2e291fc10677b2d9\u0027:\n  Isolate calls to each remote DocumentsProvider.\n"
    },
    {
      "commit": "21d8e96d840be42fae56483a2e291fc10677b2d9",
      "tree": "ecc2b4b1431125d352b67c81efd8d7f46a0852d4",
      "parents": [
        "21f13bcb42506101550367990d3adb4d39365392",
        "ef4c3790e52beab467359f6b5125b66fbe1993ef"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 02 10:11:18 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 02 10:11:18 2013 -0700"
      },
      "message": "am ef4c3790: am 27d3c0fe: Merge \"Isolate calls to each remote DocumentsProvider.\" into klp-dev\n\n* commit \u0027ef4c3790e52beab467359f6b5125b66fbe1993ef\u0027:\n  Isolate calls to each remote DocumentsProvider.\n"
    },
    {
      "commit": "b6ab3b982b98a34e6af59adbfb7e85db7da7392c",
      "tree": "d1d5d895f9c055419317216f241e79a32eca45a2",
      "parents": [
        "06429fba90a3f5399f02a8cfd9484b11857346f9",
        "7f60e70e815d381035b141843395830407c198d9"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 02 09:43:21 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 02 09:43:21 2013 -0700"
      },
      "message": "am 7f60e70e: am 666b998b: am 364fc14f: Merge \"Detect wedged ContentProviders, treat as ANR.\" into klp-dev\n\n* commit \u00277f60e70e815d381035b141843395830407c198d9\u0027:\n  Detect wedged ContentProviders, treat as ANR.\n"
    },
    {
      "commit": "7f60e70e815d381035b141843395830407c198d9",
      "tree": "915abd829a7d2620bafd92387cdbf7ddffd44326",
      "parents": [
        "36c4adf9f713602722ebd99c4b44137f6240fca7",
        "666b998b67fe7bb6fc11dd6d683a18b5690afd39"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 02 09:35:14 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 02 09:35:14 2013 -0700"
      },
      "message": "am 666b998b: am 364fc14f: Merge \"Detect wedged ContentProviders, treat as ANR.\" into klp-dev\n\n* commit \u0027666b998b67fe7bb6fc11dd6d683a18b5690afd39\u0027:\n  Detect wedged ContentProviders, treat as ANR.\n"
    },
    {
      "commit": "d01571e6d4e1c403534e19142720530d324eac9b",
      "tree": "397106adf0cda15ea986a3d33e1e6ba3ba05c074",
      "parents": [
        "ee3e1603fdbbe24b0cbf3cb85c456696cf3b7941"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 01 17:57:41 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 02 08:54:02 2013 -0700"
      },
      "message": "Isolate calls to each remote DocumentsProvider.\n\nAll background work is going through AsyncTasks, which uses a shared\nthread pool.  Even with the new ContentProviderClient logic to detect\nANRs, the UI can still appear to be unresponsive for 20 seconds, even\nif the user attempted to switch to a different backend.  In the worst\ncase, a backlog of thumbnail requests would end up wedging Loaders\nfor a long time, since they all share the same THREAD_POOL_EXECUTOR.\n\nThis change isolates calls to each provider onto their own thread,\nwhich they\u0027re free to wedge and recover from over time.\n\nIt also means we no longer need a dedicated thread pool for recents\nloading, and can use a simpler Semaphore instead.\n\nDisables thumbnails in recents on svelte devices.\n\nBug: 10993301, 11014856\nChange-Id: I7f8a5bbb5f64437e006cb2c48b7e854136d5c38c\n"
    },
    {
      "commit": "7aa7601c09ab5d87cc15a0ed9a8f511d494a4cbc",
      "tree": "a22ca7e432de4309aedf7785babd5e1b73c28b09",
      "parents": [
        "7eb5ce03d9697caa2e9caf0437036a937d081e90"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 30 14:26:27 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Oct 01 09:50:41 2013 -0700"
      },
      "message": "Detect wedged ContentProviders, treat as ANR.\n\nAll ContentProvider calls are currently blocking, making it hard for\nan app to recover when a remote provider is wedged.  This change adds\nhidden support to ContentProviderClient to timeout remote calls,\ntreating them as ANRs.  This behavior is disabled by default.\n\nUpdate DocumentsUI to use a 20 second timeout whenever interacting\nwith a storage provider.\n\nBug: 10993301, 10819461, 10852518\nChange-Id: I10fa3c425c6a7225fff9cb7a0a07659028230cd3\n"
    },
    {
      "commit": "a2c42861a18b883266da961d8eb2eecb4b95cd72",
      "tree": "3000177065cc440b4b71b23fa93f616858c6a40b",
      "parents": [
        "426700c39ff04b3b2a1a9240c070e23e196db802",
        "cc637d9ae5920ac2f685090f595dc1e1643d71cc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 30 17:09:48 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 30 17:09:48 2013 -0700"
      },
      "message": "am cc637d9a: Merge \"New roots UX, async, performance, docs.\" into klp-dev\n\n* commit \u0027cc637d9ae5920ac2f685090f595dc1e1643d71cc\u0027:\n  New roots UX, async, performance, docs.\n"
    },
    {
      "commit": "b8e2f178e9f1bfc82f5ca7fda78b33e101f54dd1",
      "tree": "5d1d6553946fd6a34e1fa030eb53f09ebbfe5635",
      "parents": [
        "04fa5918453695e674c2c7ca094a992616409424",
        "cc637d9ae5920ac2f685090f595dc1e1643d71cc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 30 14:17:44 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 30 14:17:44 2013 -0700"
      },
      "message": "am cc637d9a: Merge \"New roots UX, async, performance, docs.\" into klp-dev\n\n* commit \u0027cc637d9ae5920ac2f685090f595dc1e1643d71cc\u0027:\n  New roots UX, async, performance, docs.\n"
    },
    {
      "commit": "6efba22ce510352bb84910d6efc42fecafd31ed7",
      "tree": "0bb0df74be266330bdc5c86d686abf39bb0f914d",
      "parents": [
        "3d52dc9c3a2fd9997322ce5e28607b3f7e9bfcf7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 27 16:44:11 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 27 17:13:13 2013 -0700"
      },
      "message": "New roots UX, async, performance, docs.\n\nYet another iteration from UX on how roots should be ordered.  Since\nwe no longer categorize by type, remove from public API.  Updated\nasset drop with new dividers.\n\nUpdate public API docs to be explicit about required columns.  Hide\nflags and columns that aren\u0027t required for third-party apps.\n\nMove remainder of potentially blocking work to AsyncTasks, including\ncreating directories, picked root resolution, and creation of new\ndocuments once picked.\n\nImprove performance of layouts by removing baseline alignment and\nreduce hierarchy depth.  Set alpha on ImageViews directly to avoid\noffscreen rendering hit.\n\nLimit returned recents to 45 days.  Show load in recents when still\nwaiting for backends.  Show empty message when no recents stacks to\ncreate from.  Use unique key when saving recent stacks.\n\nBug: 10941423, 10819454, 10964412, 10960718\nChange-Id: I08cf589dcda7e203acf67928f4d30322ae36ee94\n"
    },
    {
      "commit": "8aa0c344835401fd3e6d84d3aa5ec3920bac0baa",
      "tree": "0ad2b0fd0ecc0a46807cd1ffd4ec63c1c482ec14",
      "parents": [
        "9c437bcb57a7cf5eb3bd1a85a4f2322fd34f50a3",
        "cd30bb6c710d40839bc8b4d6edcb866f13342b5a"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 26 11:05:44 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 26 11:05:44 2013 -0700"
      },
      "message": "am cd30bb6c: am bb77d99c: Merge \"Directories are always enabled; update assets.\" into klp-dev\n\n* commit \u0027cd30bb6c710d40839bc8b4d6edcb866f13342b5a\u0027:\n  Directories are always enabled; update assets.\n"
    },
    {
      "commit": "cd30bb6c710d40839bc8b4d6edcb866f13342b5a",
      "tree": "8d00f7b2cf5993016f98b16aae217f22f98f9d85",
      "parents": [
        "7979e170b5bdfb6922d758f2c66f06829b6b5d9b",
        "bb77d99c257bc4a3371548c4bc8ba7088fa76005"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 26 11:00:48 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 26 11:00:48 2013 -0700"
      },
      "message": "am bb77d99c: Merge \"Directories are always enabled; update assets.\" into klp-dev\n\n* commit \u0027bb77d99c257bc4a3371548c4bc8ba7088fa76005\u0027:\n  Directories are always enabled; update assets.\n"
    },
    {
      "commit": "2a030b05a978281147df4d1cc4f12bc8d61c0729",
      "tree": "31c633736a130cc676370febd6b3ebbd552391bc",
      "parents": [
        "822ac0bada06b2185b4d5e8304160b680a72cff2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 26 10:54:16 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 26 10:54:19 2013 -0700"
      },
      "message": "Directories are always enabled; update assets.\n\nFix bug where item enabled state depended on FLAG_SUPPORTS_WRITE;\ndirectories are now always enabled.  Also unifies enabled testing.\n\nBug: 10903210, 10946731\nChange-Id: I241533d273dfe4a2146bb322a8bd93066bf4ef55\n"
    },
    {
      "commit": "a440a0dd64c596991af6c860c1083c38ed4dc443",
      "tree": "172a673311c10ab57d641f19408f65f1144c1c5e",
      "parents": [
        "f17285c4659e859b1252f6c529018b8e79666a6d",
        "b8a48da2a707720a105584f1b8dc087a6dd9c887"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Sep 22 12:59:40 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Sep 22 12:59:40 2013 -0700"
      },
      "message": "am b8a48da2: am 5e1a5e5b: Merge \"Create unique files, root ordering, UI bugs.\" into klp-dev\n\n* commit \u0027b8a48da2a707720a105584f1b8dc087a6dd9c887\u0027:\n  Create unique files, root ordering, UI bugs.\n"
    },
    {
      "commit": "b8a48da2a707720a105584f1b8dc087a6dd9c887",
      "tree": "fcfe7c84337e7c0d6d7207c24aaefe73ac426947",
      "parents": [
        "8c87117588a1158823d94dec365897d33cec59bf",
        "5e1a5e5bad475696e842addceb7dd6a519879f98"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Sep 22 12:57:20 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Sep 22 12:57:20 2013 -0700"
      },
      "message": "am 5e1a5e5b: Merge \"Create unique files, root ordering, UI bugs.\" into klp-dev\n\n* commit \u00275e1a5e5bad475696e842addceb7dd6a519879f98\u0027:\n  Create unique files, root ordering, UI bugs.\n"
    },
    {
      "commit": "5e1a5e5bad475696e842addceb7dd6a519879f98",
      "tree": "3e62dbaa8a6893c9d2c3159b3e4ea09566a4bd9d",
      "parents": [
        "3ba21e979524367631de70dfc82075693d9c616d",
        "5545f56f7561810187545a1817b6001dd1f9931b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Sep 22 19:55:19 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Sep 22 19:55:19 2013 +0000"
      },
      "message": "Merge \"Create unique files, root ordering, UI bugs.\" into klp-dev"
    },
    {
      "commit": "5545f56f7561810187545a1817b6001dd1f9931b",
      "tree": "94cfb5e5a543575adaedbf75ec243a9bbbf765d7",
      "parents": [
        "562ce888af21fc18d1610545ff6373ee2ecbbb13"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Sep 21 13:57:33 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Sep 21 14:07:16 2013 -0700"
      },
      "message": "Create unique files, root ordering, UI bugs.\n\nWhen a file already exists on disk, try adding a counter suffix to\nmake a unique name.  Move services near top of roots list, just below\nrecents.  Remove \"Documents\" root.\n\nIncrease number of recents allowed from single provider, and add more\nlogging to diagnose wedged loaders.\n\nWhen launching GET_CONTENT apps, wait for successful result before\nrelaying result; canceled requests now return to DocumentsUI.\n\nAdd CloseGuard to ContentProviderClients, since leaked instances can\nkeep the remote process alive.\n\nFix UI bug around trailing breadcrumbs.  Fix bug that dropped Recents\nfrom roots list.  Add up action to Settings activity.  Give our\nactivity a default icon while waiting for async roots to load.\n\nBug: 10818683, 10819461, 10819461, 10819196, 10860199\nChange-Id: I7b9e26b1cf8353dd3175458b23da2b4bda6c5831\n"
    },
    {
      "commit": "5fc67f98b92ac1542eda7739ea9604cf69e18dc5",
      "tree": "1102f449f24a649e7146095510a2f1c354ac7d83",
      "parents": [
        "f439bcd953f34a1e5784ddc74d4fd093939ace85",
        "a35ff66127d07117e93268482d7e9719abfd58c3"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Sep 20 16:05:21 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 16:05:21 2013 -0700"
      },
      "message": "am a35ff661: am d473ebb7: Merge \"Surfaces ParcelFileDescriptor#parseMode() as API\" into klp-dev\n\n* commit \u0027a35ff66127d07117e93268482d7e9719abfd58c3\u0027:\n  Surfaces ParcelFileDescriptor#parseMode() as API\n"
    },
    {
      "commit": "a35ff66127d07117e93268482d7e9719abfd58c3",
      "tree": "4a8addbf7cb042956fb28b1a99564584c7275490",
      "parents": [
        "578f67c25c6bb160cf30bf39b7e41bc039000a5c",
        "d473ebb7c4f212cb9f74fe748bb8b95d7d126417"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Sep 20 16:01:34 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 16:01:34 2013 -0700"
      },
      "message": "am d473ebb7: Merge \"Surfaces ParcelFileDescriptor#parseMode() as API\" into klp-dev\n\n* commit \u0027d473ebb7c4f212cb9f74fe748bb8b95d7d126417\u0027:\n  Surfaces ParcelFileDescriptor#parseMode() as API\n"
    },
    {
      "commit": "d473ebb7c4f212cb9f74fe748bb8b95d7d126417",
      "tree": "6ccf61057915d90db2012e82fd067a2bf56a2723",
      "parents": [
        "dfed244876d6c0ddd8d8bd2b8f3b970cd0a1ab95",
        "eb8c3f93edc826413ff4143284dec01c1061d5cc"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Sep 20 22:59:12 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 20 22:59:12 2013 +0000"
      },
      "message": "Merge \"Surfaces ParcelFileDescriptor#parseMode() as API\" into klp-dev"
    },
    {
      "commit": "eb8c3f93edc826413ff4143284dec01c1061d5cc",
      "tree": "29c0308a276456bb6d829a4a8f773ed4b14c9043",
      "parents": [
        "0286f5e2786865e35781180c88e67a0f981e942d"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Sep 20 14:08:25 2013 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Sep 20 14:59:34 2013 -0700"
      },
      "message": "Surfaces ParcelFileDescriptor#parseMode() as API\n\nMoves ContentResolver#modeToMode() to ParcelFileDescriptor#parseMode()\n\nbug:10711271\nChange-Id: I28a5de4ca70adfbec4caf739863b77f0fd7fd9a4\n"
    },
    {
      "commit": "f97d4681d32566acd8ef4a8222cbf115d79bcbc1",
      "tree": "67e6beaef22c237480707d92332ee730bb3027cb",
      "parents": [
        "20ce157923c93f465a4760cc070602e9a062c6ca",
        "89dec7e6e9ab98141de89096ef052cb2c158c557"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 20 11:21:26 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 11:21:26 2013 -0700"
      },
      "message": "am 89dec7e6: am a9ce049d: Load RootInfo in background, invalidation.\n\n* commit \u002789dec7e6e9ab98141de89096ef052cb2c158c557\u0027:\n  Load RootInfo in background, invalidation.\n"
    },
    {
      "commit": "89dec7e6e9ab98141de89096ef052cb2c158c557",
      "tree": "265536975cf9a99ccec70d7d5ad5fea25fdde432",
      "parents": [
        "48c52bea8b8b53e9e7d5e0db409a0ada8bd90d0d",
        "a9ce049db87259e302e2368d2a4a1c11a94fd831"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 19 19:59:22 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 19 19:59:22 2013 -0700"
      },
      "message": "am a9ce049d: Load RootInfo in background, invalidation.\n\n* commit \u0027a9ce049db87259e302e2368d2a4a1c11a94fd831\u0027:\n  Load RootInfo in background, invalidation.\n"
    },
    {
      "commit": "a9ce049db87259e302e2368d2a4a1c11a94fd831",
      "tree": "c024fcea7bf3983f0f9dd4de270c1412aeb42250",
      "parents": [
        "bdac73fec8e6d4686398654f7a74db465e6de8e0"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 19 15:25:56 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 19 19:53:32 2013 -0700"
      },
      "message": "Load RootInfo in background, invalidation.\n\nMove all RootInfo queries to background threads to avoid janking\nthe UI.  Update passes happen on spawed task, which swaps out updated\ncache results when finished.  Support partial updates when only a\nsingle package/authority has changed.  Watch for change notifications\nfor roots, since flags can change over time.\n\nIgnore stopped packages when in background, but query them for roots\nwhen launching any picker UI.\n\nOptimize management launches by treating as one-shot requests that\ndon\u0027t need to wait for all RootInfo.\n\nBug: 10600454, 10745490\nChange-Id: Ibc7b15688ef6b41bd7e9dd0d7564b501e60e49a9\n"
    },
    {
      "commit": "b3a0c4fdec78a7b565c7a0b06b4dafa44547b74e",
      "tree": "d055d2f6bd20d7a8ca7085b77fa90aeb436e6801",
      "parents": [
        "0deaef89f2fd1d507cce75e46291927da2efc8fa"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Sep 18 23:43:42 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Sep 18 23:43:42 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I75cbdcca61cb05f29e4463284be324e684df51bd\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "59db60e498d399f7b2e6effd5d3a7660494ac7a1",
      "tree": "6848beeb0654ea74484d06ab957319af40437fc2",
      "parents": [
        "ac7297bdc04e2097e39b791064e5ed6ee92680ea"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Sep 18 23:42:59 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Sep 18 23:42:59 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I0da9befa56ba6e4a599b5796182898cc7093043d\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "fd14da35356b7881b24732c90e8f1f61a11eb59e",
      "tree": "0d2488633edc10a059a983486248ec7802334051",
      "parents": [
        "abf0f5119646981913239547264fb448d901b0b6"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Mon Sep 16 09:47:50 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Mon Sep 16 09:47:50 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I6c1b05ea202375f8bbc242721fa064ab65453693\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "72e8643fdd7be03de1d7353c5a2573236b5957ab",
      "tree": "5a8d0d98b090bdfe051f6376785904296f4e76ac",
      "parents": [
        "a751d97e8611d16a2929c538f634a4b4c7b2938a"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Mon Sep 16 09:47:04 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Mon Sep 16 09:47:04 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: Icd16c449ff68a89ecd4a36856764d24f5894c9e5\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "31ceae5629dad6d97c3de513b3b0cc1b7880a492",
      "tree": "ec75ce97ed8749c3a51523edc018d089cc4f08cd",
      "parents": [
        "fa0556943ee386e83d190f1de86d73d81e08cc8a"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Sat Sep 14 20:27:22 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Sat Sep 14 20:27:22 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I68895c16a26ecc9554bfc53e9d9346fe29412fec\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "0bb467e03028d1eb599a918fd5005701dd883a54",
      "tree": "e440615c379c6084fa86e7c99f4026cdeebe57ad",
      "parents": [
        "5769c3c3d719f65e208a18f203d257ff986fa51a"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Fri Sep 13 21:48:07 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Fri Sep 13 21:48:07 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: Ief842f34cd92fa66273c28e28fd6376b37dfbd5e\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "162e88759c7a5d390f7874dcb805db09000c24c4",
      "tree": "40c1ca553077706b5ed61d2683c17aded8dc900a",
      "parents": [
        "c8db445e42f1b60b9af036cb0d793ee11ae4c9c6"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Fri Sep 13 21:47:27 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Fri Sep 13 21:47:27 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: Idfb9ef96c1c4ea6fc1ca836114a8eb09be18f8f4\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "4c7c51480e182a4960797f295f5ce4800cd546e0",
      "tree": "ab62250d270ac1e72055c910b485d285c3cd15bc",
      "parents": [
        "b649443b3c6ca853407a04b712537d0d45de387e",
        "f5513f41fe041bef29ec70abdce7cc6f582a11c2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 13 17:22:41 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 13 17:22:41 2013 -0700"
      },
      "message": "am f5513f41: am 0bf2ed90: Merge \"Move search to roots; Documents root; hide empty.\" into klp-dev\n\n* commit \u0027f5513f41fe041bef29ec70abdce7cc6f582a11c2\u0027:\n  Move search to roots; Documents root; hide empty.\n"
    },
    {
      "commit": "f5513f41fe041bef29ec70abdce7cc6f582a11c2",
      "tree": "7d2e8dcb5df1322283eb3cf523ec5a2ab897bb5a",
      "parents": [
        "a5ec4d4b54440dd7f56661ebf602498d2b08526c",
        "0bf2ed90c42d3a1f1d4be4b70c337f9eaec9cd14"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 13 17:13:56 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 13 17:13:56 2013 -0700"
      },
      "message": "am 0bf2ed90: Merge \"Move search to roots; Documents root; hide empty.\" into klp-dev\n\n* commit \u00270bf2ed90c42d3a1f1d4be4b70c337f9eaec9cd14\u0027:\n  Move search to roots; Documents root; hide empty.\n"
    },
    {
      "commit": "3e1189b3590aefb65a2af720ae2ba959bbd4188d",
      "tree": "d3cf503e72f633e7c6ef51792bec077434deede6",
      "parents": [
        "ab62870c7e787323057d3b16a3ff1fd118fb5925"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 12 21:59:06 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 13 11:35:04 2013 -0700"
      },
      "message": "Move search to roots; Documents root; hide empty.\n\nDocuments searches now happen root-wide, instead of only under a\nsubdirectory.  Updates abstract class and flags to match.  Add flag\nfor a root to indicate it\u0027s empty, and hide empty roots in UI unless\ncreating.\n\nDefine \"Documents\" public directory and storage backend to contain\nfiles.\n\nBug: 10712057, 10710865, 10710758\nChange-Id: I8716367568969f9cb1d83927b2bf5a7013809350\n"
    },
    {
      "commit": "d4aa10d5bec64261df85c23f9f9794dfd156623f",
      "tree": "e586a3e1b7c54a44980eca7ddd57b5fb077fe0c1",
      "parents": [
        "9df07d19e341b5ec01b31817374d489bbf61851e",
        "c3414dc4baf2bb2c3ef5761912fea7f44d804ebc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 12 09:22:22 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 09:22:22 2013 -0700"
      },
      "message": "am c3414dc4: am 357f9e34: Merge \"Handle pipe thumbnails, acquire unstable refs.\" into klp-dev\n\n* commit \u0027c3414dc4baf2bb2c3ef5761912fea7f44d804ebc\u0027:\n  Handle pipe thumbnails, acquire unstable refs.\n"
    },
    {
      "commit": "c3414dc4baf2bb2c3ef5761912fea7f44d804ebc",
      "tree": "89113a8b41c7eabacbb9d4beb44c0bc4934581a4",
      "parents": [
        "3f36b33dca0c1c9599c81b273e88b85d0e6fb06e",
        "357f9e34ca4f0336e406044db35834530379db47"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 12 09:17:02 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 09:17:02 2013 -0700"
      },
      "message": "am 357f9e34: Merge \"Handle pipe thumbnails, acquire unstable refs.\" into klp-dev\n\n* commit \u0027357f9e34ca4f0336e406044db35834530379db47\u0027:\n  Handle pipe thumbnails, acquire unstable refs.\n"
    },
    {
      "commit": "de2b22fbc60b29dd8af60cf05862066c04559dc0",
      "tree": "054f58b61d61769ab231276e08ad5616eda690de",
      "parents": [
        "aca405cd592679af4a4b31b01dfed6fd59c4a168"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Sep 11 17:33:06 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Sep 11 17:33:52 2013 -0700"
      },
      "message": "Handle pipe thumbnails, acquire unstable refs.\n\nSupport decoding thumbnails delivered over pipes by wrapping in a\nbuffered stream.  Also switch to using unstable provider references\nto avoid crashing DocumentsUI.\n\nBug: 10516148, 10510851\nChange-Id: I85f6eeaca70c97742bf79656d1d0c6da381fdd47\n"
    },
    {
      "commit": "d7ae1474465357e40d2c4c1141258dc06308beb5",
      "tree": "5ac6e36b7bd9c99d339b1c59d616acbf4adb3bee",
      "parents": [
        "279f3cdf70652a211c54f7b70fb08722a50e6cec",
        "bd56a17df26a3c7f4e32ca3be08fbf28f625dffa"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 10 17:05:07 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 10 17:05:07 2013 -0700"
      },
      "message": "am bd56a17d: am af4d039f: Merge \"More UX work for thumbnails, search, management.\" into klp-dev\n\n* commit \u0027bd56a17df26a3c7f4e32ca3be08fbf28f625dffa\u0027:\n  More UX work for thumbnails, search, management.\n"
    },
    {
      "commit": "bd56a17df26a3c7f4e32ca3be08fbf28f625dffa",
      "tree": "ead362c22227b6626dae31b2f9275c388c51aee4",
      "parents": [
        "9993f8ff24718553c05872d9f13f4114701b3428",
        "af4d039fb3a45d4a74683a69ee48071b8338a13d"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 10 17:02:11 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 10 17:02:11 2013 -0700"
      },
      "message": "am af4d039f: Merge \"More UX work for thumbnails, search, management.\" into klp-dev\n\n* commit \u0027af4d039fb3a45d4a74683a69ee48071b8338a13d\u0027:\n  More UX work for thumbnails, search, management.\n"
    },
    {
      "commit": "4ec973925fc2cd18f9ec0d0ca5af588564fded27",
      "tree": "d24a03c6f8cecb6bbba7e6073589afb58b05a2e9",
      "parents": [
        "1d2daa7809b58c226410c0060d7837de0a29888a"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 10 12:04:26 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 10 16:40:36 2013 -0700"
      },
      "message": "More UX work for thumbnails, search, management.\n\nHide non-finished downloads from normal picker UI, but keep them\naround in management mode.  Uses a Uri query parameter and a hidden\nAPI on DocumentsProvider.\n\nScale thumbnails to fit viewport, always show MIME icon while waiting\non thumbnails, and crossfade between them.  Cancel thumbnail tasks\nwhen views are recycled.\n\nFilter directories out of search results for now.  Also leave sort\nordering from backend intact, since it\u0027s custom ranking.  Fix\nSearchView interaction to dismiss properly and restore across\norientation and drawer state changes.\n\nHide most actions when drawer is open.  Invalidate RootInfo cache\nwhen locale changes.  Apply sort ordering when showing recent create\ndirectories.  Hide recent summary string when icon is enough for user\nto disambiguate.\n\nBug: 10667184, 10665663\nChange-Id: I331d3272a08c497f88dc659d9e112231cb35aa69\n"
    },
    {
      "commit": "d04e0c0adb5ce030a01f5738d6ffe2a37e51b144",
      "tree": "958f89d61291ee09b209e150f25426db4398a9ca",
      "parents": [
        "e995af44a729b2c6f5d31f1a1e18c17fb6e01762",
        "78bb372fb70b7c383ae4ab158734666de9ce8e95"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 09 21:45:11 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 09 21:45:11 2013 -0700"
      },
      "message": "am 78bb372f: am af927234: Merge changes I7b3f4c68,I9f022a08 into klp-dev\n\n* commit \u002778bb372fb70b7c383ae4ab158734666de9ce8e95\u0027:\n  Rename offer() to add(), remove/hide some APIs.\n  Sort order is sticky for session, back leaves.\n"
    },
    {
      "commit": "78bb372fb70b7c383ae4ab158734666de9ce8e95",
      "tree": "58bd1c77e81b433559dd4b8e38b8b57f32f4cf98",
      "parents": [
        "404c4855ab0f85bd5ccccf0d3e443819bad6762a",
        "af9272349fb9eed1653d5af0768c9517e36070a6"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 09 21:42:50 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 09 21:42:50 2013 -0700"
      },
      "message": "am af927234: Merge changes I7b3f4c68,I9f022a08 into klp-dev\n\n* commit \u0027af9272349fb9eed1653d5af0768c9517e36070a6\u0027:\n  Rename offer() to add(), remove/hide some APIs.\n  Sort order is sticky for session, back leaves.\n"
    },
    {
      "commit": "b7757a6b32edea62a1a9a803ad83579220f26100",
      "tree": "776fdedeb15d49f65d0d74e0d642d8bb52f640a2",
      "parents": [
        "fb3445c9b31c7f8401d6eec0606dabee366c8aad"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 09 17:46:54 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 09 17:55:10 2013 -0700"
      },
      "message": "Rename offer() to add(), remove/hide some APIs.\n\nChange MatrixCursor offer() to add() based on review feedback.  Remove\nsome now-unused XML metadata.  Hide document creation, since it\u0027s not\nsupported in initial version.\n\nBug: 10577809, 10461706, 10678563\nChange-Id: I7b3f4c6899c28f633471ef816bee22bf032aa0d2\n"
    },
    {
      "commit": "0b4c23efd9775bb43af60a545b4f9596715bcaac",
      "tree": "38e0ed0e045804769d55fabaf6b3b99eb106eb0b",
      "parents": [
        "86ebf2876dce04c845ae61846f3aa966d13eab8c",
        "6874b17d7937a4616a119aea58c8a9c8acef4e7f"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 09 17:15:23 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 09 17:15:23 2013 -0700"
      },
      "message": "am 6874b17d: am ff44ed58: Merge \"Disabled states, more UX work, bug fixes.\" into klp-dev\n\n* commit \u00276874b17d7937a4616a119aea58c8a9c8acef4e7f\u0027:\n  Disabled states, more UX work, bug fixes.\n"
    },
    {
      "commit": "6874b17d7937a4616a119aea58c8a9c8acef4e7f",
      "tree": "7ef6c654cec1e311ad59cfedea92c998c915975a",
      "parents": [
        "9163b1d9ceeca3e956218dda1ca19a748dc48d8d",
        "ff44ed58a1e38ff830e74b0d73549ff01725852d"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 09 17:10:24 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 09 17:10:24 2013 -0700"
      },
      "message": "am ff44ed58: Merge \"Disabled states, more UX work, bug fixes.\" into klp-dev\n\n* commit \u0027ff44ed58a1e38ff830e74b0d73549ff01725852d\u0027:\n  Disabled states, more UX work, bug fixes.\n"
    },
    {
      "commit": "3f4c205fd3110345241e690f2a2e7c1b477eac76",
      "tree": "48803386429a4bb8088dc97380df097d497e6268",
      "parents": [
        "d182bb641f228b2d28527a6aa86075f6358ab838"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 09 16:51:06 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 09 16:55:35 2013 -0700"
      },
      "message": "Disabled states, more UX work, bug fixes.\n\nFix drawable state to correctly show dimmed disabled state.  Update\ndisabled state for all children to grey out text.\n\nBlock multi-selection of documents not matching MIME filter.  Load\nthumbnails in parallel.  Show thumbnails in list mode based on MIME\ntype to match spec.\n\nGive each footer a unique view type to avoid recycler crashes.\n\nShow breadcrumb icons in recent create paths.  Fix timestamp bug when\nquerying/updating recent paths.\n\nMake ContentProviderClient.closeQuietly() really be quiet.\n\nBug: 10668364, 10510022, 10668701, 10534224, 10667726\nChange-Id: I3c705412fb211519f15ad41a273a7533b878e9e5\n"
    },
    {
      "commit": "c022ee7aced6f7cb6d186a26818a730a7763ddd8",
      "tree": "ae628acc33494bea0a25e0964c5bf5e56cc1f86d",
      "parents": [
        "81a0cb158b440d80601993e38435989021f67caf",
        "c91be7119e817f76f175da46ac26468fcb29b632"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 06 14:03:06 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 06 14:03:06 2013 -0700"
      },
      "message": "am c91be711: am e6bbcaf0: Merge \"Another asset drop, provider icons, tests.\" into klp-dev\n\n* commit \u0027c91be7119e817f76f175da46ac26468fcb29b632\u0027:\n  Another asset drop, provider icons, tests.\n"
    },
    {
      "commit": "c91be7119e817f76f175da46ac26468fcb29b632",
      "tree": "15aed3af05bd7236c56c069f23042c846b6a73d6",
      "parents": [
        "c268c442a154800c0a2fd3199fa4798b3dbb284c",
        "e6bbcaf0bc010563c1c65f51ff4610a7bde26609"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 06 14:00:34 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 06 14:00:34 2013 -0700"
      },
      "message": "am e6bbcaf0: Merge \"Another asset drop, provider icons, tests.\" into klp-dev\n\n* commit \u0027e6bbcaf0bc010563c1c65f51ff4610a7bde26609\u0027:\n  Another asset drop, provider icons, tests.\n"
    },
    {
      "commit": "6d97d3c1a2ebac4e3f32c7e5bc134864ace1c17f",
      "tree": "0095bc600df69f008cf3f6b1717c169a4bfef87d",
      "parents": [
        "911d7f411f36f2279aae44c89ff1d33a29140046"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 06 10:43:45 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Sep 06 10:46:54 2013 -0700"
      },
      "message": "Another asset drop, provider icons, tests.\n\nLatest asset update, including provider icons which are treated as\nspecial cases for now instead of checking into separate apps.  Add\ntests for MIME type matching of roots.  Remove unused XML.\n\nBug: 10510022\nChange-Id: Id567a9e06ba241f60ac011823e550253c6c797fb\n"
    },
    {
      "commit": "367176b5676cff07055192bd8141cdc6942567ca",
      "tree": "86fd39f0ec7077db8032e96cb8307c6aff4fec6e",
      "parents": [
        "be4e1e4247cd4b6e08da31e7c4f6b8abb5536795",
        "0c02096862437bf5c59ff8127addd2b0cda58da6"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Sep 04 04:44:03 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 04 04:44:04 2013 +0000"
      },
      "message": "Merge \"Import translations. DO NOT MERGE\""
    },
    {
      "commit": "063a7462a648752dadbbca89ea12365235b612a6",
      "tree": "d57310b13bd85890f8fd481990b995436e795231",
      "parents": [
        "597e7e0f21273ae35dc153b7e3a23e85170bb20d",
        "8dd4bee2405aa6d1868130c3cc02f68d627987f7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 03 21:39:17 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 03 21:39:17 2013 -0700"
      },
      "message": "am 8dd4bee2: am 5b3f4aa8: Merge \"Show loading, error, and info messages as footers.\" into klp-dev\n\n* commit \u00278dd4bee2405aa6d1868130c3cc02f68d627987f7\u0027:\n  Show loading, error, and info messages as footers.\n"
    },
    {
      "commit": "8dd4bee2405aa6d1868130c3cc02f68d627987f7",
      "tree": "19a1ff1bd5f7243471b2541759eccd290d6922dd",
      "parents": [
        "fe0a0873f9a321d2602950378cb1ad117836784a",
        "5b3f4aa84fe3f97075f4ed0763c9ee8a3dd2065d"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 03 21:36:12 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 03 21:36:12 2013 -0700"
      },
      "message": "am 5b3f4aa8: Merge \"Show loading, error, and info messages as footers.\" into klp-dev\n\n* commit \u00275b3f4aa84fe3f97075f4ed0763c9ee8a3dd2065d\u0027:\n  Show loading, error, and info messages as footers.\n"
    },
    {
      "commit": "954be0232655d316bc5decbbd35579af902c75c2",
      "tree": "745d4ea34ad245f3e9d87ef19a8910d47cdd3ad4",
      "parents": [
        "ded77187ef53341765fcab8e29cda94810fc2ca5"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 03 15:25:52 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 03 17:02:47 2013 -0700"
      },
      "message": "Show loading, error, and info messages as footers.\n\nA provider can include extras in their Cursors to indicate that\nloading is ongoing, or include an error or informational message,\nwhich are now shown in footer views.\n\nFix registration to always get change notifications.\n\nTest provider that verifies common provider behavior of holding\na reference to \"cloud\" resources that are released by GC when the\nremote Cursor is closed.  Also used to validate Recents behavior\nfor slow providers.\n\nBug: 10599268\nChange-Id: I331c31058dbb80261e7d279b851197c65ac87e32\n"
    },
    {
      "commit": "0c02096862437bf5c59ff8127addd2b0cda58da6",
      "tree": "f54e8f5afd48780d58040ae96c5113e173d4e2af",
      "parents": [
        "05862ebecae7bdf63878064a6cac682a5d16f0a1"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Tue Sep 03 10:10:16 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Tue Sep 03 10:10:16 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: If6461fff76109212bf1e28bf238c6876cb2fa0be\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "7e6d74494adabdec202ac5bc2514c12353f85435",
      "tree": "3ec32b65fe94c5b41bae924f6a5cd78cd5f90fc7",
      "parents": [
        "b5bf56ed0a29aa022dbb4ba6cc996133d8e8c173",
        "f56ae2b903a24a891cf349025c97c05134e88e59"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 02 20:58:57 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 02 20:58:57 2013 -0700"
      },
      "message": "am f56ae2b9: am 118cb035: Merge \"Filter roots based on incoming request.\" into klp-dev\n\n* commit \u0027f56ae2b903a24a891cf349025c97c05134e88e59\u0027:\n  Filter roots based on incoming request.\n"
    },
    {
      "commit": "f56ae2b903a24a891cf349025c97c05134e88e59",
      "tree": "c755728c254dfa82d29d84e7c3342208c6476599",
      "parents": [
        "92c7406b853f751d45a48306f9bc1899954382eb",
        "118cb0353f6dabce1a1d6b550f7fc9eb78c7de87"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 02 20:55:12 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 02 20:55:12 2013 -0700"
      },
      "message": "am 118cb035: Merge \"Filter roots based on incoming request.\" into klp-dev\n\n* commit \u0027118cb0353f6dabce1a1d6b550f7fc9eb78c7de87\u0027:\n  Filter roots based on incoming request.\n"
    },
    {
      "commit": "118cb0353f6dabce1a1d6b550f7fc9eb78c7de87",
      "tree": "b24a3bca50e9f23ecda406e6b8b676299c281cf3",
      "parents": [
        "7c925042061bf4b80cf80a7e6d94995c62eca7e1",
        "348ad6866b91afa4d59d45df533ef88094c74d13"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 03 03:50:55 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 03 03:50:56 2013 +0000"
      },
      "message": "Merge \"Filter roots based on incoming request.\" into klp-dev"
    },
    {
      "commit": "348ad6866b91afa4d59d45df533ef88094c74d13",
      "tree": "020b78712575e75216d246ff961af93c9247f051",
      "parents": [
        "251097b3789632000ccdaf7fb7d66a82ff37d882"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 02 17:19:40 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 02 17:43:14 2013 -0700"
      },
      "message": "Filter roots based on incoming request.\n\nWhen incoming request is for local-only content, or for ACTION_CREATE,\nonly include roots advertise those features.\n\nFilters roots based on the allowed MIME types and the supported types\nadvertised by each root.  This supports displaying Images and Audio\nroots only when requesting those content types.  Applies the same\nfilter when deciding which roots to query for recents.\n\nFixes advanced filtering instead of limiting to just devices. Update\nsorting so that Recent always appears first. Add testing support for\nLOCAL_ONLY.\n\nBug: 10597317, 10526535\nChange-Id: Ic5ccf475c4fe93fd52b29388d369d7f6915c0c42\n"
    },
    {
      "commit": "a2a772035f21cc8a04463360aa355e20044ff641",
      "tree": "3fe7e8cbcf106408160a7d308d76d7663613d037",
      "parents": [
        "7a632f76f90411d22152f7d6486c57189a7e1fc9",
        "8c58b79243748eeb98b650c8e660a742ad876452"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 02 17:14:37 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 02 17:14:37 2013 -0700"
      },
      "message": "am 8c58b792: am cd6d7dee: Merge \"Refactoring of DocumentsContract.\" into klp-dev\n\n* commit \u00278c58b79243748eeb98b650c8e660a742ad876452\u0027:\n  Refactoring of DocumentsContract.\n"
    },
    {
      "commit": "8c58b79243748eeb98b650c8e660a742ad876452",
      "tree": "7cfdc04514ebcec03ef1f13957a99e2fd83632f6",
      "parents": [
        "0b1621459378122cb92945a0c6ca1142da7fe9ac",
        "cd6d7deec8742e257a670db8e027f628afdf337e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Sep 02 17:09:15 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 02 17:09:15 2013 -0700"
      },
      "message": "am cd6d7dee: Merge \"Refactoring of DocumentsContract.\" into klp-dev\n\n* commit \u0027cd6d7deec8742e257a670db8e027f628afdf337e\u0027:\n  Refactoring of DocumentsContract.\n"
    },
    {
      "commit": "cd6d7deec8742e257a670db8e027f628afdf337e",
      "tree": "5745aabc61c5ed61d0877082c0e5ebd5eafecbab",
      "parents": [
        "61dda198598e95971ca224e3bcb7393f30e45657",
        "ae9b51bfa313c51a31af30875a71255d7b6d2e61"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 03 00:07:17 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 03 00:07:17 2013 +0000"
      },
      "message": "Merge \"Refactoring of DocumentsContract.\" into klp-dev"
    },
    {
      "commit": "ae9b51bfa313c51a31af30875a71255d7b6d2e61",
      "tree": "97179597056ef53aafbf952b22bf332954de0649",
      "parents": [
        "aeb16e2435f9975b9fa1fc4b747796647a21292e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Aug 31 15:02:20 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Aug 31 16:58:28 2013 -0700"
      },
      "message": "Refactoring of DocumentsContract.\n\nCombines related columns and constants onto the same class so they\nare easier to discover.  Move back to surfacing roots with columns\nso they are consistent with documents.\n\nAdvanced roots are represented with a flag instead of distinct\ntypes.  Flags to indicate supporting of well-known media types,\ninstead of arbitrary an MIME filter.  Reintroduce well-formed rootId\nto support recents.\n\nAlways use the expanded version of \"documents\" in constants, methods,\nand argument names.\n\nRefactor DocumentProvider method names to clearly distinguish if\na single item or multiple could be returned, and of which type.  Add\ndocumentation to clearly define which methods have already been\noverridden.\n\nBug: 10567506, 10567557\nChange-Id: I981f26ab82f2b520a19aa1ce66f659de50d7fac0\n"
    },
    {
      "commit": "98486543ccb2fc5b46baecf12508808af7a71e72",
      "tree": "d166c1f8bd60a4f08a00ec6b4427c56be1150b5a",
      "parents": [
        "5e20b72b0ccd67e6b7e2bb7d9b5640c48c414c61",
        "6607275b3a99b28f4176f8f8cc87f46c5ed051db"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Aug 28 21:35:17 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 28 21:35:17 2013 -0700"
      },
      "message": "am 6607275b: am 9fd81a90: Merge \"Stronger DocumentsProvider contract.\" into klp-dev\n\n* commit \u00276607275b3a99b28f4176f8f8cc87f46c5ed051db\u0027:\n  Stronger DocumentsProvider contract.\n"
    },
    {
      "commit": "6607275b3a99b28f4176f8f8cc87f46c5ed051db",
      "tree": "1e0c068c3256d1cc2c69667a218c2ff4d32a3c6d",
      "parents": [
        "28b8eb91bc2fda27bdde82dad3fcba01fbb4cd04",
        "9fd81a9008d5c8dd33272b6a451d89fa2fa1841e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Aug 28 21:32:08 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 28 21:32:08 2013 -0700"
      },
      "message": "am 9fd81a90: Merge \"Stronger DocumentsProvider contract.\" into klp-dev\n\n* commit \u00279fd81a9008d5c8dd33272b6a451d89fa2fa1841e\u0027:\n  Stronger DocumentsProvider contract.\n"
    },
    {
      "commit": "9fd81a9008d5c8dd33272b6a451d89fa2fa1841e",
      "tree": "972eb1e03b7baf79f25363cb55954aaa1e216eea",
      "parents": [
        "166853e6c90abe84c556a574589419f576c5e986",
        "aeb16e2435f9975b9fa1fc4b747796647a21292e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Aug 29 04:27:02 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 29 04:27:02 2013 +0000"
      },
      "message": "Merge \"Stronger DocumentsProvider contract.\" into klp-dev"
    },
    {
      "commit": "aeb16e2435f9975b9fa1fc4b747796647a21292e",
      "tree": "2e228b0ca25799bf59472d5df08d71e068498b2b",
      "parents": [
        "61f0f9ada51a6718075acfe7fafbb9954f38e980"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Aug 27 18:26:48 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Aug 28 20:49:42 2013 -0700"
      },
      "message": "Stronger DocumentsProvider contract.\n\nUsing a contract class requires that a provider implement it exactly\nwith little help. This change introduces a DocumentsProvider abstract\nclass that provides a client-side implementation of the contract that\ngreatly reduces developer burden, and improves correctness.\n\nThis also moves to first-class DocumentRoot objects, and moves calls\nwith complex side effects to be ContentProvider.call() invocations,\noffering more granular permission control over Uri operations that\nshouldn\u0027t be available through Uri grants.\n\nThis new design also relaxes the requirement that root information be\nburned into every Uri.  Migrate ExternalDocumentsProvider and\nDocumentsUI to adopt new API.\n\nBug: 10497206\nChange-Id: I6f2b3f519bfd62a9d693223ea5628a971ce2e743\n"
    },
    {
      "commit": "1aa207398e04c2fc8150c7445532902ad43b19bf",
      "tree": "5a2dd1458c52b796c161d529f5b641dc1f0dfd0f",
      "parents": [
        "a31d3fa2935637fe98ddbdd2a9e409e146d21959"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Aug 28 18:09:00 2013 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Aug 28 18:09:00 2013 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I6c791fa210df4aea49e2b0ffaaf852ae6fc90cb1\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "b49ebe203e565c6bae5e5459c94111885b7fd571",
      "tree": "af89b257e4816ff64af19d31f68e77394b920baf",
      "parents": [
        "bcc057ef037b35ead3f85e112d67f4fb27f965e9",
        "78ff92cc3298bdfc96c1f5eda4a8a9a88c298f4c"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Wed Aug 28 00:43:05 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 28 00:43:05 2013 +0000"
      },
      "message": "Merge \"Import translations. DO NOT MERGE\""
    },
    {
      "commit": "308aacb924898b95d6114edfff3a985c897f2c6f",
      "tree": "8eb793562ac9022d73ba28c67d315340a6fba664",
      "parents": [
        "d0fcacd949cd8b42b37d238a4ba74e3c29325277",
        "365768fd3533343d6631875d7d46882907f7ab09"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Aug 26 15:02:57 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 26 15:02:57 2013 -0700"
      },
      "message": "am 365768fd: Merge \"Return EXIF thumbnails when available.\" into klp-dev\n\n* commit \u0027365768fd3533343d6631875d7d46882907f7ab09\u0027:\n  Return EXIF thumbnails when available.\n"
    }
  ],
  "next": "78ff92cc3298bdfc96c1f5eda4a8a9a88c298f4c"
}
