)]}'
{
  "log": [
    {
      "commit": "0d50d8660dac35f7eceb5d74756de0417095b427",
      "tree": "576ed2037192e1e86f39e6be7fb55e1ef4b466dd",
      "parents": [
        "1b8189d825746ff7d786c28ecf69abbd481e7b05"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Tue Mar 29 15:43:28 2016 -0700"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Thu Mar 31 18:42:22 2016 +0000"
      },
      "message": "Add wallpaper input consumer to WindowManagerService\n\nThis is an input consumer similar to the one used when hiding the navbar,\nbut placed above wallpapers. It might be useful for processing touch\nevents over \"desktop\" in freeform MW mode.\n\nRe-landing I9d6d28a624f750ad48fc39f9b149dd1f989cceba after fixing build.\n\nBug:26688904\nChange-Id: I89fdabd9c72cdd4a1d7ca626c33ddc99ddea97f9\n"
    },
    {
      "commit": "fc970ab65ad8c860dd0654d59b70bbe271f95784",
      "tree": "5955fcb8488c70e647fe96a09246642cf2817416",
      "parents": [
        "9a99629eaa79a7e6c3bcc0ecf674bd7981fef5a0"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 26 11:03:39 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Mar 30 17:53:23 2016 +0000"
      },
      "message": "Implement VirtualRefBasePtr native methods\n\nThe VirtualRefBasePtr is used to track the usage of native objects from\nthe java side by reference counting. Implementing the class delegate to\nmake sure we dispose the objects correctly.\n\nChange-Id: I3dd4717944b0dbe79f30e49b3083bf65c6e5276d\n"
    },
    {
      "commit": "0b10c335c72cb610e71432a61f315e7670b9af41",
      "tree": "2f7289aff1fa257fd3d7557aede948d896b4925e",
      "parents": [
        "15d4b5aae852f4c4df9b4a97d86fb4e304cfd677"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Tue Mar 29 13:15:41 2016 -0700"
      },
      "committer": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Tue Mar 29 13:42:06 2016 -0700"
      },
      "message": "Ensure we change SurfaceView size from UI thread.\n\nWe need to change the SurfaceView size from the UI thread\nso that we can appropriately deliver the SurfaceChanged\ncallback. We also need to not preserve geometry\nin this case, as if we don\u0027t update the surface\nand layout size together we could get scaling. This still has\nsome potential for holes, as transactions are not synced with\nthe parent renderer, but we have other methods to avoid\nthese in the case of resizing. This fixes the remaining\nissues with content sizing and surface view \"out of sync\".\n\nBug: 27780983\nBug: 27687126\nBug: 27676101\n\nChange-Id: Idd7864f00e5cf7a4eb32dd66c0b389292a788069\n"
    },
    {
      "commit": "83b9db029b6fe02761e1c8e50eb8dce6f4d37d0f",
      "tree": "a503e3cfacee16d7dbcca95660cabddc90366291",
      "parents": [
        "7d47079acf1c8a3143606542c69832863711662a",
        "97c0679b1a4e650191203d1a03159b3dec67252e"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Mar 28 17:07:12 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 28 17:07:13 2016 +0000"
      },
      "message": "Merge \"Fix menu popup rendering\" into nyc-dev"
    },
    {
      "commit": "97c0679b1a4e650191203d1a03159b3dec67252e",
      "tree": "22b151be00f1252c092f950b4a885c70443ce8c0",
      "parents": [
        "3e2b413dc72f267571421cfb0c8ced7a4778704a"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Mar 28 09:57:24 2016 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Mar 28 09:57:24 2016 -0700"
      },
      "message": "Fix menu popup rendering\n\nChange-Id: I3394866d72af7fd1762ac477529a4a1bc473b7dc\n"
    },
    {
      "commit": "ceb1ab1d2a71c6d4e0cccf110a198ff83cb97e5a",
      "tree": "d411e70cf813ef74054936d6e5cffc557feb385e",
      "parents": [
        "618ca261f370c257723a3c7a5871bb6f6b4d7f3a"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Mar 24 13:41:46 2016 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Mar 24 14:27:21 2016 -0700"
      },
      "message": "Add tests for getResource*Name()\n\nChange-Id: I02170b2b68c76f817aa0771a5333abf2aee456c0\n"
    },
    {
      "commit": "618ca261f370c257723a3c7a5871bb6f6b4d7f3a",
      "tree": "5d45c303b9fcfaf9182de4fa1ffde14eb8f37122",
      "parents": [
        "4bbbeaa68b3d2c8ecf4918b98999469b7ca3a813"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Mar 18 19:39:58 2016 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Mar 24 12:02:17 2016 -0700"
      },
      "message": "Support getResource*Name() methods for Resources\n\nThe following methods are now supported:\ngetResourceEntryName\ngetResourcePackageName\ngetResourceTypeName\ngetResourceName\n\nBug: http://b.android.com/181872\nChange-Id: If06b5e0687ab6f8cb20ab77f339870dd08a84ce1\n"
    },
    {
      "commit": "3e5bf786b7ca36fa0cc150fcd8d0e7a69ecb9db0",
      "tree": "8eb6eca2c64bc402d6ebfb3b068828014223aa98",
      "parents": [
        "e014b9ef686436c5d3b6c02f2d936ee0043e55f2",
        "fcd7e80b21cc9db6be00e37371401ea1d0938796"
      ],
      "author": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Thu Mar 24 13:30:46 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 24 13:30:48 2016 +0000"
      },
      "message": "Merge \"Keyboard Shortcuts: plumb deviceId through\" into nyc-dev"
    },
    {
      "commit": "fcd7e80b21cc9db6be00e37371401ea1d0938796",
      "tree": "2bdb9e7bebec34d585bbfe612bb2ca520a9af04a",
      "parents": [
        "b9057df9f5f84811d5ed020974f77daba38c2f81"
      ],
      "author": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Thu Mar 10 12:58:18 2016 +0000"
      },
      "committer": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Thu Mar 24 11:47:32 2016 +0000"
      },
      "message": "Keyboard Shortcuts: plumb deviceId through\n\nBug: 27673736\nChange-Id: Ie72807aa8c2bfd142b081a6a915e101c16d31473\n"
    },
    {
      "commit": "f0fce3e9ceb6cd165488c28f390181c5b2877cee",
      "tree": "0a346f89625f11f19e9474ec2ae8405bc46d3589",
      "parents": [
        "b320eb928f17e6aba0c833281970d1def3834755",
        "5ceb30f2164c745789c13bd0060e57fa8c04a8fd"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Mar 23 18:45:28 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 23 18:45:29 2016 +0000"
      },
      "message": "Merge \"Add fill type support to vector drawable\" into nyc-dev"
    },
    {
      "commit": "5ceb30f2164c745789c13bd0060e57fa8c04a8fd",
      "tree": "f28622a649aa145e4d497c10167db67d2fa430e4",
      "parents": [
        "ace5a7819486309a639fb4f4505839f46db55e3c"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Mar 22 11:29:47 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Mar 23 09:40:23 2016 +0000"
      },
      "message": "Add fill type support to vector drawable\n\nThe platform has added fill type to vector drawables. This CL implements\nthe native replacement.\nAlso remove a couple of delegates for classes that have been removed\nfrom the platform.\n\nChange-Id: Ie6ba344db9c9c2c45cd0ef4b99f11f9d8bcfd7de\n"
    },
    {
      "commit": "3db51d19990485be0baa191e4c616ca2367dadf2",
      "tree": "ad517873f9197354645b8005b1740383f89cdf5c",
      "parents": [
        "0f4ab53a53fb77f9d5d72a1d1ff8b77c1b4ef062",
        "6136273888c42faad74dce19ec49904a55affc15"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Mar 22 18:05:31 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 22 18:05:33 2016 +0000"
      },
      "message": "Merge \"Don\u0027t change geometry in relayout if preserve geometry is requested\" into nyc-dev"
    },
    {
      "commit": "21412f09b92c8e118c535420a2c2912fa8c58722",
      "tree": "351563c57598c3e5ab291983caba84367c1ae9e9",
      "parents": [
        "5ec323aea2f08ba34911962fdf2b7cad5e801b9f",
        "ebf3261aa6d80ad4ca1df0fd0509961ff7a1914e"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Mar 22 17:40:20 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Mar 22 17:40:20 2016 +0000"
      },
      "message": "Merge \"Remove BufferedImage allocation from PorterDuff filter\" into mnc-ub-dev\nam: ebf3261\n\n* commit \u0027ebf3261aa6d80ad4ca1df0fd0509961ff7a1914e\u0027:\n  Remove BufferedImage allocation from PorterDuff filter\n"
    },
    {
      "commit": "ebf3261aa6d80ad4ca1df0fd0509961ff7a1914e",
      "tree": "d97ef16d1eb01aeb51c7ade7cf253cfac824b4ca",
      "parents": [
        "86621737fc1ba2d6ce7cb97e61fc8ce186eb851a",
        "c1a8e3311fe63d3b1edad542aea9c7e4f118808a"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Mar 22 17:33:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 22 17:33:05 2016 +0000"
      },
      "message": "Merge \"Remove BufferedImage allocation from PorterDuff filter\" into mnc-ub-dev"
    },
    {
      "commit": "6136273888c42faad74dce19ec49904a55affc15",
      "tree": "897ebbdd56fe8a25ac012bafc84fd85122038609",
      "parents": [
        "9545d8e3377e73eb7d781360910b733760d3b0fb"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon Mar 21 16:13:10 2016 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Mar 22 10:28:27 2016 -0700"
      },
      "message": "Don\u0027t change geometry in relayout if preserve geometry is requested\n\nThis causes scaling to be applied in the relayout window since the\nrequested size won\u0027t match the window size. Apply the requested size\nin repositionChild instead.\n\nbug: 27676101\nChange-Id: I03beee2b9fe118a6be329b5fd1338d54e48d9a22\n"
    },
    {
      "commit": "cd6e47e4455cec8daa4570ac8073d93bd567d139",
      "tree": "54a075f5ebe70ff7661f62c0fd463439ab0c63d0",
      "parents": [
        "8c536f91f1a72f671d41d54b3aeda4d70ee90d49"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Mar 21 14:07:20 2016 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Mar 21 14:07:20 2016 -0700"
      },
      "message": "Add guard around getXmlFileParser() call\n\nPrevents the need to update the LayoutLib API level.\n\nBug: http://b.android.com/202942\nChange-Id: I507239148ab8d6d45406624dba569c8b7197f979\n"
    },
    {
      "commit": "86621737fc1ba2d6ce7cb97e61fc8ce186eb851a",
      "tree": "ce0c36e04db5d0d719afd127031a9bb76bbed746",
      "parents": [
        "f2af68312bdcbb19411df21553d514c6aa1989bf",
        "13d2e2e10b5f010b4ab53ff9d26e53d32f225e72"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Mar 21 18:53:55 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 21 18:53:57 2016 +0000"
      },
      "message": "Merge \"Add guard around getXmlFileParser() call\" into mnc-ub-dev"
    },
    {
      "commit": "13d2e2e10b5f010b4ab53ff9d26e53d32f225e72",
      "tree": "4d6c34ec4b22362ffc18d42b6d762492b77690e5",
      "parents": [
        "ebdcc80ac26ae51ba27d9469a501a6242256aa50"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Mar 21 08:53:13 2016 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Mar 21 08:53:13 2016 -0700"
      },
      "message": "Add guard around getXmlFileParser() call\n\nPrevents the need to update the LayoutLib API level.\n\nBug: http://b.android.com/202942\nChange-Id: I507239148ab8d6d45406624dba569c8b7197f979\n"
    },
    {
      "commit": "38735b00267b55219a77317ec3ce5ca60c5edd06",
      "tree": "d6dd527d195a94fbaf2ab246bc7dfc8254e73062",
      "parents": [
        "c1d317f7141801e031abae7bd3aba1183a616230",
        "d15459197f71f8cc940e2b057b399117df282f2c"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 21 11:20:13 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 21 11:20:14 2016 +0000"
      },
      "message": "Merge \"Account for parent scroll position\" into nyc-dev"
    },
    {
      "commit": "1064d35307cff0601a22c8401cb72f628883489d",
      "tree": "0a58d0dd14c2cfb7762239405ca6cfb039049db1",
      "parents": [
        "fbf90eb0296b96120f91d40876e10507cb5c273a",
        "19a80a1e807acd00bec999eaac7812da6ffce954"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Sat Mar 19 00:36:20 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 19 00:36:22 2016 +0000"
      },
      "message": "Merge \"Tell IMS about missing InputConnection methods.\" into nyc-dev"
    },
    {
      "commit": "4f29d45ad44cc2e754000848e07b950e519e0b89",
      "tree": "1e2db01328f106a6bab28c1646ccf704908fed3b",
      "parents": [
        "620a28bad2b1ddabddf2d78b5a20a762ebc29205",
        "86b66c5ef6f2170c1da74beba550b82a858ea09a"
      ],
      "author": {
        "name": "Tony Mantler",
        "email": "nicoya@google.com",
        "time": "Fri Mar 18 21:20:48 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 18 21:20:49 2016 +0000"
      },
      "message": "Merge \"Fix build\" into nyc-dev"
    },
    {
      "commit": "86b66c5ef6f2170c1da74beba550b82a858ea09a",
      "tree": "32d31291f5f5aaad409812376105cf3d38967ca8",
      "parents": [
        "b8009fddd85aa5ecd6b2321f92a1ae0568089a54"
      ],
      "author": {
        "name": "Tony Mantler",
        "email": "nicoya@google.com",
        "time": "Fri Mar 18 13:06:56 2016 -0700"
      },
      "committer": {
        "name": "Tony Mantler",
        "email": "nicoya@google.com",
        "time": "Fri Mar 18 13:06:56 2016 -0700"
      },
      "message": "Fix build\n\nChange-Id: I590db57366a40aa011ee02e6e34e64cd2e7d1115\n"
    },
    {
      "commit": "d15459197f71f8cc940e2b057b399117df282f2c",
      "tree": "04ec796388fe11caba2a76eb08b7307e2785979a",
      "parents": [
        "b4cab0bd5d5929731e0f408cbacba36a4fc7f4af"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Mar 04 18:33:26 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Mar 18 16:52:39 2016 +0000"
      },
      "message": "Account for parent scroll position\n\nWhen calculating the ViewInfo bounding box, account for the parent\nscroll position.\nAlso make renderAndVerify return a RenderResult to verify some data\nabout the result layout.\n\nChange-Id: I965e393c49b5030c80083daf5e058fa31400ce93\n"
    },
    {
      "commit": "8a372a0a280127743ce9a7ce4b6198c7a02d2a4f",
      "tree": "f2446f9d00e6dc0be78885db357719b9b3830e48",
      "parents": [
        "58ae278294017abca0dffc95f006ae646c88db89"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Mar 16 16:25:45 2016 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Mar 17 14:49:08 2016 -0600"
      },
      "message": "Refactoring FBE APIs based on council feedback.\n\nMostly consists of removing the word \"encryption\" from most APIs,\nsince we can\u0027t actually make promises about the data being encrypted.\n\nBug: 27531029\nChange-Id: Iace9d7c4e64716abf86ed11847c40f3947e1d625\n"
    },
    {
      "commit": "f9124ecad9ec20f572df8cdca6f985ef3f97210d",
      "tree": "43492e863c64e8a6f4872d77960cc03bc9970eab",
      "parents": [
        "886ad0690bd3b4e7ee08f032432eefe53a2bdaa9",
        "bbb3ff2b2a29d42771a9ce2fe2d6f576cff62617"
      ],
      "author": {
        "name": "Benjamin Franz",
        "email": "bfranz@google.com",
        "time": "Wed Mar 16 23:51:43 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 16 23:51:44 2016 +0000"
      },
      "message": "Merge \"Flush package restriction changes for a user.\" into nyc-dev"
    },
    {
      "commit": "bbb3ff2b2a29d42771a9ce2fe2d6f576cff62617",
      "tree": "8ac2249728f187ca613a274f85755875c7c9ee78",
      "parents": [
        "466b702cac1ba6102c0c96b6528b4b0b30cd0a0b"
      ],
      "author": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Thu Jul 09 15:39:23 2015 +0100"
      },
      "committer": {
        "name": "Benjamin Franz",
        "email": "bfranz@google.com",
        "time": "Wed Mar 16 01:42:23 2016 +0000"
      },
      "message": "Flush package restriction changes for a user.\n\nChange-Id: I7c4481f820b6b368487d00de6c783e64cec99f4b\n"
    },
    {
      "commit": "19a80a1e807acd00bec999eaac7812da6ffce954",
      "tree": "440af192035b786fdf2b0ffa0045aca120e5e428",
      "parents": [
        "13e22319e4d0bf24c3fd08649e180be648f28ad5"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Mon Mar 14 22:57:37 2016 -0700"
      },
      "committer": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Tue Mar 15 06:43:39 2016 +0000"
      },
      "message": "Tell IMS about missing InputConnection methods.\n\nSummary:\n  This CL introduces a unified mechanism to deal with the situation\n  where the application directly implements InputConnection but some of\n  methods are not implemented.  Note that there should be zero overhead\n  when the application extends BaseInputConnection or\n  InputConnectionWrapper.\n\nBackground:\n  When ever we add a new method to InputConnection, there has been a\n  risk that existing applications that directly implement\n  InputConnection can get java.lang.AbstractMethodError exception at\n  runtime, because older SDKs do not require the application developer\n  to implement the methods that are newly added in later SDKs.  Because\n  of this we strongly discouraged developers to directly implement\n  InputConnection interface, and encouraged them to subclass\n  BaseInputConnection or InputConnectionWrapper instead.  That said, as\n  requested in Bug 26945674, there is a certain demand to be able to\n  implement InputConnection without depending on BaseInputConnection.\n  The goal of this CL is to provide a reliable and sustainable solution\n  to above missing method scenario in InputConnection.\n\n  One of the reasons why dealing with missing InputConnection methods is\n  so difficult is that what InputMethodService receives to communicate\n  with the target application is actually a proxy class\n    com.android.internal.view.InputConnectionWrapper\n  that runs in the IME process and immediately returns true for most of\n  methods in InputConnection such as #commitText() and\n  #finishComposingText().  Because of this asynchronous nature, it is\n  too late to change the actual return value that the IME receives when\n  the application receives those one-way asynchronous IPC calls.\n\nSolution:\n  To handle those cases, this CL checks the availability of\n  InputConnection methods that did not exist in the initial release\n  before the target application calls startInput(), and let the\n  application to send its availability bits to IMMS so that\n  InputConnectionWrapper running in the IME process can be initialized\n  with such availability bits.  Note that we do know that\n  BaseInputConnection and its subclasses support all the InputConnection\n  methods, hence for most of applications we can just assume that all\n  the methods are available without reflection.\n\n  With such availability bits, InputConnectionWrapper is now able to\n  gracefully return failure code to the IME because the availability of\n  those methods is immutable, except for a tricky case where the\n  application relies on a proxy object that dynamically changes the\n  dispatch target.\n\n  Here is the list of APIs that we start checking the availability in\n  this CL.\n    [API Level 9+]\n     - InputConnection#getSelectedText(int)\n     - InputConnection#setComposingRegion(int, int)\n    [API Level 11+]\n     - InputConnection#commitCorrection(CorrectionInfo)\n    [API Level 21+]\n     - InputConnection#requestCursorUpdates(int)}\n    [API Level 24+]\n     - InputConnection#deleteSurroundingTextInCodePoints(int, int)\n     - InputConnection#getHandler()\n\nIdeas alternatively considered: Default methods in InputConnection\n  We once considered having default methods in InputConnection but\n  abandoned this idea because it does not directly solve the problem\n  about how to tell the that the API does not take effect.\n  Also having default methods would make it difficult for application\n  developers to be aware of newly added methods in InputConnection.\n\nBug: 27407234\nBug: 27642734\nBug: 27650039\nChange-Id: I3c58fadd924fad72cb984f0c23d3099fd0295c64\n"
    },
    {
      "commit": "7400f82699c76618d5ca24d6528580afb4695dbf",
      "tree": "49608a1fbfdbe5ad700c420492276a0be3d3e2b7",
      "parents": [
        "aa0fa38432abca1c8d3b88754eb60a45e75a65ef",
        "d5c2db630fc816e2d9154a61ccbd6770bc57cff8"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Mar 15 03:26:00 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 15 03:26:02 2016 +0000"
      },
      "message": "Merge \"Don\u0027t show wallpaper when backdrop is visible\" into nyc-dev"
    },
    {
      "commit": "d5c2db630fc816e2d9154a61ccbd6770bc57cff8",
      "tree": "b38547fd02770a7a8e7011916a6af1647a69642a",
      "parents": [
        "62006a72a66ddc5849b28d7ceaaa304b66aa3dc9"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Mar 08 16:11:31 2016 -0800"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Mon Mar 14 18:55:41 2016 -0700"
      },
      "message": "Don\u0027t show wallpaper when backdrop is visible\n\nHides the wallpaper when it\u0027s not needed and fixes\nthe unlock animation to not unnecessairly show the\nwallpaper if neither the Keyguard nor the underlying\napp need it.\n\nAlso fixes a bug where the enter animation had a background\nset, which led to uglyness when no wallpaper is involved.\n\nBug: 27533740\nChange-Id: I667c6f7ca6c0e1ff7e9f793c6ddc13f6da8387b1\n"
    },
    {
      "commit": "adf62b3ebc8ae5e3e76cf6cfce978e8d1ca5bf8e",
      "tree": "e9f87b901060e0248fd6bbe0a842d97c5eadd36c",
      "parents": [
        "497b473b8a6c898b3c05aeb8d3b80c611d7e78b0"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 14 09:31:07 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 14 09:31:07 2016 +0000"
      },
      "message": "Do not deallocate on Bitmap.recycle\n\nLayoutlib only disposes the bitmap and doesn\u0027t recycle them. This causes\na double deallocation that triggers an assertion.\nThis change makes Bitmaps to be only freed when the finalizer is called.\n\nBug: http://b.android.com/203129\nChange-Id: Ieabc1443544cfd2b4bf8ba9c8f9a4df8dd6e8220\n"
    },
    {
      "commit": "95b69f82316220bc40d227bf7208920eb6ed9283",
      "tree": "278bf8f19e068290315c592fb8deba626b1e0929",
      "parents": [
        "13d66d8456ec4661a9eda5f26e72b1d9188bfbe6",
        "d47e7e1176dcf6961c7c9fce215f48f03a5098d1"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Mar 11 12:02:36 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 11 12:02:38 2016 +0000"
      },
      "message": "Merge \"Add ability to swap docked/fullscreen stack\" into nyc-dev"
    },
    {
      "commit": "d47e7e1176dcf6961c7c9fce215f48f03a5098d1",
      "tree": "b160096a942d715b0f76b602f745231a76547e79",
      "parents": [
        "899327f5cbbfb0eae5562b262ccea860c98f6bc4"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Mar 01 09:57:38 2016 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Mar 10 19:49:45 2016 +0100"
      },
      "message": "Add ability to swap docked/fullscreen stack\n\nAdds tap affordance that moves all tasks of the docked\nstack into the fullscreen stack as well as moves the top task\nof the fullscreen stack into the docked stack.\n\nAlso make sure not to trigger focus switch when tapping the divider\nhandle. For that, add a method so SysUI can specify the touchable\nregion which then gets excludes for the focus switch touch region.\n\nBug: 27358134\nChange-Id: I34f39c53cacc0b9c00f87a792b88c3f64a5f61e1\n"
    },
    {
      "commit": "f2af68312bdcbb19411df21553d514c6aa1989bf",
      "tree": "96debcc0cd7c59cc36a8823882e17317f6b5c4bc",
      "parents": [
        "af0f3bda17ee3de4ad3560c9a675527b20e2af5f",
        "25913465464270f9332065cb31d0ac0a348edab1"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 10 16:06:39 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 10 16:06:41 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE: Initialize layoutlib variables before using them\" into mnc-ub-dev"
    },
    {
      "commit": "f1c6e0bd7bb2f7683207048978af4fb87ee3f7c1",
      "tree": "876ec5ee35f6088c23426a58c3ed7bf8003af1e6",
      "parents": [
        "713be06f7aa70288b4bf811d7cf9c0220c09e9c0",
        "af0f3bda17ee3de4ad3560c9a675527b20e2af5f"
      ],
      "author": {
        "name": "Siva Velusamy",
        "email": "vsiva@google.com",
        "time": "Tue Mar 08 13:58:52 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Mar 08 13:58:52 2016 +0000"
      },
      "message": "BridgeContext: Fix typo in attr name (toLeft -\u003e toLeftOf)\nam: af0f3bda17\n\n* commit \u0027af0f3bda17ee3de4ad3560c9a675527b20e2af5f\u0027:\n  BridgeContext: Fix typo in attr name (toLeft -\u003e toLeftOf)\n"
    },
    {
      "commit": "af0f3bda17ee3de4ad3560c9a675527b20e2af5f",
      "tree": "afcb507b2cf2aaeece47474efa6f81a4decc7d5d",
      "parents": [
        "9b137e27d34efb89024543ffd2def2b37307aa0c"
      ],
      "author": {
        "name": "Siva Velusamy",
        "email": "vsiva@google.com",
        "time": "Mon Mar 07 17:19:31 2016 -0800"
      },
      "committer": {
        "name": "Siva Velusamy",
        "email": "vsiva@google.com",
        "time": "Tue Mar 08 13:52:02 2016 +0000"
      },
      "message": "BridgeContext: Fix typo in attr name (toLeft -\u003e toLeftOf)\n\nChange-Id: I214ddf066bd69d56275477712419745cf781cee3\n"
    },
    {
      "commit": "39b205cc92bfc84e6eee5c7c4713ee9ab5bb645e",
      "tree": "c89c3e70bfba701a88a2f65f4279ee72bd2b4c69",
      "parents": [
        "0ebc68a0e2134cc70b6df8eb6cb37352007f7293"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 07 22:12:01 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 07 22:12:01 2016 +0000"
      },
      "message": "Add missing references to VNativeObject\n\nChange-Id: I2db4ad94009c0daff4649da6f85e5c084f4c01ea\n"
    },
    {
      "commit": "7ba6dc0fcc66c96383aabd8db40adf1bac66ce7f",
      "tree": "06e3483b8d89acb55622227156ef25c1e30ef1d3",
      "parents": [
        "5b5b1c0c5debd7a90c086f36cbafa688c857a673",
        "e05f1c4684fcc7e3f6a429ff01b210aa19f75304"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@google.com",
        "time": "Mon Mar 07 20:28:12 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 07 20:28:14 2016 +0000"
      },
      "message": "Merge \"Change BridgeResources to Resources_Delegate\" into nyc-dev"
    },
    {
      "commit": "5b5b1c0c5debd7a90c086f36cbafa688c857a673",
      "tree": "622d0f3afdf21214f6263ec16313db367acb638d",
      "parents": [
        "53185a50d18239088f5a2f3cf9a11a6da7a286fb",
        "8a9a824cd5641d214906a20a2a9372e62e9f3fb8"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@google.com",
        "time": "Mon Mar 07 20:26:55 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 07 20:26:56 2016 +0000"
      },
      "message": "Merge \"Animated vector drawable support\" into nyc-dev"
    },
    {
      "commit": "25913465464270f9332065cb31d0ac0a348edab1",
      "tree": "e3c0b0381ef1dd906b84b01aa11e5bc583594a4e",
      "parents": [
        "9b137e27d34efb89024543ffd2def2b37307aa0c"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 07 14:57:48 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 07 15:00:10 2016 +0000"
      },
      "message": "DO NOT MERGE: Initialize layoutlib variables before using them\n\nChange-Id: I0d2059423b46f5eb9eb50eb226cbe9a15e57fe02\n"
    },
    {
      "commit": "566b303365078fac9a454f1595add19e02631db3",
      "tree": "d9ce2b2eb0a950d6ffcf8fe41ee83a5414c06fc8",
      "parents": [
        "bf8ff76fee7cbf3d2002207f3eb52eb58014c6ad"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Mar 01 16:20:43 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 07 09:11:11 2016 +0000"
      },
      "message": "Add support for GradientColor in layoutlib\n\nChange-Id: Ia9a55a9e00d7ddb5263f3dbe46b5da8dde457526\n"
    },
    {
      "commit": "e05f1c4684fcc7e3f6a429ff01b210aa19f75304",
      "tree": "e78fa776b10ae7d6c2b777daaa3b56667aa89e7f",
      "parents": [
        "bf8f1cc3c0d9931828d166aea585b6b29d4c6664"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Mar 04 19:31:28 2016 +0530"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 07 09:09:02 2016 +0000"
      },
      "message": "Change BridgeResources to Resources_Delegate\n\nThis is a very hacky fix to make layoutlib work with the latest support\nlib. Inject a couple of fields in android.content.res.Resources to\nallow using most of the earlier code as is.\n\nBug: 27403642\nBug: http://b.android.com/201934\nChange-Id: Ia96a1b4642a1907a77d9ca7a2392f78809b92e38\n"
    },
    {
      "commit": "9b137e27d34efb89024543ffd2def2b37307aa0c",
      "tree": "9a8078d3eaf0998ac9b39d7880bb4a0b48d12a17",
      "parents": [
        "b75a0426d8c2339f2d552f96cc4dfcd86deb3447"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Mar 04 19:31:28 2016 +0530"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Mar 04 20:18:23 2016 +0530"
      },
      "message": "Change BridgeResources to Resources_Delegate [DO NOT MERGE]\n\nDo not merge because the resource implementation has changed in N and\nthe change is no longer valid there.\n\nThis is a very hacky fix to make layoutlib work with the latest support\nlib. Inject a couple of fields in android.content.res.Resources to\nallow using most of the earlier code as is.\n\nBug: 27403642\nBug: http://b.android.com/201934\nChange-Id: I186cad32b1b4de64164fbad937d989e0110c6976\n"
    },
    {
      "commit": "8d5a542f66beae774354038f15dd1afe7fcf754b",
      "tree": "fea20281d9e72db7c86fdd31bd4e90ed996d6e04",
      "parents": [
        "6d6bbf5f2808e822326322e03c9d336906ff12e4"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Thu Mar 03 18:28:21 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Thu Mar 03 18:59:26 2016 -0800"
      },
      "message": "Clear app token mAppStopped when app resumes.\n\nIt is possible for an activity to be in the stopped state without\nsetting it\u0027s visiblility to false in window manager.\nFor example, the home acitivty behind the lock screen. Since the\nlock screen isn\u0027t an activity it doesn\u0027t affect the visiblity set\nof the home activity, so AM doesn\u0027t tell WM to hide the app token.\nHowever, AM uses another channel to detect that the device is locked\nand moves the activity into stopped state. WM on the other hand also\ndetects that the device is locked and hides the window surfaces of\nall windows behind the lock screen. So, at this point AM has also\ntold WM that the activity is stopped. Once you unlock the screen\nAM resumes the activity but doesn\u0027t report any visiblility changes to WM\nsince it\u0027s internal state didn\u0027t change. So, if you go from the home\nactivity to another app the home activity window will be destroyed\nbefore the activity is stopped because mAppStopped is set to true.\nWe now set mAppStopped to false when the activity is resumed.\n\nBug: 27286867\nChange-Id: Ic75456d30abd582fa44f932f5aeeb449950157ee\n"
    },
    {
      "commit": "1b338cda4ed044691f0fe8ba59950bfc309d911d",
      "tree": "39a38c62dabbe21df832f99661b490bea00bd2e7",
      "parents": [
        "34bfcf1fdfe26d510cd6a13ce77113a0b18b9ea4"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 03 11:52:25 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 03 15:06:46 2016 +0000"
      },
      "message": "Add missing translate if the drawable top is not 0,0\n\nIf the vector drawable coordinates are not 0,0 we need to translate the\ncanvas to that position.\n\nChange-Id: I3a829c427ec98061da3295e3cba8655f693d390c\n"
    },
    {
      "commit": "8a9a824cd5641d214906a20a2a9372e62e9f3fb8",
      "tree": "e01d97eb0056593f900ced756bf3dfca7e52f646",
      "parents": [
        "34bfcf1fdfe26d510cd6a13ce77113a0b18b9ea4"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 03 09:58:02 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 03 12:57:16 2016 +0000"
      },
      "message": "Animated vector drawable support\n\nChange-Id: Iefd41d95503bb4f3b26020a519636a63d3da799b\n"
    },
    {
      "commit": "a38b7c180df47f88904ad6a11fda605235f6c91c",
      "tree": "83bc5761046fd20fc30a2f8d92b6c58dd630741c",
      "parents": [
        "488727f8c0b03a6067d9927af75f1d76bec5d640",
        "5d1013cf13e59b7f8dc8f16b5811cb29982e0ef3"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 03 09:55:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 03 09:55:05 2016 +0000"
      },
      "message": "Merge \"Implement native methods in VectorDrawable\" into nyc-dev"
    },
    {
      "commit": "c9f0a1103ea307e5e157e63e7915b38f83d27ca3",
      "tree": "6128a11c188d3b32b8c06be352e8154ab58f6282",
      "parents": [
        "8316fac9c0772b1908d45b2286298b5b791d3ca7",
        "66ae66a7f74ee835807a141a216afbb254664510"
      ],
      "author": {
        "name": "Vadim Tryshev",
        "email": "vadimt@google.com",
        "time": "Thu Mar 03 00:28:16 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 03 00:28:17 2016 +0000"
      },
      "message": "Merge \"Adding getManagedUserBadgedDrawableForDensity() to PackageManager.\" into nyc-dev"
    },
    {
      "commit": "66ae66a7f74ee835807a141a216afbb254664510",
      "tree": "34fd21f558dd52533d9e47ac48f135decf89320d",
      "parents": [
        "60b7bcc614ae818c902e1a0ed3b2381e23eba61c"
      ],
      "author": {
        "name": "Vadim Tryshev",
        "email": "vadimt@google.com",
        "time": "Thu Feb 18 15:41:21 2016 -0800"
      },
      "committer": {
        "name": "Vadim Tryshev",
        "email": "vadimt@google.com",
        "time": "Wed Mar 02 14:55:04 2016 -0800"
      },
      "message": "Adding getManagedUserBadgedDrawableForDensity() to PackageManager.\n\nIt allows badging an image regardless of of the user (no\nuser id parameter). The styling for managed users is applied.\n\nThis is useful for new cases where the existing functions\nwouldn\u0027t badge the icon, but we need it.\n\nBug: 25192539\nChange-Id: I2fd2f226f626fb2e6cda1cfe072013350e12b41c\n"
    },
    {
      "commit": "dbe8a0fe3b4f01f7457aafc30783e50b77c33ff3",
      "tree": "779d03af8c8ddb78cdffb175f5a4ab44eee62bed",
      "parents": [
        "c14893bf5a2ad76ad6279f09b66020610e32041f"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 06 17:53:51 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Mar 02 13:26:18 2016 +0000"
      },
      "message": "LayoutLib: Reference android\u0027s junit in intellij project.\n\nPrevents errors due to mismatch in junit version.\n\nChange-Id: I2adf32efb16472aa5f5e51025b6bb75afc76a8b4\n"
    },
    {
      "commit": "5d1013cf13e59b7f8dc8f16b5811cb29982e0ef3",
      "tree": "c5a1727bc82ec88b6fdd548dcad9f5f43e6afcc7",
      "parents": [
        "e6423ee0eda00466172d86917d6d66112974f342"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Feb 23 12:19:11 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Mar 02 09:03:03 2016 +0000"
      },
      "message": "Implement native methods in VectorDrawable\n\nMost of the VectorDrawable implementation has been moved to native code.\nThis CL implements most of the required functionality that existed in\nMarshmallow.\n\nChange-Id: I009bcd5c166f2bfa0795d2718fabab4a549eba9f\n"
    },
    {
      "commit": "e6423ee0eda00466172d86917d6d66112974f342",
      "tree": "2756f5af13ca8564581fa6821faedbaabb716c82",
      "parents": [
        "24f7d5e65556dd661e52476586f684cc10f9fea2",
        "52c2030f422c05ebec1aeb3a7476b0ecb72fb935"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Mar 02 08:57:25 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 02 08:57:26 2016 +0000"
      },
      "message": "Merge \"Fix layoutlib expand unit test\" into nyc-dev"
    },
    {
      "commit": "a67932374dbbfbe4c6440d223fc7922b313dd957",
      "tree": "59ba1c512eb7732c9913c2306017a67650342bd5",
      "parents": [
        "72041bb2c6cbdab53f00d23cd7f832acf2cbfb5d"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Feb 24 22:46:00 2016 +0000"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Mar 01 07:19:33 2016 -0800"
      },
      "message": "Revert \"Revert \"Remove deprecated methods / classes\"\"\n\nThis reverts commit 5cbeb5902633646fbc0a1be252081e77aaaee7b4.\n\nChange-Id: Id96010364d65e6131221ebbcc8ce5889a2da256c\n"
    },
    {
      "commit": "52c2030f422c05ebec1aeb3a7476b0ecb72fb935",
      "tree": "033c6a72faa353e17c83148f2dd766dfdba17ef5",
      "parents": [
        "8175846ed686077736c985f0ae4d236b7a4c647c"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Mar 01 11:29:49 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Mar 01 11:29:49 2016 +0000"
      },
      "message": "Fix layoutlib expand unit test\n\nChanging the theme used to \"Light\" since currently the \"Dark\" theme\nseems to be missing at least one value. This test doesn\u0027t visually\ndepend on the theme so just changing it to \"Light\" to make it pass.\n\nChange-Id: Ibb885bf3948dcf587de08896540dda622f86e8b3\n"
    },
    {
      "commit": "94ce94e96069ab6c2ece4864ba4c7692f3168352",
      "tree": "3967dba82359dc112a713fb0ced8b6185f9772cb",
      "parents": [
        "203b353018e1533251528b087345cc9933aa38fe"
      ],
      "author": {
        "name": "Muyuan Li",
        "email": "muyuanli@google.com",
        "time": "Wed Feb 24 16:20:54 2016 -0800"
      },
      "committer": {
        "name": "Muyuan Li",
        "email": "muyuanli@google.com",
        "time": "Fri Feb 26 22:30:34 2016 +0000"
      },
      "message": "Allows components to register shortcut key.\n\nThe registered shortcut will be called from PhoneWindowManager,\nbefore dispatching\n\nChange-Id: If26128939b45a639c8895719a7a23ca433f39fd9\n(cherry picked from commit 4da863c5a8872dcabb179a978a2b2157d9081679)\n"
    },
    {
      "commit": "fe01ea05dd196acaf95a61e169f6b75654ae0875",
      "tree": "0a01ef705adc53a56558f1deff7111fb117e45ea",
      "parents": [
        "b7838209cb9b3e5f89c31487efc7b3f9555a9013",
        "5cbeb5902633646fbc0a1be252081e77aaaee7b4"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Feb 24 22:45:48 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 24 22:45:50 2016 +0000"
      },
      "message": "Merge \"Revert \"Remove deprecated methods / classes\"\" into nyc-dev"
    },
    {
      "commit": "5cbeb5902633646fbc0a1be252081e77aaaee7b4",
      "tree": "47e3242796eabfe4e66c9301f90b4f235d38a4d6",
      "parents": [
        "9706c01f9b92cee64bb84782138735225c8588e0"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Feb 24 22:45:00 2016 +0000"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Feb 24 22:45:00 2016 +0000"
      },
      "message": "Revert \"Remove deprecated methods / classes\"\n\nThis reverts commit 9706c01f9b92cee64bb84782138735225c8588e0.\n\nChange-Id: I14c53ab140220e48f6728b1173ea58760bbeb7f9\n"
    },
    {
      "commit": "ca67844e0c6b564970b8d329009c0d110888a3fc",
      "tree": "fc7490d5dbf1b1134630fd70dbb0a71770088906",
      "parents": [
        "8a5a25db42d87566173cbca99e5a9d52f0874078",
        "9706c01f9b92cee64bb84782138735225c8588e0"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Feb 24 21:02:56 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 24 21:02:58 2016 +0000"
      },
      "message": "Merge \"Remove deprecated methods / classes\" into nyc-dev"
    },
    {
      "commit": "c87e2b46fb949f1ba5d72b842bad443b36fd9abc",
      "tree": "56c61c584314f7e38a2c79afd772b83af4dd8935",
      "parents": [
        "6e8fafff7731e6a2c13342eebc9b5078b7d5021f"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Feb 24 13:44:24 2016 -0500"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Feb 24 18:48:42 2016 +0000"
      },
      "message": "Fix build\n\nChange-Id: Id21200a8239908c18379d67639c090ccfd3772f2\n"
    },
    {
      "commit": "7eeacc27e3466cffcdb617b852ea6ae99ac0ee4a",
      "tree": "5c5c202121a0cf13a11dc27994e9d46022891306",
      "parents": [
        "2a452d48d5bf05bf1a3edc762a0140738102a938"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Feb 23 12:20:11 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Feb 23 12:20:11 2016 +0000"
      },
      "message": "Fix FontFamily nAddFontWeightStyle in nyc\n\nChange-Id: I156812384c758edbd6efa23fd18a0ce7b9b82993\n"
    },
    {
      "commit": "5cf733f89b4016aecc3b96e2a72e98b2a571aeb8",
      "tree": "69e5b4a68f7d910e32bde2832cc6858f2fed253a",
      "parents": [
        "5d35396a5320670ca7460deed11f1fd5338bd623"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Mon Feb 22 15:11:49 2016 -0800"
      },
      "committer": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Mon Feb 22 15:11:49 2016 -0800"
      },
      "message": "Fix build breakage.\n\nThis follows up to my previous CL [1], which forgot to update\nBridgeIInputMethodManager.java (again!).\n\n  [1] I56934f18e30d90fcdf77bcbb0c35a92a5feb1b82\n      05c25f8a3a033816ac25aa5cd7db5b1ab495bc3f\n\nBug: 25373872\nChange-Id: I0643069fd0b677115c89c340b7a23f1d12bd7988\n"
    },
    {
      "commit": "26b27543109689a7a25cc0ddf764cf785b700ae0",
      "tree": "be049254b64a0871e85235a7678d042ce60d5a29",
      "parents": [
        "e17575d3b5461866c7b2812432b7798ee04e775e"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 17:16:50 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 17:16:50 2016 +0000"
      },
      "message": "Remove layoutlib RunQueue implementation\n\nChange-Id: Id2b666f086a48f101ff7ef4177fe28ad17d10783\n"
    },
    {
      "commit": "18780f60ef4c71a7de3509d9978ef81df7f5f372",
      "tree": "c980e9ea1ececc17c570bc523e1b57e1377de52c",
      "parents": [
        "87a5de3e3282bc4c01544603e1abd678bdba568a",
        "b75a0426d8c2339f2d552f96cc4dfcd86deb3447"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 16:19:12 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Feb 22 16:19:12 2016 +0000"
      },
      "message": "DO NOT MERGE: Fix Canvas memory leak\nam: b75a0426d8\n\n* commit \u0027b75a0426d8c2339f2d552f96cc4dfcd86deb3447\u0027:\n  DO NOT MERGE: Fix Canvas memory leak\n"
    },
    {
      "commit": "f5650cf3a3a1a8d6ced9fc7b0f399689c9adc1b8",
      "tree": "ae86a7e6fef40247d8b959cace32798cb45bdc0f",
      "parents": [
        "eb3771cd1468ac14e5a7bbea1332ee2344f6a67a"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 01 11:48:16 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 15:01:30 2016 +0000"
      },
      "message": "Fix Canvas memory leak\n\nEvery RenderSession would call the AttachInfo.setAttachInfo but wouldn\u0027t\nissue a View.dispatchDetachedFromWindow.\nThis caused some Canvas to be slowly leaked in the DelegateManager in\nevery session.\n\nChange-Id: Iec418a86f5c5e55c2a2860ef945268c51c0e8173\n"
    },
    {
      "commit": "b75a0426d8c2339f2d552f96cc4dfcd86deb3447",
      "tree": "07f389bc62e7458515197747a5b4271ababbd58b",
      "parents": [
        "44f92b00d1a060773625de5884fc86e7218e2dd5"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 01 11:48:16 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 14:09:09 2016 +0000"
      },
      "message": "DO NOT MERGE: Fix Canvas memory leak\n\nEvery RenderSession would call the AttachInfo.setAttachInfo but wouldn\u0027t\nissue a View.dispatchDetachedFromWindow.\nThis caused some Canvas to be slowly leaked in the DelegateManager in\nevery session.\n\nChange-Id: Ib0392303e6d00a4fe5494ae484f28135b1fe6b28\n"
    },
    {
      "commit": "4f2103631a44303257e3adbe89fa2a6854841bbb",
      "tree": "0d2b1e72fd729e3fda3760f8bee1b55e72cef3e7",
      "parents": [
        "412eee17cd3221483901f0d0325153acc66e4990",
        "44f92b00d1a060773625de5884fc86e7218e2dd5"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 20:18:28 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Feb 19 20:18:28 2016 +0000"
      },
      "message": "Merge \"Revert \"Fix Canvas memory leak\"\" into mnc-ub-dev\nam: 44f92b00d1\n\n* commit \u002744f92b00d1a060773625de5884fc86e7218e2dd5\u0027:\n  Revert \"Fix Canvas memory leak\"\n"
    },
    {
      "commit": "44f92b00d1a060773625de5884fc86e7218e2dd5",
      "tree": "1ab1d21102edf3666697da11b689a5786eb1f675",
      "parents": [
        "bad0e07ee9163d6b0f0bf73ad591ff6e453199ef",
        "cf935728897e9f208e250d3bb57296c84cfa0ef9"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 20:09:08 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 19 20:09:09 2016 +0000"
      },
      "message": "Merge \"Revert \"Fix Canvas memory leak\"\" into mnc-ub-dev"
    },
    {
      "commit": "cf935728897e9f208e250d3bb57296c84cfa0ef9",
      "tree": "21d0ea4b55be1d41649a8c6fbdc84dd8b4779e79",
      "parents": [
        "e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 20:07:44 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 20:07:44 2016 +0000"
      },
      "message": "Revert \"Fix Canvas memory leak\"\n\nThis reverts commit e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d.\n\nChange-Id: Ie9ef25b17d5f725d5054c039992a8cd2912868a6\n"
    },
    {
      "commit": "1d3c41e563c30d85d5524df598f4bd6e6a226362",
      "tree": "0f53809dc274aff9558f0545238117a4bb340383",
      "parents": [
        "53503069895918a59a305addaac84ea11937edcf",
        "bad0e07ee9163d6b0f0bf73ad591ff6e453199ef"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 18:08:00 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Feb 19 18:08:00 2016 +0000"
      },
      "message": "Merge \"Fix Canvas memory leak\" into mnc-ub-dev\nam: bad0e07ee9\n\n* commit \u0027bad0e07ee9163d6b0f0bf73ad591ff6e453199ef\u0027:\n  Fix Canvas memory leak\n"
    },
    {
      "commit": "bad0e07ee9163d6b0f0bf73ad591ff6e453199ef",
      "tree": "07f389bc62e7458515197747a5b4271ababbd58b",
      "parents": [
        "aa9c9fb29e0630f252fb60e1972d333bbc54d70d",
        "e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 17:58:16 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 19 17:58:17 2016 +0000"
      },
      "message": "Merge \"Fix Canvas memory leak\" into mnc-ub-dev"
    },
    {
      "commit": "e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d",
      "tree": "07f166af78ef08d405a893c2331becd95d13fd4a",
      "parents": [
        "ded4d14e3348ebb0cdfa3498a53d3fbfc58b2043"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 01 11:48:16 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 17:57:36 2016 +0000"
      },
      "message": "Fix Canvas memory leak\n\nEvery RenderSession would call the AttachInfo.setAttachInfo but wouldn\u0027t\nissue a View.dispatchDetachedFromWindow.\nThis caused some Canvas to be slowly leaked in the DelegateManager in\nevery session.\n\nChange-Id: I0322767e5fffc6053ce1be852dd8ca904dfaa137\n"
    },
    {
      "commit": "2c1ba9a961d4f96c26df260ee437655ad9e7c03e",
      "tree": "9e31be1e3cb94b1bd2a9cdf96f12e42e92dcfc09",
      "parents": [
        "18026642213698fc095a9510c2431862d3a7f310"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Feb 17 15:29:38 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Feb 18 10:54:11 2016 -0700"
      },
      "message": "Make BackupManager encryption aware.\n\nBackup requires both CE and DE storage to be available, so delay\nspinning up the backup system until the user is unlocked, since\nthat\u0027s when CE storage becomes available.  Note that devices without\nFBE immediately transition USER_SYSTEM into the unlocked state,\nsince their CE is always available.\n\nOffer to backup and restore files under both CE and DE.  Since DE\nis effectively the same as CE, most logic is simply duplicated for\nnow, but it could be simplified in the future.  Since system apps\ncan force their default storage location to DE, we always build\nexplicit CE and DE paths.\n\nAdd getDataDir() to give clean access to the top-level private data\ndirectory, but disclaim that apps shouldn\u0027t create files there.\n\nBug: 26279618\nChange-Id: Ic34a4b330223725db93b1d0f5c9dffc88002c61f\n"
    },
    {
      "commit": "3b6ea2e3a8545fb6e9a62079fa4fcdbe859b0d49",
      "tree": "cc7d1b71e9252389505886ae3e853bb9f342c48e",
      "parents": [
        "7914e4ca03322427740d6f8c00837375dbf3031a"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Feb 17 20:51:08 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Feb 17 20:51:08 2016 -0800"
      },
      "message": "Entry -\u003e Map.Entry. Fixes build break\n\nChange-Id: I72fe70d6f617c7753a278e134ac22d71125d8def\n"
    },
    {
      "commit": "7914e4ca03322427740d6f8c00837375dbf3031a",
      "tree": "6d50537083ae66d94e504d647556fb34206f184b",
      "parents": [
        "f0c5b7af6f062e6e064af22ee58e9eb6b549a6ce"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Feb 17 20:42:31 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Feb 17 20:50:00 2016 -0800"
      },
      "message": "Switch LayoutLib to Java 8\n\nThe main build hasn\u0027t swtiched to java 8, but lambdas are already used\nin layoutlib. This fixes the build break.\n\nChange-Id: I4dd69ebd736179067899f5d86d3608d5fdb03d93\n"
    },
    {
      "commit": "491523d52cd8368ef9a92e95fb3e9332bf86a996",
      "tree": "be5cf46b349157aceac88e5b4ff0b3677849270d",
      "parents": [
        "be8c223c2459be17f7ee8a5f078b11a34fd1b7ca"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 06 17:56:37 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Feb 18 02:10:24 2016 +0000"
      },
      "message": "LayoutLib fixes for N\n\nMoves LayoutLib to Java 8 - YAY!\nFix delegates\n\nChange-Id: I098996e43e330e995d33f12df1c16355bbc02f0f\n"
    },
    {
      "commit": "aa9c9fb29e0630f252fb60e1972d333bbc54d70d",
      "tree": "1ab1d21102edf3666697da11b689a5786eb1f675",
      "parents": [
        "3381cde9f293c52f195b31b0e4049649db31181a"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Feb 17 18:54:17 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Feb 17 18:54:17 2016 +0000"
      },
      "message": "Replace SimpleDateFormat implementation\n\nThis will process all the classes and replace all the uses of\njava.text.DateFormat and java.text.SimpleDateFormat with the\nandroid.icu.text. package implementations. The original ones do not\nmatch the Android platform behaviour.\n\nChange-Id: Id55f103c21117a8d6403bf2124b6c1a0e1fb2f71\n"
    },
    {
      "commit": "eb84b1843a3f6805c6109c1d9d023550229a3fc5",
      "tree": "a689a4889e3978303935f49c2dd27eaf6303053b",
      "parents": [
        "9496df19ae7552370ec37cfb62cce3d919b0b116"
      ],
      "author": {
        "name": "Andrei Stingaceanu",
        "email": "stg@google.com",
        "time": "Tue Jan 26 18:39:55 2016 +0000"
      },
      "committer": {
        "name": "Andrei Stingaceanu",
        "email": "stg@google.com",
        "time": "Wed Feb 17 15:14:33 2016 +0000"
      },
      "message": "Suspend packages - one call for multiple packages\n\nRefactor setPackageSuspended into setPackagesSuspended. The rationale\nis that the consumers of this API are likely to want to remove\nmultiple packages at once. Rather than calling the API N times, call\nit just once.\n\nThe good part is that we already have the broadcast intent for\nsuspended packages take an array so only one broadcast. Less stress\non the system.\n\nAnother good part is that (right now) we only have one consumer of\nthis API and it will be easy to make changes once this CL goes in.\n\nAs a shell command, for consistency only allowed one package at\na time.\n\nBug: 22776761\nChange-Id: Ic8b8cf64d0a288ea3a282bb7b72f9d663b3b0049\n"
    },
    {
      "commit": "5ae4e73ef0747c2d08a901f1a76d8fb8ee64a53a",
      "tree": "fee0f42b55a307e99989e4fcca379383a6ac9684",
      "parents": [
        "804d648138212a00bb260291e39fde0b327df709",
        "355b232d7998cfc9b29d42a0356390e25191bcbd"
      ],
      "author": {
        "name": "Andrei Stingaceanu",
        "email": "stg@google.com",
        "time": "Wed Feb 17 11:57:50 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 17 11:57:51 2016 +0000"
      },
      "message": "Merge \"Suspend packages - new API for retrieving the suspended status\" into nyc-dev"
    },
    {
      "commit": "9706c01f9b92cee64bb84782138735225c8588e0",
      "tree": "d968b7db4486a79a5eb0fa33bf7e29c49d9e852b",
      "parents": [
        "4f15f2ba67b6bc0ddad53b42235ac86d1079bbba"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Fri Feb 12 15:17:36 2016 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Feb 16 13:39:55 2016 -0800"
      },
      "message": "Remove deprecated methods / classes\n\nNow that we\u0027ve moved the majority of system components to the\nPackageInstaller, we can remove the majority of the \"installPackage\"\nmethods and the VerificationParams/ContainerEncryptionParams\nclasses. There are still some lingering references to the two\ninstallPackage() methods left [both internal and external; play\nis using these methods via reflection].\n\nBug: 24542768\nChange-Id: Ib65323d842d9f0e7fed60e37e6b5f103c94c859b\n"
    },
    {
      "commit": "355b232d7998cfc9b29d42a0356390e25191bcbd",
      "tree": "7c0155a58f49b9eec15cd163b0b1625f44488bb8",
      "parents": [
        "29b13190cd57bd823eb803f6fca03f671a32a5fe"
      ],
      "author": {
        "name": "Andrei Stingaceanu",
        "email": "stg@google.com",
        "time": "Fri Feb 12 16:43:51 2016 +0000"
      },
      "committer": {
        "name": "Andrei Stingaceanu",
        "email": "stg@google.com",
        "time": "Tue Feb 16 14:57:29 2016 +0000"
      },
      "message": "Suspend packages - new API for retrieving the suspended status\n\nInstead of always rebuilding the full ApplicationInfo for a\npackage when callers are only interested in the suspended status\nadd a new fast API in Packagemanager (which only checks the\nsuspended user setting for the requested package and returns\na boolean) and change the appropriate caller code too.\n\nBug: 26794775\nBug: 22776761\nChange-Id: Ide8428ef734479360d5a8a75fd8e0ed8ddf2da7a\n"
    },
    {
      "commit": "115d2c189a46f535778d9dd0923f703ff2f888fe",
      "tree": "f082b998dc2345ccb24b47657c8b2104991225b6",
      "parents": [
        "c6ca265902d41a0553d15f660647410db6a3e889"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Feb 15 17:25:57 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Feb 15 17:45:42 2016 -0700"
      },
      "message": "Add feature versions for devices and apps.\n\nWe\u0027re starting to see more instances of device features that will\nincrement separately from the SDK API level, such as camera HAL,\nGPU capabilities, Bluetooth, and other hardware standards.\n\nThis change adds the ability for device features to specify a\nversion, which is defined to be backwards compatible.  That is, apps\nrequesting an older version of a feature must continue working on\ndevices with a newer version of that same feature.\n\nWhen a version is undefined, we assume the default version \"0\".\n\nBug: 27162500\nChange-Id: If890bf3f3dbb715e8feb80e7059a0d65618482ea\n"
    },
    {
      "commit": "989b58a633ed6f2192a172855525d86477452884",
      "tree": "74bb630b9b156fe957328daa648044ad58a57ac9",
      "parents": [
        "6f1033104d178f8c03857770edf5568947f1af70"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Wed Feb 10 12:19:33 2016 -0800"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Fri Feb 12 16:55:53 2016 -0800"
      },
      "message": "Update pointer icon when View.setPointerIcon is called\n\nCurrently the updated pointer icon is only displayed after\nthe next mouse move.\n\nBug:27107871\nChange-Id: Ieed57b07fe44699735179cf57968a9bb08981396\n"
    },
    {
      "commit": "a87b07d7fafd59ae26073a80cd742b17ea427ecd",
      "tree": "22214c42f3245b6113f79315c5eb45ad98e72ae6",
      "parents": [
        "67a28e8c3809f7d68999f586edd7d7ff4bd27c9b"
      ],
      "author": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Fri Nov 06 11:57:09 2015 -0500"
      },
      "committer": {
        "name": "Ben Wagner",
        "email": "bungeman@google.com",
        "time": "Fri Feb 12 16:28:35 2016 +0000"
      },
      "message": "Add support for gx font variation axes.\n\nThis adds an \u0027axis\u0027 child element to the \u0027font\u0027 element. The \u0027axis\u0027\nelement has attributes \u0027tag\u0027 (a four byte identifier) and \u0027stylevalue\u0027\n(a float value) to the parser. This also modifies reading the font file\nname in a backwards compatible fashion by using only the direct #text\nchildren of the \u0027font\u0027 element. (Both the Minikin and Skia parsers now\nallow the font file name on a separate line in the fonts.xml file).\n\nThis information is then passed through to Skia in order to select the\ndesired variation. The Skia parser already parses this way and has for\nsome time, so Chrome and WebView can already read this format.\n\nChange-Id: I15623fe864fa92b2bf0705af5e389daedfb77e5c\n(cherry picked from commit b8e367fb7428076ff2e4aa2a97adaed1ef806e92)\n"
    },
    {
      "commit": "69d9feb93829601b586685f919650e0f77daf390",
      "tree": "5a864e5a0d097ddf5402b418881d2b831eee1495",
      "parents": [
        "3a1356f3ff0f84d57cd669ff2648e46a919b94fe",
        "6f35d2c6ea1d18decd6b646035fd02fd5b1f0256"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Feb 11 17:11:33 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Feb 11 17:11:33 2016 +0000"
      },
      "message": "Layoutlib supports rounded corners of different sizes am: 3381cde9f2\nam: 6f35d2c6ea\n\n* commit \u00276f35d2c6ea1d18decd6b646035fd02fd5b1f0256\u0027:\n  Layoutlib supports rounded corners of different sizes\n"
    },
    {
      "commit": "3381cde9f293c52f195b31b0e4049649db31181a",
      "tree": "e446b038290c2b1d2b1ac83df21b90c71894df5e",
      "parents": [
        "ebdcc80ac26ae51ba27d9469a501a6242256aa50"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Feb 04 19:53:25 2016 -0600"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Feb 11 12:26:50 2016 +0000"
      },
      "message": "Layoutlib supports rounded corners of different sizes\n\nBug: http://b.android.com/29098\nChange-Id: I4e7dc3810559b509baf5ea306221c1d2504be0e1\n"
    },
    {
      "commit": "8c6d8a7ef9ef057833e36efa074138d06a8f01ca",
      "tree": "2b4032e02217fcf30bbc08974d63843a3786b648",
      "parents": [
        "d7b1f41109abee60ec8529369a85d84300b1d678"
      ],
      "author": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Feb 09 20:45:13 2016 -0800"
      },
      "committer": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Feb 09 20:45:13 2016 -0800"
      },
      "message": "Fix build\n\nChange-Id: I7c0601f873e37c7ebf71068ba81366704672bd70\n"
    },
    {
      "commit": "e12aece4cad849efbbe6a806f132613a56699230",
      "tree": "4d8c0f1b9c720fa3042180f2d06dcf5fb05daa6e",
      "parents": [
        "5affef077316e73337eb42a098a126b01d20568e"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Tue Feb 02 22:43:27 2016 -0800"
      },
      "committer": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Mon Feb 08 20:46:53 2016 +0000"
      },
      "message": "Ensure surfaces stay alive until activity stop.\n\nPrior to this commit in this case of activity pause, with finishing\u003dtrue\nthe activity manager will notify us of app visibility and we will begin\nan exit animation. When this exit animation finishes, we will destroy\nthe application surface (unless its eligible for saving). However there\nare two cases where this breaks down:\n\n1. The exit animation finishes before the activity thread handles\nthe stop transition. Many activities stop rendering on Pause\nbut many do not and it is totally legal to do so. Sometimes this\nresults in non fatal dequeue buffer errors and sometimes results in\nfatal errors with Pixel Buffers, etc...\n2. We may resume the activity shortly after asking the window manager\nto pause it. If the window wasn\u0027t eligible for animation, we will\nimmediately destroy it after being told of the visibility change\nfollowing PAUSE_FINISHING. It\u0027s possible for this to complete\nbefore we process the resume. On the other hand the client\nhappilly processes the resume and transitions back from PAUSE\nand then crashes once it attempts to use it\u0027s surface.\n\nIn this commit we have the activity manager notify the window manager\nwhen an application has actually finished (or we have timed out\nwaiting). For windows which have not been explicitly removed by the\nclient, we defer destruction until we have received both this signal\nand the animation has completed.\n\nBug: 26793431\nChange-Id: Ib6ee8fbdd1f03450fbbfd62468a19e97774befab\n"
    },
    {
      "commit": "c1a8e3311fe63d3b1edad542aea9c7e4f118808a",
      "tree": "d07f89a719d0867317c2fe28de912fd288a7bfc8",
      "parents": [
        "ded4d14e3348ebb0cdfa3498a53d3fbfc58b2043"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 08 14:20:11 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 08 14:20:11 2016 +0000"
      },
      "message": "Remove BufferedImage allocation from PorterDuff filter\n\nChange-Id: Iedc280081e1889d316df17863f6ddf377592bc4c\n"
    },
    {
      "commit": "08df538482f00611133a0b3aba64e8fed663afc3",
      "tree": "e48ead48e2d089728cb0aefda4aca03d78908b7a",
      "parents": [
        "76855d322b18f47962727588550e5aec3850c5e8",
        "29e8071d2e9f3a8171624fd63b849f5c14360b21"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Feb 01 22:56:43 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Feb 01 22:56:43 2016 +0000"
      },
      "message": "Remove obsolete try catch am: ebdcc80ac2\nam: 29e8071d2e\n\n* commit \u002729e8071d2e9f3a8171624fd63b849f5c14360b21\u0027:\n  Remove obsolete try catch\n"
    },
    {
      "commit": "1444cfd50efd95662e848009d1c2e8a81291efee",
      "tree": "da024ffb73bcb7b51612131c331dde4818fb69fb",
      "parents": [
        "ccdab44d25f0adb9ed583472c792e2b1464d193f"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Mon Feb 01 14:24:05 2016 -0800"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Mon Feb 01 22:24:46 2016 +0000"
      },
      "message": "Fix build\n\nChange-Id: Ifed64dc2a4db9a58c3588ea0ca899f628efe685a\n"
    },
    {
      "commit": "ebdcc80ac26ae51ba27d9469a501a6242256aa50",
      "tree": "dc28ea0d194a851a53016e550ad213f3e55c7fa6",
      "parents": [
        "ded4d14e3348ebb0cdfa3498a53d3fbfc58b2043"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Feb 01 14:03:30 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Feb 01 14:03:30 2016 -0800"
      },
      "message": "Remove obsolete try catch\n\nThe try catch was to prevent crashing on preview releases of Android\nStudio. We don\u0027t support them anymore.\n\nChange-Id: I8e33cae98117c0034aea1b56903b623fcb64435e\n"
    },
    {
      "commit": "35871f2c2bb114806b4e3f109960b7f863d7885c",
      "tree": "9a89bda9cbc01d61a3fd35271f31f092c856672d",
      "parents": [
        "f6ede47b78f557d49a1e2273e37f355d39a75a59"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Jan 29 17:13:29 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Jan 30 17:03:23 2016 -0700"
      },
      "message": "Offer to migrate databases and SharedPreferences.\n\nDatabases and SharedPreferences often involve multiple files under\nthe hood, so developers wanting to migrate them between different\nstorage contexts should ask us to make sure all relevant files are\nmigrated correctly.\n\nThis makes a best-effort attempt to recover from battery pulls\nduring migration, while still trying to alert developers to\nconflicting files.\n\nBug: 26668510, 25860525\nChange-Id: I9ffa3e8cb6191dfd4237b9466a081d6d77df3ba0\n"
    },
    {
      "commit": "b1faf60b896afe235175354ffd90290ff93a54b4",
      "tree": "cc016283d3a1355784e79fa710a2c6ae8b64cfbd",
      "parents": [
        "8ab1a37b767113357e77787d5fe2ba423d16ae3a"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Jan 27 09:12:31 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Fri Jan 29 07:44:33 2016 -0800"
      },
      "message": "Use resizeMode integer instead of resizeable boolean.\n\nChanges activity manager and window manager to use resizeMode\nas defined by ActivityInfo#resizeMode instead of a boolean.\n\nBug: 26774816\nChange-Id: I8cef46d9fba6bfdd21df7da63ed5d5330ad03d4b\n"
    },
    {
      "commit": "a4a58efe8203d63a9a6bf78b0fa9f2992b25871b",
      "tree": "112bddba545fd9c020aa85ca2b0ba88b86890185",
      "parents": [
        "08b372f71ad24ce29b86ace726bd12d2326ae87e"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Jan 27 02:10:08 2016 -0800"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Jan 27 14:00:02 2016 -0800"
      },
      "message": "Fix app staying in drag resizing when undocking\n\nWhen dismissing the docked stack, the fullscreen stack stayed in drag\nresize mode because it got a relayout, but because the bounds didn\u0027t\nchange (it switches to the fullscreen layout a bit earlier) it never\ncalled WM.relayoutWindow, so it stayed in drag resize mode indefinitely.\n\nTo fix this, introduce forceRelayout in Window.resized(), which makes\nsure the client always calls relayoutWindow. Set this to true whenever\ndrag resizing is changing.\n\nFor some very weird reason this also broke that home button was not\nresponding anymore.\n\nBug: 26806532\nChange-Id: I4b39c1c419a166aa7093c31226f2a4915f642328\n"
    },
    {
      "commit": "2260a618424b1cbdb1a051e613bd9e24a25d8436",
      "tree": "64cd0b899dffaf59f78be3d8e2e37a3d5097f1e4",
      "parents": [
        "3236fef5d7e6e4fc12ee1d056f2dd8fbaf46efd5"
      ],
      "author": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Mon Jan 25 19:07:58 2016 -0800"
      },
      "committer": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Mon Jan 25 19:09:42 2016 -0800"
      },
      "message": "Fix build and reorder methods to match ec6a447c86b03f5896fdb717de530c8abf8887f9\n\nChange-Id: I39ee2864eda489bf0e485ea96d30e56b29500865\n"
    },
    {
      "commit": "0a66b6bc9226c170f1a522f81aca04cf03fd41a2",
      "tree": "82b25028ae2fbf62a6dbb51ddb0f0a16d17b34f8",
      "parents": [
        "fe434a15d6bde9299b51dc284b336944e5cf8a1c"
      ],
      "author": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Mon Jan 25 18:25:28 2016 -0800"
      },
      "committer": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Mon Jan 25 18:25:28 2016 -0800"
      },
      "message": "Fix build.\n\nChange-Id: I68d6fade1b2a44a3542182914e0cd5853f4f0a81\n"
    },
    {
      "commit": "676ae8c8c95e4246cfd03c232c080c25b3ca5dea",
      "tree": "d072a95259005476e8a3559598fa3975386286f5",
      "parents": [
        "ee8ba01401502eabd347d5fabf9e6ecf1366abe7",
        "08f736e7b143f825fe3c29e70e9b505bbf8e1ae6"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Sat Jan 23 01:05:26 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jan 23 01:05:26 2016 +0000"
      },
      "message": "Merge \"Remove GregorianCalendar hack\" am: 187c022bf1\nam: 08f736e7b1\n\n* commit \u002708f736e7b143f825fe3c29e70e9b505bbf8e1ae6\u0027:\n  Remove GregorianCalendar hack\n"
    },
    {
      "commit": "c8680438c0481b9c1e2b0bc856f900057ea14ba2",
      "tree": "89bce83e053b00606194b9c6ec38c5db75d575ea",
      "parents": [
        "8d4d5c1c20cfb24099376c444822dae9d6118e0a",
        "ba761124e624ffed2681a9e171cd3f7d8c6ed59e"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Sat Jan 23 00:26:01 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 23 00:26:01 2016 +0000"
      },
      "message": "Merge \"Change mouse pointer when drag and drop is active\""
    },
    {
      "commit": "08f736e7b143f825fe3c29e70e9b505bbf8e1ae6",
      "tree": "8aeaff095ad46ea954894a6d7f094c2f15d66121",
      "parents": [
        "afbf1570acfac5dfc28196c3f4b424fdaef85508",
        "187c022bf187f137d48d9031c43cfc233c9fc158"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Sat Jan 23 00:02:05 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jan 23 00:02:05 2016 +0000"
      },
      "message": "Merge \"Remove GregorianCalendar hack\"\nam: 187c022bf1\n\n* commit \u0027187c022bf187f137d48d9031c43cfc233c9fc158\u0027:\n  Remove GregorianCalendar hack\n"
    },
    {
      "commit": "ba761124e624ffed2681a9e171cd3f7d8c6ed59e",
      "tree": "ea9c88a0c20035def61a2f3c05a96ff8a3619702",
      "parents": [
        "1f0945e9f6fc81f5c58da24a29c86e1efa2714ef"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Fri Jan 22 12:09:45 2016 -0800"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Fri Jan 22 12:09:45 2016 -0800"
      },
      "message": "Change mouse pointer when drag and drop is active\n\nMouse pointer is set to STYLE_GRAB when the drag has started and\nreset to STYLE_DEFAULT when the drag has ended.\n\nResetting the pointer shape to the one defined by an underlying\nview will be handled in a separate patch.\n\nBug: 24415739\nChange-Id: I8df0a08c5701a34a48f10ec6b43c2cf2e6362d61\n"
    },
    {
      "commit": "4f3d0c6caab16a7296ad46179762e0c80e55e130",
      "tree": "3313ddae7551b878c73fcac707ce525522977396",
      "parents": [
        "fca558c5490e319448ce69d1f526f5a446bb3045"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 22 11:11:57 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 22 11:33:53 2016 -0800"
      },
      "message": "Remove GregorianCalendar hack\n\nBug: http://b.android.com/199424\nChange-Id: I589d153e1f57b6302c6fe3c031c5c63e33ad9996\n"
    }
  ],
  "next": "e797745d757ef8eda5e36c33fec3ca74c0f4ec99"
}
