)]}'
{
  "log": [
    {
      "commit": "6f55e56e29cd27d5a8dac61b386ee98245df7663",
      "tree": "c84688040ceaea5e0dc9a28432442737320f4494",
      "parents": [
        "6e7a863a0fc54f925a58416f7a50beedf44c410c",
        "c0fa2b95703f822700a8b471342929093b530208"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 02 01:28:48 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 02 01:28:48 2019 +0000"
      },
      "message": "Merge \"Make Drawable#createFrom* support incomplete images\""
    },
    {
      "commit": "dd4b22e66ca9c416c5ba11961dbe43d1505bc680",
      "tree": "49be8fca30803d6f6240b598d0cd14dd88b4acd2",
      "parents": [
        "df750469cbf8b62a90035a192a50463087c456da",
        "a94f3221da84261a97c26b6597d702ddc9d7a727"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Fri Feb 01 23:20:30 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 01 23:20:30 2019 +0000"
      },
      "message": "Merge \"[Color] Make setColorMode togglable.\""
    },
    {
      "commit": "c0fa2b95703f822700a8b471342929093b530208",
      "tree": "488df9180c933eaf2cbccdec8909ac8c53b669ad",
      "parents": [
        "2c135398444991320f3ec99c0b2c825606f1e91e"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Feb 01 13:03:54 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Fri Feb 01 21:31:07 2019 +0000"
      },
      "message": "Make Drawable#createFrom* support incomplete images\n\nBug: 120786924\nTest: I18463379d8e3d354ffafd006abd79c0a7918b500\n\nPrior to P, createFrom* supported incomplete images, but this\nregressed in P with the switch to ImageDecoder, which does not succeed\non incomplete images by default. Add a PartialImageListener, so that\nincomplete images succeed.\n\nChange-Id: Icb57d5857e1dcf6a347bb198f49284ac1975b54b\n"
    },
    {
      "commit": "a28aa5e6ec9e9be09b8c7982e1479760e35d79bb",
      "tree": "bc07f2e7094204cce1373d1638af88b871d88fee",
      "parents": [
        "1da09e4479a34b2798b5508fb04de381163dad29",
        "908108aa4b00b528a9c4b89d1ffe2e1bd519a00d"
      ],
      "author": {
        "name": "Kevin DuBois",
        "email": "kevindubois@google.com",
        "time": "Fri Feb 01 17:42:00 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 01 17:42:00 2019 +0000"
      },
      "message": "Merge \"Pipe through color sampling to BrightnessChangeEvent\""
    },
    {
      "commit": "a94f3221da84261a97c26b6597d702ddc9d7a727",
      "tree": "b033cbb8f0a5df1a9a9ffe97c8335029863019fd",
      "parents": [
        "f97346024864791cacab68b6cb9ba74978ea8217"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Thu Jan 31 21:25:57 2019 -0800"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Thu Jan 31 21:34:50 2019 -0800"
      },
      "message": "[Color] Make setColorMode togglable.\n\nPreviously setColorMode must be called before view is set, and has no effect\nafter that. The state of WCG on Android when this patch was written, was that\nmost hardware out there can not handle mixed color spaces composition well\nwhich results in GPU composition. And this situation will remain true for a\nlong time.\n\nDespite photography applications want to have WCG, it\u0027s a power cost especially\nduring video playback. In order to mitigate this fact and the desire to move\nthe ecosystem forward in WCG, we make setColorMode togglable such that in the\nnext app vsync, when color mode is changed we issue a surface update which\nresults in the old EGLSurface or VkSurface being destroyed and new EGLSurface\nor VkSurface being created with the target color space being set. As a result,\napplications can now togglable WCG on/off.\n\nBUG: 120288123\nTest: Build, flash and boot. Verify with SurfaceFlinger dumpsys on demo app.\nChange-Id: I09bf8c380a01f4dde364873d37b248cedc6ccfd3\n"
    },
    {
      "commit": "811612480151e4378fec7c80d45f54e6c38ab751",
      "tree": "fa57fb7a802076a744e20e2a6774758803182294",
      "parents": [
        "7b622a6a85bd6b7cbc31bf0d1dfee442eebd2358",
        "85a13eee5e7304a9299575655b078595048b0604"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 31 16:41:50 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 31 16:41:50 2019 +0000"
      },
      "message": "Merge \"Remove Shader#copy()\""
    },
    {
      "commit": "908108aa4b00b528a9c4b89d1ffe2e1bd519a00d",
      "tree": "d344f9440ae0638806c57bcb46d578d0f8c4e132",
      "parents": [
        "530c508ed11fc81b4d81713f0d357244a0cdeab9"
      ],
      "author": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Thu Jan 17 12:56:34 2019 +0000"
      },
      "committer": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Thu Jan 31 16:33:06 2019 +0000"
      },
      "message": "Pipe through color sampling to BrightnessChangeEvent\n\nChange brightness tracker to enable / disable color\nsampling on screen on / off.\nAdd value channel to BrightnessChangeEvent if available.\n\nBug: 112756444\nTest: atest BrightnessTrackerTest\nTest: atest android.display.cts.BrightnessTest\nTest: manual checked pixel3 which supports this and pixel2 which doesn\u0027t\n\nChange-Id: I94384752235d891cee975b01f933c0bc0b4572a9\n"
    },
    {
      "commit": "a0baea28b7f1e42dddbab5d924f284ae6714f6a3",
      "tree": "cd059b8357009f0258d628f159d7caf1d6e6516b",
      "parents": [
        "40a0a3ef7428c38494c5d77436a7b91dce4b5c69",
        "9d4274005e8a0c0e8ecb223f222cbfde665e7590"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Thu Jan 31 15:37:56 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 31 15:37:56 2019 +0000"
      },
      "message": "Merge \"Replace createHardwareBitmap with wrapHardwareBuffer.\""
    },
    {
      "commit": "1bd8c8bb4f21a8620ec21dfa1ae6c17efcd190a4",
      "tree": "4b7026bb2b5c45956d7bcb5cb5080a774e117a07",
      "parents": [
        "a9ca57cabe8691c47b3add6a38d97a5a655d6fd8",
        "b0aecc22d3e8641cfc0d36816036d2b361003f7d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 31 04:44:38 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 31 04:44:38 2019 +0000"
      },
      "message": "Merge \"Use ColorLongs in Linear-, Radial-, and Sweep-Gradient\""
    },
    {
      "commit": "9d4274005e8a0c0e8ecb223f222cbfde665e7590",
      "tree": "594727259b9ffff2158bd720be800607c96ac475",
      "parents": [
        "1f0348524f76eaf74c4ea692f6e02681463e39e1"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Wed Jan 23 18:39:06 2019 -0800"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Wed Jan 30 15:22:54 2019 -0800"
      },
      "message": "Replace createHardwareBitmap with wrapHardwareBuffer.\n\nThe bitmap.createHardwareBitmap doesn\u0027t take a ColorSpace as input, as a result\nthe returned bitmap is always in SRGB color space. Given that we want to remove\nthe assumption of SRGB color space, we replace the usage of\ncreateHardwareBitmap with wrapHardwareBuffer which takes an extra argument\nColorSpace. As a result, we will be able to also fix SurfaceControl and various\nother places that use screenshot in follow up patches.\n\nBUG: 120904891\nTest: CtsUiRenderingTestCases\nChange-Id: I57fc0c85d68df43b0e69f9a1ebac00d2ba39554d\n"
    },
    {
      "commit": "028b73d3c054dd5df6bf76b24c2b068961c5400a",
      "tree": "418a0dfa13957e8c3c69ec5c7bae0410149836a9",
      "parents": [
        "b558661cf32f71116e49b4f17fe13defa808f1c4",
        "a141563dc2fd1f8de033da4e7799badbf2968ecf"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 30 22:04:02 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 30 22:04:02 2019 +0000"
      },
      "message": "Merge \"Expose new color long Graphics APIs as public APIs.\""
    },
    {
      "commit": "85a13eee5e7304a9299575655b078595048b0604",
      "tree": "a5b3fd18b3f1e81685e34e4833b6357d8e476de6",
      "parents": [
        "b0aecc22d3e8641cfc0d36816036d2b361003f7d"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Wed Jan 23 11:46:04 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Wed Jan 30 16:01:36 2019 -0500"
      },
      "message": "Remove Shader#copy()\n\nTest: make\n\nThis is a hidden, protected API that is not called anywhere on the\nsystem. Remove it.\n\nChange-Id: I6d908945826be6f0cf19278d3d3d8d653faf8ebe\n"
    },
    {
      "commit": "b0aecc22d3e8641cfc0d36816036d2b361003f7d",
      "tree": "8ae41f42fce97ca97bcf5bd4c3affb74d4cb8d8f",
      "parents": [
        "bee5e20495ae9f2abec3883734063d1419ddc78a"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Jan 18 11:09:59 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Wed Jan 30 16:01:31 2019 -0500"
      },
      "message": "Use ColorLongs in Linear-, Radial-, and Sweep-Gradient\n\nBug: 122844033\nTest: Id1809aef84eca0ccc61bafc2476ad52ed78d5f22\n\nAdd APIs that mirror the existing creation APIs, but use @ColorLongs\ninstead of @ColorInts. Note that call-sites that used a null array (but\nnot a variable \"int[]\" pointing to a null array) are now ambiguous. It\nis unlikely that there are any such call-sites, though, since they would\nthrow NullPointerException.\n\nConsolidate constructors. Those that take two color endpoints now create\ntwo-member long-arrays and call the more general constructor, saving\nlots of code. The additional cost of small arrays is not as much as it\nused to be, in the early days of Android, when this class was written.\n\nIn *Gradient#copy, there is no longer any need to clone the colors\narray, since the mColorLongs was created by the Gradient. Similarly,\nthere never was any need to clone mPositions, which was always a clone\nof the user-supplied array anyway.\n\nClean up Shader.cpp:\n - Throw and return if the pointer is null before dereferencing it.\n - Simplify and put together matrix-related code.\n\nChange-Id: Ib71c5e85b2a398959bf687bce33980d3429bcbc3\n"
    },
    {
      "commit": "a141563dc2fd1f8de033da4e7799badbf2968ecf",
      "tree": "ac6c006dd090db42dd5a424fe57bc4612aa05cb2",
      "parents": [
        "260d75ff714066d4b3f09bd46a3ba6d5f95e4ab6"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Jan 30 13:10:11 2019 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Jan 30 13:10:11 2019 -0500"
      },
      "message": "Expose new color long Graphics APIs as public APIs.\n\nTest: existing CtsGraphicsTestCases and CtsUiRenderingTestCases\nBug: 120904891\nChange-Id: I1d760a9a4681bd3e01132fe1b9213e5a17eb9c3d\n"
    },
    {
      "commit": "bee5e20495ae9f2abec3883734063d1419ddc78a",
      "tree": "f60981c1c59d5eeb5d8d4f51cee5b5a7d92eb013",
      "parents": [
        "ffcf6e546085b7398c0002f616ca0a36fed0f8e4"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Jan 11 13:36:39 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Wed Jan 30 10:10:04 2019 -0500"
      },
      "message": "Add Canvas#drawColor(@ColorLong)\n\nBug: 120904891\nTest: I857b8c1c9346285b2f6e4670c501c9d0d4053a0e\n\nChange-Id: If08e8b805a4bba1a526efcd3cb05d4cd19f82eff\n"
    },
    {
      "commit": "870053d44ba1d974730004da020f2d37fa116516",
      "tree": "70443b5163cfc460a6385bc9fc667f7bd582a204",
      "parents": [
        "66a23d050451e2548fa73f31f274ff59bc5c2fcb"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Thu Jan 24 08:37:27 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Jan 29 08:42:58 2019 -0500"
      },
      "message": "Add Bitmap#getColor\n\nBug: 120904891\nTest: I61ba938cdbea5154187c3a075c84436f2db81174\n\ngetColor returns a Color object in the ColorSpace of the Bitmap.\nThe underlying SkBitmap may contain values that are outside the\nnumerical range of the ColorSpace, so clamp them to fit.\n\nChange-Id: I4174b75a83f18d6e165dbd2c724708276e80af21\n"
    },
    {
      "commit": "7671e41efa07c9f26c3b2901c88922926e9a567e",
      "tree": "6b82cd77c72e183695d23a5a8347bc0b043af53d",
      "parents": [
        "6dde2b056204d5551ca9ddaddb92775e98efdbfe",
        "202084c9b8ff7c51cbd37cbfb4def57e59cdf0f1"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Jan 29 01:58:58 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 29 01:58:58 2019 +0000"
      },
      "message": "Merge \"Add Bitmap.setColorSpace()\""
    },
    {
      "commit": "3ffd2c30acd0ac3edc6444ec561e46fc6281cc15",
      "tree": "b9657ed88dd568b8a2af737087901a4b8e8d2d12",
      "parents": [
        "f46642cb7ccf1c4c9c49527a1b50078316b2b01b",
        "d01a515f551475c32a625de94187e8c9b9e05c1c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 28 23:14:47 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 28 23:14:47 2019 +0000"
      },
      "message": "Merge \"Suppress IllegalArgumentException on API 28 or before\""
    },
    {
      "commit": "202084c9b8ff7c51cbd37cbfb4def57e59cdf0f1",
      "tree": "76a32cfb7009f853dade2656e2ec6d3190c46763",
      "parents": [
        "ad0db6fcda538ab7bc361bc34c78ad6ade59a05b"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Jan 14 13:55:08 2019 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Jan 28 17:25:29 2019 -0500"
      },
      "message": "Add Bitmap.setColorSpace()\n\nBug: 120904891\nTest: CtsGraphicsTestCases\nChange-Id: I30be2cd77d810210ad87b281e6bb5587863982c3\n"
    },
    {
      "commit": "5e55e809a722f1540630062d356c504169b3a688",
      "tree": "2756dd748c25fb32ab271c04cddba33e1552a41e",
      "parents": [
        "24f44f2b0bbe86115a44d7ae66cb99afa82fc0be",
        "934ffa6d40f3db059521570ef3933f337e0362dd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 28 22:21:46 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 28 22:21:46 2019 +0000"
      },
      "message": "Merge \"Camera: Add support for dynamic depth image format\""
    },
    {
      "commit": "7d7a498788b540aa6ad4003cad4b8a253fa30675",
      "tree": "55d6e80092744527ada389f2394311c9d499a35e",
      "parents": [
        "3da552689edc44b6685989e585605f6bc022c0ab"
      ],
      "author": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Wed Jan 23 19:33:00 2019 -0800"
      },
      "committer": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Fri Jan 25 15:43:10 2019 -0800"
      },
      "message": "Hide new ColorSpace APIs\n\nA previous change added two new public ColorSpace APIs. These APIs are\nbeing used only by ColorDisplayService for specific purposes, so for now\nmake them hidden.\n\nBug 116516917\n\nChange-Id: Ib644d356a84d4122173ea4cafbac88bd63b1afcd\n"
    },
    {
      "commit": "d01a515f551475c32a625de94187e8c9b9e05c1c",
      "tree": "5c56bf65179041e3e91b4ef00e987514a9e7f637",
      "parents": [
        "9de1f4e9e81e3f384ada3002bb29d2618a5d512e"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Jan 24 17:03:01 2019 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Jan 24 17:03:01 2019 -0800"
      },
      "message": "Suppress IllegalArgumentException on API 28 or before\n\nThe suppression was added to FontsContract by\nI7fba3e4d21fc895dfee4300db7d7e3000095ff92 but not in\nResources.getFont.\nThis CL adds suppression for Resources.getFont too.\n\nBug: 122262093\nTest: locally verified\nChange-Id: I15159dadc7e3694be5d90435a7a24cd626086656\n"
    },
    {
      "commit": "48340af06e6a72fc339aaf95d385c51bb022a3c4",
      "tree": "f3fd7ab73ce9e2a3583b4f5c0e3629c3477950c1",
      "parents": [
        "f1a4991dcc929a6d034a8ae1c7fe5adf834ef2ca",
        "6e35e63740e9becb0976f3dc54ea0cd5ffc26564"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Jan 24 16:32:31 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 24 16:32:31 2019 +0000"
      },
      "message": "Merge \"Don\u0027t assume all FP16 bitmaps are linearly encoded.\""
    },
    {
      "commit": "6e35e63740e9becb0976f3dc54ea0cd5ffc26564",
      "tree": "28ed578f4c0d437261904bcc27f401981dbd4f6e",
      "parents": [
        "38c8934b67d7cb2904b25eaa422a7b56160dcfae"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Tue Jan 22 13:56:25 2019 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Wed Jan 23 16:31:52 2019 -0500"
      },
      "message": "Don\u0027t assume all FP16 bitmaps are linearly encoded.\n\nThe bitmap.create() function that does not take a colorspace does\nnot enforce that the bitmap is linearly encoded and as such it is\npossible for us to end up with FP16 bitmaps that are sRGB encoded.\n\nGiven that we want to remove that restriction (see b/120870651)\nwe update getColorSpace to report the actual colorSpace of the\nunderlying bitmap. This pulls a thread that causes a chain of\nupdates to various classes to ensure proper handling of the native\ncolorspace.\n\nBug: 120904891\nTest: CtsUiRenderingTestCases\nChange-Id: I27780aa603138b0e48f9320c2837bc53e22cdf95\n"
    },
    {
      "commit": "5cca8f250cd287d311b9e7b560a6c10fb909c6bc",
      "tree": "4de1ddaf1ac87b697327ac65cf2daf85d04989b5",
      "parents": [
        "6f19cbdd2f285a7d54ce7694488e307bbe26bfc9"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Dec 10 17:06:22 2018 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Jan 22 13:13:06 2019 -0800"
      },
      "message": "Add continuous SKP capture test api\n\nBug: 122856066\nTest: PictureCaptureDemo\nChange-Id: Iaf3a4bc1c8a2c18c7dff635c5f1cf726b331f8bf\n"
    },
    {
      "commit": "94ba100c508b12af72e2a52b1257950a92c01679",
      "tree": "64c979903ef2a00970f63dae743bbe3856dd8a3f",
      "parents": [
        "0e443d1633b97766182f6611c63fce2c65d6c822"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Thu Jan 17 13:34:51 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Jan 18 16:19:53 2019 -0500"
      },
      "message": "Convert @ColorLongs in native code\n\nBug: 120904891\nBug: 122844033\nBug: 122514935\nTest: CtsGraphicsTestCases\n\nOnly convert rgba. ColorSpace should be converted in Java, so we can\njust pass the native pointer and handle potential Exceptions before\ngoing into native code.\n\nRequires a change to external/skia [1] to make SkHalfToFloat SK_API.\n\n[1] https://skia-review.googlesource.com/c/skia/+/185140\n\nChange-Id: I0b42c17159b290868a6bed7b90da096995504c4d\n"
    },
    {
      "commit": "0e443d1633b97766182f6611c63fce2c65d6c822",
      "tree": "b3335c2810319be361d2a03ff37693d995c5f12f",
      "parents": [
        "61ae7ed2c6697d95c06422cad6aa4d4063dd4b24"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Wed Dec 19 11:38:35 2018 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Jan 18 16:19:48 2019 -0500"
      },
      "message": "ColorSpaces have native SkColorSpaces\n\nBug: 120904891\nBug: 122844033\nBug: 122514935\nTest: CtsGraphicsTestCases\n\nCreate an SkColorSpace when creating an android.graphics.ColorSpace.Rgb.\nThis allows simplifying getNativeColorSpace, so that each time we need\nit, we do not need to call back up into Java or reconstruct the\nSkColorSpace.\n\nFunnel all ColorSpace.Rgb constructors into one, so we can set a final\nmNativePtr in the base constructor. Update TransferParameters to also be\nfinal.\n\nUse the same TransferParameters as SRGB in EXTENDED_SRGB and DISPLAY_P3.\n\nWhen passing a BitmapFactory.Options to native, call getNativeInstance()\n(which may throw an Exception) and pass the result to native.\n\nMove native ColorSpace code into its own file.\n\nMake Paint methods @CriticalNative again, now that they do not need the\nJNIEnv.\n\nRemove unused decodeBitmap.\n\nChange-Id: I60adbb060b87ab6f92559f1217bfefc0b9ea72e1\n"
    },
    {
      "commit": "6ee411010ea270351d495bf357fc294304286a70",
      "tree": "8bdfbf8829202502f88c35523a04fa1aec42e4e7",
      "parents": [
        "dab4ad8ad952d722eb217c408b1abf2e87e4ad22"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Jan 15 09:34:37 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Wed Jan 16 14:26:20 2019 -0500"
      },
      "message": "Add Paint#get(ShadowLayer)ColorLong\n\nBug: 120904891\nTest: I6de01bd94fade605643af590f8d6909f09a5831e\n\nStore Paint\u0027s colors (both the ShadowLayerColor, and the previously\nuncached color that is stored in the native SkPaint) as @ColorLongs.\nWhen setting or retrieving the int version, convert. This allows\nreturning the long value that was manually set, so that we return the\ncolor in the ColorSpace that was requested.\n\nSince the color is already stored in Java, remove nGetAlpha, and return\nthe alpha from the ColorLong. When setting alpha, update the cached\nvalue, too.\n\nMake setShadowLayer(..., @ColorInt) and setColor(@ColorInt) call the\n@ColorLong versions, so they can share single JNI entry points.\n\nChange-Id: Ifc559893dd4db2629c59b6e53f0b2166d43e6049\n"
    },
    {
      "commit": "8bbcd3477cf24fa354ac831ccd61950a83d8fbc8",
      "tree": "b382afff831bc429c726b83e12707a21939b2310",
      "parents": [
        "aefa03dd9e8c3e99a2546be5e580fb205a22bdf7"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Wed Jan 09 09:32:20 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Jan 15 15:37:36 2019 -0500"
      },
      "message": "Add Paint#setShadowLayer(..., @ColorLong)\n\nBug: 120904891\nTest: I38537394bf314668cc38349c34b9492164cb0c92\n\nChange-Id: Id1c294a2a79087cfaaf4a25fa4888f706fdb8124\n"
    },
    {
      "commit": "aefa03dd9e8c3e99a2546be5e580fb205a22bdf7",
      "tree": "8a9b4c1d75ffd5cf18e208d3efe35cf64a7f2e49",
      "parents": [
        "cad512fc1b257533c9fb92dbcc76f2135fd2a350"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Jan 08 11:28:59 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Jan 15 15:37:36 2019 -0500"
      },
      "message": "Add Paint#setColor(@ColorLong)\n\nBug: 120904891\nTest: Iba796744a9cc3652a6bc1881a9b229403ffaed31\nChange-Id: Ib03212b27bc330e61b876a4be3d45c34ed551540\n"
    },
    {
      "commit": "edb5e1a1b8e6791f85040a6b602d5c7929260be7",
      "tree": "cb2b9b80da428a5584daa99233bbfcd4b56ed4f8",
      "parents": [
        "a32c79d362e851816b3e4b892f65fa9a274c0c68",
        "8b72c5b1d32d7541fd651e2942fba665a360d599"
      ],
      "author": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Tue Jan 15 19:29:16 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 15 19:29:16 2019 +0000"
      },
      "message": "Merge \"Add Display Auto White Balance to ColorDisplayService\""
    },
    {
      "commit": "77571c7f31839037c8d8eda4fa7903d143103001",
      "tree": "84c8a0f6613ec2d9aa27a70ba925078ec24825fe",
      "parents": [
        "8eb6be8133fd23ef16f6237bd57000bc4c966b97",
        "4c4259b33972300f98d77a19d80d9971b521c1b9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 15 18:50:21 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 15 18:50:21 2019 +0000"
      },
      "message": "Merge \"Add Bitmap#eraseColor(@ColorLong) + helpers\""
    },
    {
      "commit": "4c4259b33972300f98d77a19d80d9971b521c1b9",
      "tree": "03bd2d2b4cc346777a042b50299f55824fff249d",
      "parents": [
        "5ca575ae71493aedfbd93da032692ad5a1d50f27"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Mon Dec 17 10:40:07 2018 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Jan 15 12:16:19 2019 -0500"
      },
      "message": "Add Bitmap#eraseColor(@ColorLong) + helpers\n\nBug: 120904891\nTest: I162451ebf807f3a8a44679e5c10406468c922500\n\n- Add Bitmap#eraseColor(@ColorLong). This allows erasing in ColorSpaces\n  besides SRGB. New API is hidden pending API-council approval. It is\n  @TestApi so it can be used by the new tests.\n- Rewrite Bitmap#erase(@ColorInt)\u0027s internals. The ColorInt should be\n  treated as an SRGB color. The old code (deep in SkPixmap::erase)\n  treated the color as being in the SkColorSpace of the SkBitmap.\n- Update getNativeColorSpace to return immediately when it throws.\n  Existing callers should never throw anyway, since they do their own\n  checks (and throws) in Java before reaching this method. But relying\n  on this method to properly return simplifies the new callers.\n\nChange-Id: I1b736934ce1b8294c827bb61c2a363207569da4f\n"
    },
    {
      "commit": "74cababfd50fdcdffc219a7d442a917963adad1e",
      "tree": "84ae9f7d42e392f2c5687d0a6b1c4cc64e578ee9",
      "parents": [
        "ba058349314a2aa035dfd9799301fa082358da08",
        "18c9aa3e66666b5a8e055fcb7d9d564e2f0e788f"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Jan 15 08:55:13 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 15 08:55:13 2019 +0000"
      },
      "message": "Merge \"Add Canvas.drawTextRun(MeasuredText)\""
    },
    {
      "commit": "8b72c5b1d32d7541fd651e2942fba665a360d599",
      "tree": "c0b59a4385880ba684188c5cf7424839b38322d8",
      "parents": [
        "955f3424a2c327b17b89c7a17406f968447ae31d"
      ],
      "author": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Sun Nov 25 11:07:13 2018 -0800"
      },
      "committer": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Mon Jan 14 17:37:15 2019 -0800"
      },
      "message": "Add Display Auto White Balance to ColorDisplayService\n\nThis change adds Display Auto White Balance to ColorDisplayService.\nGiven panel chromaticity data, a nominal white point, and a desired\ncorrelated color temperature (CCT), this logic generates and applies a\nmatrix transform to shift the nominal white point to match the desired\nCCT.\n\nBug 116516917\n\nChange-Id: I07e341881a020a130944217fff372003edac0a8c\n"
    },
    {
      "commit": "151b6729ab45fa313f0126fa6de0bc8c86d5db4d",
      "tree": "35be32d3501462b95c4509a6a3cb1c6421be9b50",
      "parents": [
        "d50bda40d3566fdfb4e57472fdaee30345ddc5ca",
        "203034fe2cb099f97d5ff3ea433ca657e231daef"
      ],
      "author": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Mon Jan 14 17:23:36 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 14 17:23:36 2019 +0000"
      },
      "message": "Merge \"Make ColorSpace#isSrgb more restrictive\""
    },
    {
      "commit": "203034fe2cb099f97d5ff3ea433ca657e231daef",
      "tree": "55e090010105b288c7b30a76b24f135a577c1e93",
      "parents": [
        "a068624dce06a9948bcef377ac417394def31a4d"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Wed Jan 09 15:00:30 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Jan 11 14:31:52 2019 -0500"
      },
      "message": "Make ColorSpace#isSrgb more restrictive\n\nTest: Ide74c2e98d4aadba8bb0a24d132f161dbe64f4db\n\nPreviously, BT709 was believed to be SRGB, resulting in errors when we\ntried to convert between them. Make isSrgb test several values passed to\nOETF and EOTF to verify that it is very close to SRGB. This results in\nBT709 no longer being considered SRGB, fixing the conversion.\n\nUpdate the documentation to reflect the new behavior.\n\nNow that isSrgb is more restrictive, a gamma of 2.2 is no longer\nconsidered to be SRGB, which requires a change to a CTS test.\n\nChange-Id: I7bf8d5e3af2f91e38ca0b0d5d906713a125dd484\n"
    },
    {
      "commit": "934ffa6d40f3db059521570ef3933f337e0362dd",
      "tree": "59f4f653b673ecaed4280aee679df866983f5326",
      "parents": [
        "d345052a8f972ee6ad03b71b06f4b9b1bfbeea16"
      ],
      "author": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Jan 04 17:48:31 2019 +0000"
      },
      "committer": {
        "name": "Emilian Peev",
        "email": "epeev@google.com",
        "time": "Fri Jan 11 15:24:21 2019 +0000"
      },
      "message": "Camera: Add support for dynamic depth image format\n\nThe Jpeg image format must support additional dynamic\ndepth metadata according to the new standard. Camera\ndevices supporting non-exclusive depth map streams\nalong with appropriate Jpeg output will include this\nnew format by default.\n\nBug: 109735087\nTest: Camera CTS\nChange-Id: Id628466323a1ffbbdc7b44a5d15fe8df1cab8743\n"
    },
    {
      "commit": "3fea923b47732b45a2c8ef5a8caa4a39e33666cb",
      "tree": "6a30147c07b79a1af0b402bfe5b9ab4f2dd7967e",
      "parents": [
        "5af6efd9de10b168e76087a157481fa870075e5d"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Jan 10 13:24:22 2019 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Jan 10 13:24:22 2019 -0800"
      },
      "message": "Ignore missing target font family during alias registration\n\nBug: 122665938\nTest: TreeHugger\nChange-Id: Ic9f72bf5e6891f4d30d54b3f1a3b6a6fc8424788\n"
    },
    {
      "commit": "13f86506cc22b2038591acd51df6c72588636041",
      "tree": "57e8ccf0f91a7bf1e2b47acd7abdf3b30a139e65",
      "parents": [
        "ccee30ed1be39f056a7368392cfe59dae3cbe757",
        "5ff66466e534e94eba366e04fd3137316f39333b"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Jan 09 11:55:01 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 09 11:55:01 2019 -0800"
      },
      "message": "Merge \"Fix spelling of \"HARDWARE\"\" am: 9fbe481727 am: 281664abf5\nam: 5ff66466e5\n\nChange-Id: I54f91677a909281b402f2be8658813d3a91e3ae0\n"
    },
    {
      "commit": "d3a110b811bdd72c0f0eabcf42b63a5228c203b8",
      "tree": "34764e49f0e515ea0f2c4b99edd83129abc95394",
      "parents": [
        "424fc04c862abd6299c71719006aba9bd5a09913",
        "f50e8d4bc0556d450699390c78962c2cc6604288"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 08 20:38:47 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 08 20:38:47 2019 +0000"
      },
      "message": "Merge \"Fix a typo in ColorSpace.get\""
    },
    {
      "commit": "f50e8d4bc0556d450699390c78962c2cc6604288",
      "tree": "94d34ebd6eda74f3f44cf1f5543d6f9ec38217ed",
      "parents": [
        "a068624dce06a9948bcef377ac417394def31a4d"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Jan 08 09:06:54 2019 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Jan 08 09:20:07 2019 -0500"
      },
      "message": "Fix a typo in ColorSpace.get\n\nTest: I1759437bf620868706be0aadce2250ac9194ca7d\n\nThe intent is that an index that does not match a Named ColorSpace will\nthrow an IllegalArgumentException, so make that true for\nNamed.values().length, which does not correspond to one.\n\nAlso, update the Exception message to make it clear that the last index\nis exclusive.\n\nChange-Id: I015b7ee6274873cc329653473ead04b08f1cd55f\n"
    },
    {
      "commit": "e5b337dd88f057af441b2d8ce7b62ffc8be45369",
      "tree": "79576918003f8a7cd3ab27daefa48e070bf8f711",
      "parents": [
        "68325959113f0bb4001c2304a3de86c865693d4d"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Jan 07 17:42:05 2019 -0800"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Jan 07 17:42:05 2019 -0800"
      },
      "message": "Fix spelling of \"HARDWARE\"\n\nHappened to notice this while reading the code for other purposes.\n\nTest: Treehugger\nChange-Id: I2d1b1e239bfd8d2506a62173fe854f608a45f5b0\n"
    },
    {
      "commit": "55418eada51d4f5e6532ae9517af66c50ea495c4",
      "tree": "b93b0483b4ba377e1b4b79d344932fdf78d17de5",
      "parents": [
        "cfc6518c48d1648bb33a0f6633132a726a9bc7f9"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Thu Dec 20 15:30:45 2018 +0000"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Dec 28 14:26:35 2018 +0000"
      },
      "message": "Limit access to suspected false positives.\n\nMembers modified herein are suspected to be false positives: i.e. things\nthat were added to the greylist in P, but subsequent data analysis\nsuggests that they are not, in fact, used after all.\n\nAdd a maxTargetSdk\u003dP to these APIs. This is lower-risk that simply\nremoving these things from the greylist, as none of out data sources are\nperfect nor complete.\n\nFor APIs that are not supported yet by annotations, move them to\nhiddenapi-greylist-max-p.txt instead which has the same effect.\n\nExempted-From-Owner-Approval: Automatic changes to the codebase\naffecting only @UnsupportedAppUsage annotations, themselves added\nwithout requiring owners approval earlier.\n\nBug: 115609023\nTest: m\nChange-Id: Ia937d8c41512e7f1b6e7f67b9104c1878b5cc3a0\nMerged-In: I020a9c09672ebcae64c5357abc4993e07e744687\n"
    },
    {
      "commit": "31755f94e11225df5d59b8f7e535106200fdf32d",
      "tree": "99d4fd992001fff7b5fd15487c227c88d63936ae",
      "parents": [
        "2f16d51c993c5957bcecf63b72ae28488355a8be"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Thu Dec 20 13:53:36 2018 +0000"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Dec 28 11:50:04 2018 +0000"
      },
      "message": "Limit access to suspected false positives.\n\nMembers modified herein are suspected to be false positives: i.e. things\nthat were added to the greylist in P, but subsequent data analysis\nsuggests that they are not, in fact, used after all.\n\nAdd a maxTargetSdk\u003dP to these APIs. This is lower-risk that simply\nremoving these things from the greylist, as none of out data sources are\nperfect nor complete.\n\nFor APIs that are not supported yet by annotations, move them to\nhiddenapi-greylist-max-p.txt instead which has the same effect.\n\nExempted-From-Owner-Approval: Automatic changes to the codebase\naffecting only @UnsupportedAppUsage annotations, themselves added\nwithout requiring owners approval earlier.\n\nBug: 115609023\nTest: m\nChange-Id: I020a9c09672ebcae64c5357abc4993e07e744687\n"
    },
    {
      "commit": "99dc47483ceaad1eccb77f9fb37b435d77e04f6f",
      "tree": "848d537173b8b079ea6f0f26d9ffce4f17e9edd5",
      "parents": [
        "7f1c1398e1658ec4fd137696d4985bf3a75f748b",
        "5bb571dc403b4384111ae987ed7b44aaef76ace0"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Dec 21 14:00:45 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 21 14:00:45 2018 +0000"
      },
      "message": "Merge \"A brave new world for window insets (5/n)\""
    },
    {
      "commit": "5bb571dc403b4384111ae987ed7b44aaef76ace0",
      "tree": "9f475f0f373a0b499760fe86e96b1d95f63362f1",
      "parents": [
        "7fa78c545b5bd3845f3cda4bad0bd3b37b327732"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Nov 06 14:42:04 2018 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Dec 21 13:05:30 2018 +0100"
      },
      "message": "A brave new world for window insets (5/n)\n\nImplement controlWindowInsetsAnimation\n\nBased on the leashes we have on the client, and the insets the\nclient has requested, we are able to move the surfaces around\nsuch that the resulting insets will match what the client\nrequested.\n\nBug: 118118435\nChange-Id: I0616e53455a6544aaf374c1b0eb10e258aced21d\n"
    },
    {
      "commit": "24fc901e5f54ee00f6df323178a05787ab705814",
      "tree": "73085619ebaac2d7632dca84cfbfac40222e4bed",
      "parents": [
        "e8a25e3dbc1f6b1409ea511e2b5faa31cff3faea"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Fri Dec 07 14:12:12 2018 -0500"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Dec 20 10:04:46 2018 -0500"
      },
      "message": "Improve performance of unclipped save layers.\n\nInstead of allocating a separate renderTarget and switching\nbetween them on each draw the new implementation follows the same\npattern that the old HWUI renderer used. The area of the layer is\nnow copied to a buffer on the GPU, the area is then cleared, rendered\nas normal, and finally the texture is redrawn using dst_over blending.\n\nThis results in no render target switches and is considerably faster\non some hardware.\n\nTest: CtsGraphicsTestCases, CtsUiRenderingTestCases\nBug: 119222339\nChange-Id: I716aac1fc31e4c7a171373d37dee82034c01cf18\n"
    },
    {
      "commit": "c0cd1d7f334b0e7f18b812fbe7b6fae6d599f9ee",
      "tree": "e15732b07ae18215d0cfd2902ed359a159200aab",
      "parents": [
        "4895d8f0fc69e9c6ca912b1a1eac6efcb08d04db",
        "283bb46846ad161045efc4650d3cbc40abf5f24b"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Dec 18 17:50:37 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 18 17:50:37 2018 +0000"
      },
      "message": "Merge \"New WebViewFunctor API\""
    },
    {
      "commit": "3a0041cf1d2f4ea121109f0459a8a24bb6c0c130",
      "tree": "6ebb10fca03dbba91c5964b351d0f61d6a0a61cf",
      "parents": [
        "97a58b4f8cf51dcb6543c117510400caa7de05db",
        "470a91913580f4d59d240ade0d3b14238d07220b"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Dec 17 23:52:21 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 17 23:52:21 2018 +0000"
      },
      "message": "Merge \"Add missing getter \u0026 improve docs\""
    },
    {
      "commit": "470a91913580f4d59d240ade0d3b14238d07220b",
      "tree": "7f52743a2e37bf82d44cd3ea4fad4d9f7f462ce3",
      "parents": [
        "832c17330e2d0ce52f1471404ef539a63f120ca2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Dec 17 10:55:54 2018 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Dec 17 11:25:34 2018 -0800"
      },
      "message": "Add missing getter \u0026 improve docs\n\nAlso fix SkiaDisplayList::getUsedSize()\n\nBug: 120865963\nTest: atest android.uirendering.cts.testclasses.RenderNodeTests\nChange-Id: I3cdbd8d330da9a00367199087c9ae1e0a2cacf46\n"
    },
    {
      "commit": "283bb46846ad161045efc4650d3cbc40abf5f24b",
      "tree": "732e431c7f704282c3ae5a669f22999520f2507e",
      "parents": [
        "832c17330e2d0ce52f1471404ef539a63f120ca2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Dec 13 16:40:14 2018 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Dec 14 14:07:18 2018 -0800"
      },
      "message": "New WebViewFunctor API\n\nShould function alongside existing functor API.\n\nBug: 120997728\nTest: hwuiunit passes\nChange-Id: I8f6143d0be1111431b55016f34de319f6b8c8910\n"
    },
    {
      "commit": "8168f6fa286408b6f35ce1a17686fa98bea5fe4a",
      "tree": "0922a9c3c87f98bb5a791cdb850728c1645cc5f0",
      "parents": [
        "2f4644d5dd189a2efd42c76489431c823839d955",
        "55e49d8816d7a6fad20df604839a4d2bfe6b9957"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Thu Dec 13 21:02:37 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 13 21:02:37 2018 +0000"
      },
      "message": "Merge \"Added support for additional Blend Modes\""
    },
    {
      "commit": "863c52e80afb5e8e1347b82c2cfd49e75e9d6528",
      "tree": "c04211d395552727ef5f47075f161e810809e088",
      "parents": [
        "e77ff79fdb4ff3293b0d6da13d8160f54e0ece80",
        "de9f10d9d97073a2ec47f7a7e80ce31edb83bb76"
      ],
      "author": {
        "name": "Fabian Kozynski",
        "email": "kozynski@google.com",
        "time": "Wed Dec 12 13:58:48 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 12 13:58:48 2018 +0000"
      },
      "message": "Merge \"Sets Drawable in DrawableWrapper properly\""
    },
    {
      "commit": "de9f10d9d97073a2ec47f7a7e80ce31edb83bb76",
      "tree": "f27ae7944dbc1e488e7addb6b79892997f1e4263",
      "parents": [
        "a6d828755ee306c0e01a078530c22bd83d56f55f"
      ],
      "author": {
        "name": "Fabian Kozynski",
        "email": "kozynski@google.com",
        "time": "Mon Dec 10 16:33:06 2018 -0500"
      },
      "committer": {
        "name": "Fabian Kozynski",
        "email": "kozynski@google.com",
        "time": "Tue Dec 11 22:15:12 2018 +0000"
      },
      "message": "Sets Drawable in DrawableWrapper properly\n\nBefore this change, creating a DrawableWrapper (through a custom class\nthat extends it) using the public constructor will not set the drawable\ncallback properly and DrawableWrapper will not update when the\nunderlying Drawable is invalidated.\n\nTest: CTS test added\nBug: 120835632\nChange-Id: I3545db76e032c0bd074846e0fa64c5cf01e2941c\n"
    },
    {
      "commit": "15b123ef458ed927782b080921e987c995fc56dd",
      "tree": "008426beb4c3b8d4ecb62112efa17be09fe6d427",
      "parents": [
        "58ee538e62b15dd07274beecf5f925543c5332b1",
        "7409b8620ff39ff0788ef1543297f0cb1d49a0e0"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 14:13:44 2018 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 14:13:44 2018 -0800"
      },
      "message": "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master\n\nBug: 120502534\nChange-Id: Idc8bfb6d97a869b76cfb87ca1a494201baf9e8bd\n"
    },
    {
      "commit": "291ef0536d2ed154f5c559dbcdbfc92b10a21e66",
      "tree": "0ea279c1774d2f8e0e22f18319da9f36064714a8",
      "parents": [
        "c70a74e1a740a67ad98702b08e06dba572ca7289"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Nov 16 10:41:32 2018 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Dec 10 16:18:02 2018 -0800"
      },
      "message": "Recompute PcT with existing PcT for different direction\n\nThe text direction can not be fully determined in detached state.\nTo improve even in that case, compute PrecomputedText from existing\nPrecomputedText with new direction.\n\nHere is the performance difference. According to the perf test result,\nup to 80% of computation can be recycled from existing PrecomputedText.\n\nandroid.text.StaticLayoutPerfTest (u sec):\n    PrecomputedText Greedy NoHyphenation             :    371 -\u003e    371: (   +0,  +0.0%)\n    PrecomputedText Greedy NoHyphenation DirDifferent:  6,923 -\u003e  1,437: (-5486, -79.2%)\n    RandomText Greedy NoHyphenation                  :  6,633 -\u003e  6,627: (   -6,  -0.1%)\n\nOn the other hand, this CL increase the memory usage of the\nPrecomputedText up to 10%. Here is an reference memory usage.\n\nandroid.text.PrecomputedTextMemoryUsageTest (bytes):\n  MemoryUsage\n    Arabic Hyphenation                               : 17,135 -\u003e 18,116: ( +981, +5.7%)\n    Arabic NoHyphenation                             : 17,135 -\u003e 18,116: ( +981, +5.7%)\n    CJK Hyphenation                                  : 29,000 -\u003e 31,584: (+2584, +8.9%)\n    CJK NoHyphenation                                : 29,000 -\u003e 31,584: (+2584, +8.9%)\n    Latin Hyphenation                                : 16,526 -\u003e 17,185: ( +659, +4.0%)\n    Latin NoHyphenation                              : 14,200 -\u003e 14,784: ( +584, +4.1%)\n\nBug: 119312268\nTest: atest CtsWidgetTestCases\nTest: atest CtsTextTestCases\nTest: atest CtsGraphicsTestCases\nTest: minikin_tests\n\nChange-Id: Ia02c201afac5d7d1c086a45f15696f39a6b2a76c\n"
    },
    {
      "commit": "55e49d8816d7a6fad20df604839a4d2bfe6b9957",
      "tree": "702af16273fc7f932524de5b1a3d1bea676d1b13",
      "parents": [
        "f66699ae165ce30f1cda1cfd704027a75bf457d2"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Fri Nov 16 11:22:32 2018 -0800"
      },
      "committer": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Mon Dec 10 15:38:59 2018 -0800"
      },
      "message": "Added support for additional Blend Modes\n\nCreated new BlendMode enum that maps to XferModes with additional\nsupported native values that map to SkBlendMode constants\nCreated new BlendModeColorFilter\nDeprecated PorterDuffColorMode and PorterDuffColorFilter in\nfavor of BlendMode and BlendModeColorFilter.\nUpdated Paint API to use setBlendMode and deprecated setXfermode\n\nBug: 119671925\nBug: 112166079\nBug: 73224934\nTest: Added CTS tests for BlendMode and BlendModeColorFilter\nChange-Id: Idd50e2f0b81975c5ecf6f1c0edd4eb68198d9131\n"
    },
    {
      "commit": "9fed6daf9c263c435a0529b672dda99efd4cc00d",
      "tree": "72acc01d760c042802abfc699aa5bcd97127905c",
      "parents": [
        "9246fc76169d167df0a208476ac18d84503f2a1c",
        "a6ceda2e9bacb5315612745c21f7fd134ddeb8d9"
      ],
      "author": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Wed Dec 05 06:02:31 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 05 06:02:31 2018 +0000"
      },
      "message": "Merge \"Make AdaptiveIconDrawable to read in config_icon_mask at non boot time\""
    },
    {
      "commit": "a6ceda2e9bacb5315612745c21f7fd134ddeb8d9",
      "tree": "46296e9ba081e5311db9025ce2ac3447dadaf9eb",
      "parents": [
        "e1b9672d80117119abbcf43e2b8ef180d0190c07"
      ],
      "author": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Fri Nov 30 13:52:33 2018 -0800"
      },
      "committer": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Tue Dec 04 16:11:52 2018 -0800"
      },
      "message": "Make AdaptiveIconDrawable to read in config_icon_mask at non boot time\n\nBug: 120286620\nBug: 120286623\n\nTest: adb shell cmd overlay enable --user 0 com.android.theme.icon.square\n\nChange-Id: Ifcb8f39308ba3b1702df983c87be3872abdbf68d\n"
    },
    {
      "commit": "37fc6eaaf44b416b142e6b45c62203cc7b8c40ea",
      "tree": "045f6ed05b15f3f2e181751456ca4bb85e9229bb",
      "parents": [
        "1e1d576b5cda35145eea87b35e989cd2a693b255",
        "1ca52e44ccf2566cd7c33062352a9305d36091e2"
      ],
      "author": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Tue Dec 04 20:12:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 04 20:12:46 2018 +0000"
      },
      "message": "Merge \"Add API to ColorSpace to compute chromaticity coordinates from CCT\""
    },
    {
      "commit": "d380bd78bb68785eeef1cbbf9fd1230310c5687b",
      "tree": "ffae1af4a94b0c82dea04ab2a1c965b245c0e5e1",
      "parents": [
        "c999d5ee849e23bfc49d5e56235702852c966b07",
        "68d1d5ae7e228ceb19f70366567d85c1efa7b6b5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 04 10:10:11 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 04 10:10:11 2018 +0000"
      },
      "message": "Merge \"Select closest font\u0027s style for backward compatibility\""
    },
    {
      "commit": "68d1d5ae7e228ceb19f70366567d85c1efa7b6b5",
      "tree": "8362702fb6f5727b52ce5be7e0e2e4976c2f2483",
      "parents": [
        "122c0879cdf41aacb3df461c475e4aaf1b90f49f"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Dec 03 19:48:49 2018 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Dec 03 20:16:26 2018 -0800"
      },
      "message": "Select closest font\u0027s style for backward compatibility\n\nBug: 119425212\nTest: atest CtsGraphicsTestCases\nTest: atest CtsContentTestCases:android.content.res.cts.ResourcesTest\nChange-Id: I796baf342f752366040b657954b0f82d358a7790\n"
    },
    {
      "commit": "b0160bb54101f3b101190707a43ba5294a4fdbe7",
      "tree": "96d018e9c1cfc2d2d992eda0caba1ddd5a908022",
      "parents": [
        "390de008b00e5a51b9cf225b0d477c1fd7db6003",
        "65add4028167cbe4e469dd6dc9031db3b5a4fad9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 03 22:32:37 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 03 22:32:37 2018 +0000"
      },
      "message": "Merge \"Fix issue with xml GradientDrawables consuming both resources and parameters provided by the Theme leading to array size mismatch exceptions being thrown.\""
    },
    {
      "commit": "1ca52e44ccf2566cd7c33062352a9305d36091e2",
      "tree": "1bac09289affe64b050317cd39ac0d73dea5f24d",
      "parents": [
        "122c0879cdf41aacb3df461c475e4aaf1b90f49f"
      ],
      "author": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Thu Nov 29 12:47:46 2018 -0800"
      },
      "committer": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Sun Dec 02 12:01:11 2018 -0800"
      },
      "message": "Add API to ColorSpace to compute chromaticity coordinates from CCT\n\nAdd a ColorSpace API that computes the chromaticity coordinates of a CIE\nseries D illuminant from the specified correlated color temperature.\n\nTest: cts-tradefed run singleCommand cts-dev --module CtsGraphicsTestCases --test android.graphics.cts.ColorSpaceTest\nBug 116516917\n\nChange-Id: I6c9f2a23ed548556d5fbdcc22ed5a094a76bb8e4\n"
    },
    {
      "commit": "7b705a37cc12463f3a028448530dcef2e70df66e",
      "tree": "1a3b508e5c2b2b686afd24c5a272b51809282f8e",
      "parents": [
        "b9df101c9eac5ce534f274c04913e54ea2c3de1d",
        "9d04f3ee11e863e215c47d569f519e4d4aff5e9f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Dec 01 00:04:51 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 01 00:04:51 2018 +0000"
      },
      "message": "Merge \"Remove mFamilies from Typeface\""
    },
    {
      "commit": "65add4028167cbe4e469dd6dc9031db3b5a4fad9",
      "tree": "35405f1a0bfa5ef92da526d7c169ff7744c65176",
      "parents": [
        "f66699ae165ce30f1cda1cfd704027a75bf457d2"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Fri Nov 30 13:13:26 2018 -0800"
      },
      "committer": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Fri Nov 30 13:13:26 2018 -0800"
      },
      "message": "Fix issue with xml GradientDrawables consuming both resources\nand parameters provided by the Theme leading to array size\nmismatch exceptions being thrown.\n\nGradientDrawable#updateGradientDrawableGradient is invoked multiple\ntimes during xml inflation, once with the attributes provided in the xml\nand another with attributes provided in the Theme. However, if\nparameters come from both the xml resources and the theme, when\ntheme attributes are applied it can partially squash previously applied\nvalues.\n\nIn the case of gradients this can lead to a previously initialized\npositions array with floating point offsets for color positions\nbeing applied but not overriden with theme attributes that only include\na portion of the attribute values leading to exceptions being thrown\nas the colors and positions arrays are not of the same size\n\nBug: 112122447\nTest: Created test of xml inflation of GradientDrawables both with and\nwithout theme attributes\n\nChange-Id: Ie4183e2304677d30b6faef1cdc5c1be27ef9edd4\n"
    },
    {
      "commit": "94da729e426ec8f806411cf63b3e783d0b1c5838",
      "tree": "02aa3e82ec3963a1918c2b0d55c7f6bc635e73d2",
      "parents": [
        "3beb2e460a4856f08fdd85fb86a6cb13ec2f2763",
        "6310160c4ee85f1d1b7935c82b29e9589247981d"
      ],
      "author": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Fri Nov 30 18:38:15 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 30 18:38:15 2018 +0000"
      },
      "message": "Merge \"Add a public chromatic adaptation API to ColorSpace\""
    },
    {
      "commit": "6b160006e97d0e9b27e3b4831471ea2a94c6b297",
      "tree": "309fe7972b3ac7694dec20a57aaf199c55e92ce1",
      "parents": [
        "09c07c3533b11028b4e7da615156026fa8599b85"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Nov 28 00:39:28 2018 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Nov 29 21:52:00 2018 -0800"
      },
      "message": "Enforce at least 64 fallback capacity for custom font fallback.\n\nBug: 119620208\nTest: atest TypefaceCustomFallbackBuilderTest\nChange-Id: Ibf1eaac97a4f940f00ef117f7fb386f72b67b6c5\n"
    },
    {
      "commit": "cce6c22e767ec5ddef78f5c4edda40a73b058798",
      "tree": "5c41520de0ef1987210fc49a7e47597d40dd41f2",
      "parents": [
        "284f8e2531698b3627e08fb594bda874a68e890a",
        "29cad18bd36e35e509ff25daf8b3ccd4eed1685a"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Thu Nov 29 21:25:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 29 21:25:40 2018 +0000"
      },
      "message": "Merge \"Hidden API usage Landroid/graphics/Canvas;-\u003emBitmap:Landroid/graphics/Bitmap;\""
    },
    {
      "commit": "fd45bee1765c7d438119c6eaf0dc3d84f3936ea5",
      "tree": "cd37f0d6cfb3b94e349fa8317558371cfaea085d",
      "parents": [
        "362a3caaf187784b21a4956218799c36b96548fb",
        "f96b284dec00580c6a586cf6787b98eeb2cd73f5"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Nov 29 20:39:08 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 29 20:39:08 2018 +0000"
      },
      "message": "Merge \"Add a unique ID to rendernode\""
    },
    {
      "commit": "362a3caaf187784b21a4956218799c36b96548fb",
      "tree": "e65f0de8a130896dc7555a4d1b89ef0eb2a072bc",
      "parents": [
        "1a4c431e264b78e56793ccd10b75f41356b81804",
        "3af32bd94ff3071a5b21b56908dd65f0dda4613f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 29 20:21:27 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 29 20:21:27 2018 +0000"
      },
      "message": "Merge \"Make Drawable#isProjected public\""
    },
    {
      "commit": "f96b284dec00580c6a586cf6787b98eeb2cd73f5",
      "tree": "60718dd4bbb9d2529af4db23be5dbac415b67a8b",
      "parents": [
        "9a72ec33d78a43c8771bfa03061c0fc9d6e4225d"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Nov 29 09:44:10 2018 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Nov 29 10:34:32 2018 -0800"
      },
      "message": "Add a unique ID to rendernode\n\nBug: 120089776\nTest: dump\u0027d skp, verified ID present\nChange-Id: I97a03804ebc53925e1b79db3dd616a728eff0bfa\n"
    },
    {
      "commit": "f96c90ac6c4e12113b5d0187bf3be9b39e7027f4",
      "tree": "fc94913301fe50110c27d0d9a339bf7780df6b81",
      "parents": [
        "e30fc89f6ef268e45c3879a03c4d294ca4f1ba1c"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Sep 26 16:55:15 2018 +0200"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Nov 29 13:37:43 2018 +0100"
      },
      "message": "A brave new world for window insets (1/n)\n\nThis CL starts a journey to discover a brave new inset world. The\npath to get us there may be rocky, but it\u0027s going to be rocky.\n\nOne of the main pledges of the new API is that an app can retrieve\nwhat is causing a certain inset easily. For that, we need to\ndispatch metadata who is causing what inset, such that we can query\nit from the client side.\n\nFurthermore, the client will be able to manipulate insets directly,\nbut also listen to animation changes. We don\u0027t want to go through\nwindow manager for that, thus, there needs to be a local codepath\nfrom (global window state -\u003e WindowInsets).\n\nBecause we have these two requirements, we dispatch the relevant\nglobal window state for insets, represented by InsetsState, and\ndispatch it to the client. On the client side we take the frame\nand the InsetsState and generate WindowInsets out of it.\n\nBug: 118118435\nTest: InsetsSourceTest, InsetsStateTest, InsetsSourceProviderTest,\nInsetsStateControllerTest\nChange-Id: I2bfe9dda376512916261823fc2ee35cbedeb6731\n"
    },
    {
      "commit": "9d04f3ee11e863e215c47d569f519e4d4aff5e9f",
      "tree": "0a8bde7b6e0099ecc491acad6de0934f6ff3b435",
      "parents": [
        "ce871128cd381df762c0d183b9dcd50a748c962a"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Nov 28 22:50:09 2018 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Nov 28 22:50:09 2018 -0800"
      },
      "message": "Remove mFamilies from Typeface\n\nmFamilies was added for itemize API but it won\u0027t happen in this\nrelease, so removing unused member from Typeface.\n\nBug: 120177351\nTest: TreeHugger\nChange-Id: Iee0e381b28aa42daba1621084ce5a9d1a8753cd5\n"
    },
    {
      "commit": "18c9aa3e66666b5a8e055fcb7d9d564e2f0e788f",
      "tree": "ed5d1f2229c5bfc4a7447732c748573b91e54c34",
      "parents": [
        "ce871128cd381df762c0d183b9dcd50a748c962a"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Nov 28 00:00:31 2018 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Nov 28 17:17:31 2018 -0800"
      },
      "message": "Add Canvas.drawTextRun(MeasuredText)\n\nThis API is needed to port PrecomputedText in support library.\n\nBug: 112327179\nTest: atest CtsWidgetTestCases\nTest: atest CtsGraphicsTestCases\nTest: atest CtsTextTestCases\nChange-Id: Ib3aa4cc9e486bdcf6e4cbbfa75c0d2cf6960e982\n"
    },
    {
      "commit": "29cad18bd36e35e509ff25daf8b3ccd4eed1685a",
      "tree": "57a0e632b773028848695543ab952eac07f7b222",
      "parents": [
        "f66699ae165ce30f1cda1cfd704027a75bf457d2"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Wed Nov 28 16:48:07 2018 -0800"
      },
      "committer": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Wed Nov 28 17:10:08 2018 -0800"
      },
      "message": "Hidden API usage Landroid/graphics/Canvas;-\u003emBitmap:Landroid/graphics/Bitmap;\n\nAdded maxTargetSdk version for Android P for access of mBitmap field\nthrough reflection. The bitmap field is configured by application usages\nonly already so there is no need for apps to query the Bitmap from the\nCanvas and should do so directly. Getters on Canvas is generally seen\nas an anti-pattern.\n\nBug: 117521088\nTest: none\nChange-Id: Ie2318248f7682fd4e0a46121bc6e9f5c1546dcfb\n"
    },
    {
      "commit": "3af32bd94ff3071a5b21b56908dd65f0dda4613f",
      "tree": "fd27e855cba92672c54ed3e74f93b4d628c419ee",
      "parents": [
        "f66699ae165ce30f1cda1cfd704027a75bf457d2"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Wed Nov 28 15:54:09 2018 -0800"
      },
      "committer": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Wed Nov 28 16:08:10 2018 -0800"
      },
      "message": "Make Drawable#isProjected public\n\nModify Drawable public API to no longer mark isProjected\nas hidden. This makes the Drawable API consistent with the public\nRenderNode API and enables androidx to move away from accessing\nthis method through reflection\n\nBug: 120159096 117521142\nTest: none\nChange-Id: Icdd778bf3d8842eb2d69e5872f704c7e96f915fa\n"
    },
    {
      "commit": "6310160c4ee85f1d1b7935c82b29e9589247981d",
      "tree": "fcc760e645db796f17e1d9ee02aebed79c41ea15",
      "parents": [
        "9ebc59e956dae017cb519c61277c56ecc2875b57"
      ],
      "author": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Tue Nov 27 13:15:10 2018 -0800"
      },
      "committer": {
        "name": "Daniel Solomon",
        "email": "solomondaniel@google.com",
        "time": "Wed Nov 28 03:34:20 2018 +0000"
      },
      "message": "Add a public chromatic adaptation API to ColorSpace\n\nThis change adds a public version of ColorSpace.chromaticAdaptation(),\nso that chromatic adaptation can be done on independent CIE xyY or XYZ\ncoordinates without the involvement of ColorSpace.Rgb.\n\nTest: cts-tradefed run singleCommand cts-dev --module CtsGraphicsTestCases --test android.graphics.cts.ColorSpaceTest\nBug 116516917\n\nChange-Id: I73c33750c343301bed4bb018c351d87c5043b59b\n"
    },
    {
      "commit": "39ba1b71fb24481159563cf38c57ca614c12fa7d",
      "tree": "ade47e19ef28cfc687910bf20667dcb6cc371320",
      "parents": [
        "b19111e8aa972da03e20e4b5fa5d64d08619ad0b",
        "e5f73f1c18460681319471cb083ad5908eba896a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 28 03:11:29 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 28 03:11:29 2018 +0000"
      },
      "message": "Merge \"Add new API for returning max custom fallback families\""
    },
    {
      "commit": "23b82af43f9d0b5543a2ca6b3eb2bab823c7262c",
      "tree": "de1bdbf3279a354668569b6ecefea9392b2719a0",
      "parents": [
        "1ca78d6198c21899a245a634e1059138c03b5230",
        "c0a315a1a8d66b16294bae18d44d80eff3bfc04a"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Tue Nov 27 01:04:45 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 27 01:04:45 2018 +0000"
      },
      "message": "Merge \"Fix AdaptiveIconDrawable#getAlpha\""
    },
    {
      "commit": "93a1b159bc7cdc0491f8a5c2c30155fb30adff0f",
      "tree": "fc59d98a7c4584d194b8cf7c9c25a8676bd05cdb",
      "parents": [
        "0430c3ceef11063982e8f1e04106f0f72e041849",
        "911851b91fce61836eb1f384391e8a7f48c201cd"
      ],
      "author": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Mon Nov 26 17:12:33 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 26 17:12:33 2018 +0000"
      },
      "message": "Merge \"Fix isProjected and setAlpha method inside AdaptiveIconDrawable\""
    },
    {
      "commit": "911851b91fce61836eb1f384391e8a7f48c201cd",
      "tree": "63e43c7c8895b027717a46e658c7d84f708a568b",
      "parents": [
        "3389e5b577110e8b1a9b9dbfb63f828f671c8051"
      ],
      "author": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Tue Nov 20 11:12:54 2018 -0800"
      },
      "committer": {
        "name": "Hyunyoung Song",
        "email": "hyunyoungs@google.com",
        "time": "Wed Nov 21 16:06:22 2018 -0800"
      },
      "message": "Fix isProjected and setAlpha method inside AdaptiveIconDrawable\n\nTest: atest AdaptiveIconDrawableTest (in coretests and cts)\nBug: 119755247\nBug: 118503770\n\nSome contexts regarding why setAlpha was misbehaving before and after\nsetBounds: mPaint object which is used to setAlpha was shared between\nmLayerBitmpa and mMaskBitmap. When bounds changed, mMaskBitmap alpha was\nnever properly refreshed. To fix this issue AND to optimize memory\nfootprint, the drawable no longer make use of the mMaskBitmap object.\n\nCtsGraphicsTestCases (21 Tests)\n------------------------------\n[1/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testInflateNull: PASSED (1ms)\n[2/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testSetVisible: PASSED (1ms)\n[3/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testDraw: PASSED (1ms)\n[4/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testGetOpacity: PASSED (0ms)\n[5/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testGetForegroundBackground: PASSED (25ms)\n[6/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testGetConstantState: PASSED (0ms)\n[7/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testIsStateful: PASSED (0ms)\n[8/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testDrawNull: PASSED (1ms)\n[9/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testDrawWithoutSetBounds: PASSED (0ms)\n[10/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testGetIntrinsicHeight: PASSED (25ms)\n[11/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testScheduleDrawable: PASSED (1ms)\n[12/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testGetIntrinsicWidth: PASSED (1ms)\n[13/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testSetColorFilter: PASSED (1ms)\n[14/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testInflate: PASSED (1ms)\n[15/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testMutate: PASSED (1ms)\n[16/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testGetChangingConfigurations: PASSED (1ms)\n[17/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testInvalidateDrawable: PASSED (0ms)\n[18/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testUnscheduleDrawable: PASSED (25ms)\n[19/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testConstructor: PASSED (0ms)\n[20/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testSetAlpha: PASSED (0ms)\n[21/21] android.graphics.drawable.cts.AdaptiveIconDrawableTest#testDrawSetBounds: PASSED (478ms)\n\nSummary\n-------\nCtsGraphicsTestCases: Passed: 21, Failed: 0\n\nFrameworksCoreTests (6 Tests)\n----------------------------\n[1/6] android.graphics.drawable.AdaptiveIconDrawableTest#testDraw_withBounds: PASSED (454ms)\n[2/6] android.graphics.drawable.AdaptiveIconDrawableTest#testDraw_withoutBounds: PASSED (0ms)\n[3/6] android.graphics.drawable.AdaptiveIconDrawableTest#testGetIconMaskAfterSetBounds: PASSED (1ms)\n[4/6] android.graphics.drawable.AdaptiveIconDrawableTest#testGetIconMask_withoutBounds: PASSED (1ms)\n[5/6] android.graphics.drawable.AdaptiveIconDrawableTest#testGetOutline_withBounds: PASSED (0ms)\n[6/6] android.graphics.drawable.AdaptiveIconDrawableTest#testSetAlpha: PASSED (0ms)\n\nSummary\n-------\nFrameworksCoreTests: Passed: 6, Failed: 0\n\nChange-Id: Ie52019f14159e06b957760cb33118cb74f58415e\n"
    },
    {
      "commit": "c0a315a1a8d66b16294bae18d44d80eff3bfc04a",
      "tree": "f3bd573d871fe1d81a04649727021f0c24b72a56",
      "parents": [
        "f66699ae165ce30f1cda1cfd704027a75bf457d2"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Mon Nov 19 21:28:24 2018 -0800"
      },
      "committer": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Wed Nov 21 13:19:26 2018 -0800"
      },
      "message": "Fix AdaptiveIconDrawable#getAlpha\n\nReverted getAlpha implementation to return the\nalpha value of the first non-null child drawable\n\nBug: 119668265\nTest: Added test to AdaptiveIconDrawableTest\nChange-Id: Ia3384755e8f9a83b88d586881eae80e4c201097f\n"
    },
    {
      "commit": "a358d7611ccf1a2a55da137ef3f8067ebac154e2",
      "tree": "bd19e000196f0407251b6f6d050c539debd50f30",
      "parents": [
        "24efb38c077b921726b99320b822655ab1909b70"
      ],
      "author": {
        "name": "Louis Chang",
        "email": "louischang@google.com",
        "time": "Mon Nov 19 18:25:34 2018 +0800"
      },
      "committer": {
        "name": "Louis Chang",
        "email": "louischang@google.com",
        "time": "Tue Nov 20 22:38:08 2018 +0800"
      },
      "message": "Set minimum scaled width/height to 1\n\nApplications could be launched on a secondary display that\nhas lower density than default display. While some applications\nmay use 1x1 image resource as activity background, the scaled\nwidth/height would be 0 if down scaling the 1x1 image with\nscale ratio that is less than 1/2.\n\nMaking sure the scaled width/height won’t less than 1 to\nprevent application crashed.\n\nBug: 117749148\nTest: Launch app on secondary display\n\nChange-Id: I73567dd237736466d0bc423485359d50073d86c1\n"
    },
    {
      "commit": "e5f73f1c18460681319471cb083ad5908eba896a",
      "tree": "c76d5b7377d63d0de14bb9f69e2356aefa365e36",
      "parents": [
        "4445345f201844299ed82e23e6a0402c07ba5119"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Nov 19 09:37:59 2018 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Nov 19 10:11:02 2018 -0800"
      },
      "message": "Add new API for returning max custom fallback families\n\nBug: 119620208\nTest: TypefaceCustomFallbackBuilderTest\nChange-Id: I7ef69bdebdce7d5dc4cbea2d30965c93197e965f\n"
    },
    {
      "commit": "5c6397e9bbc017a12a748fe818917adc470319b6",
      "tree": "f39863879dd5c2b1e406ee1881ef9b1a18ab2428",
      "parents": [
        "24f78ddda76d870373a1fbe875fc46b4054af84d"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Nov 14 15:14:44 2018 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Nov 14 15:25:10 2018 -0800"
      },
      "message": "Add compat workaround\n\nBug: 119066174\nTest: repro from bug\nChange-Id: Ifc50fc64422d571ee94ce8510825aed7f915adfd\n"
    },
    {
      "commit": "958176c775c1c1cb5ff87ecf5407c396b9dc2286",
      "tree": "fac2c5a9bdb5372a975c4feec9bd245dd9533f63",
      "parents": [
        "929cd0837af0fc558d367dd336034f7e107d4b08",
        "06dfab013635777790f4098a6f5f37507e89a1c6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Nov 10 23:34:30 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 10 23:34:30 2018 +0000"
      },
      "message": "Merge \"Update API doc of Typeaface.setSystemFallback\""
    },
    {
      "commit": "a87656a7b5ebae5a2639fa4ca276c245d02733b9",
      "tree": "464c37b3dd75463dee85aaad10516f9e44e43599",
      "parents": [
        "5a19fd430e919c17e243e1bc355aeeae1711f6f1",
        "e5bc78ff9d668d2c85f0bb3df6a85c4f0d079b23"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Nov 10 06:31:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Nov 10 06:31:40 2018 +0000"
      },
      "message": "Merge \"Tweak RenderNode final/constructor API\""
    },
    {
      "commit": "06dfab013635777790f4098a6f5f37507e89a1c6",
      "tree": "63f87a8a331d053e83118c303ff634502aa786f6",
      "parents": [
        "25eb63ac4aeb767eaab3d7462264e959b78d8736"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Nov 08 20:50:25 2018 -0800"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Nov 09 17:02:36 2018 -0800"
      },
      "message": "Update API doc of Typeaface.setSystemFallback\n\nBug: 116116764\nTest: N/A\nChange-Id: I97ebdcfd8d4b4efb0a1d9e3729f74fe7fba96b12\n"
    },
    {
      "commit": "e5bc78ff9d668d2c85f0bb3df6a85c4f0d079b23",
      "tree": "2e286baa7e375d43950907553823ea3ee338cb4d",
      "parents": [
        "22b63148b14a0aac39323c1590c1cae3dc101979"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Nov 09 15:18:43 2018 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Nov 09 15:18:43 2018 -0800"
      },
      "message": "Tweak RenderNode final/constructor API\n\nBug: 112709971\nTest: builds\nChange-Id: Idc558645015078b923bd94abc320b2a65d8d2c6b\n"
    },
    {
      "commit": "6ae76d0d8a355cc34b6207cfb8e47384b0fdabdf",
      "tree": "7632503d68d606eff7d867c5147cc2e789fbf09f",
      "parents": [
        "72e8228fb8f903972e0903e0469619037006aa98",
        "8785ceb3b94b78312cd24e22f05610d9b654221e"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Nov 09 19:16:27 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 09 19:16:27 2018 +0000"
      },
      "message": "Merge \"Refactors and a potential public API for rendering\""
    },
    {
      "commit": "c578d38eb752c9ab3edaada6c4bd53900425f184",
      "tree": "8f0886277e615693c7c6784ce2592b3d9f4c3053",
      "parents": [
        "311f0ff0b371e326930b7456daaefb29b2caf5d0",
        "3d5c03df790c809c576256210fbd4c39a240ec53"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 09 03:55:04 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 09 03:55:04 2018 +0000"
      },
      "message": "Merge \"Deprecate Drawable#getOpacity\""
    },
    {
      "commit": "34f042d29057424db5348b43fff9419591584dff",
      "tree": "568599294270ca3df7cfe9448cf145fd55ac7808",
      "parents": [
        "7d60ed910f714cb8e4db652ba2dd1876e562ba50",
        "fc063e9c227e4fe460b32d6bdffab65e8031e34a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Nov 09 01:46:33 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 09 01:46:33 2018 +0000"
      },
      "message": "Merge \"Updated ColorDrawable setAlpha/getAlpha documentation\""
    },
    {
      "commit": "fc063e9c227e4fe460b32d6bdffab65e8031e34a",
      "tree": "3e8955811c569b9bcf72613676de759e76a7f441",
      "parents": [
        "8ad9ef4aa9ac29823b17c67b343da4e96efcbb1a"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Thu Nov 08 15:53:47 2018 -0800"
      },
      "committer": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Thu Nov 08 15:53:47 2018 -0800"
      },
      "message": "Updated ColorDrawable setAlpha/getAlpha documentation\n\nUpdated documentation on ColorDrawable to clarify that the alpha\nvalue provided is combined with the color\u0027s already existing alpha\nvalue instead of overwriting it.\n\nBug: 119004459\nTest: Build and boots\nChange-Id: Id62462c4ac7d2f46cdc3236876f7e0711fbc4c16\n"
    },
    {
      "commit": "3d5c03df790c809c576256210fbd4c39a240ec53",
      "tree": "170bb8735ee3f39c037bbc6d08578a509e44be24",
      "parents": [
        "8ad9ef4aa9ac29823b17c67b343da4e96efcbb1a"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Thu Nov 08 15:30:49 2018 -0800"
      },
      "committer": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Thu Nov 08 15:33:31 2018 -0800"
      },
      "message": "Deprecate Drawable#getOpacity\n\nDeprecated getOpacity method on Drawable as the graphics optimization\nis no longer utilized in the framework\n\nBug: 118841703\nTest: Build and boots\nChange-Id: Ie21c9379a5e9737ed68c09c2e518732c1578b3cb\n"
    },
    {
      "commit": "8785ceb3b94b78312cd24e22f05610d9b654221e",
      "tree": "b5d3016cfa322fb354bf41b09ca86abc8e10365a",
      "parents": [
        "22b63148b14a0aac39323c1590c1cae3dc101979"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Oct 29 16:45:58 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Nov 08 15:32:35 2018 -0800"
      },
      "message": "Refactors and a potential public API for rendering\n\nSplit out the View/ViewRootImpl bits from the\nhardware rendering bits.\n\nCreate a potential public API surface for\nhardware rendering\n\nBug: 112709971\nTest: builds \u0026 boots\n\nChange-Id: I9e6f44b07a170574a905f42338282c4bb7e95f56\n"
    },
    {
      "commit": "e6bded0d4a0760747d13a362dcc2d684d133db67",
      "tree": "fe694d228c8c518a62e888179927d5d613692820",
      "parents": [
        "fbf34f6d244cb0f02fffbe2f0dfd0a4507a3407b",
        "f69e7037bad4c8108ef2ce2805fb874e03b6dec9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 07 09:01:42 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 07 09:01:42 2018 +0000"
      },
      "message": "Merge \"Pass custom fallback info to minikin\""
    },
    {
      "commit": "68e8199c643062b82d46044d8c275974b6b7b51c",
      "tree": "53db66fd7635976fcab27c83b6e4c685e3d8e4f0",
      "parents": [
        "d40152e10b2c0c6aac0ba2df0c4ba24db1e8c1a5",
        "ec5e8d25f0f3526ebe0f8e51a4fe3dfb57b2acba"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Wed Nov 07 05:54:39 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 07 05:54:39 2018 +0000"
      },
      "message": "Merge \"Camera: Unhide and update Y8 format spec\""
    },
    {
      "commit": "f69e7037bad4c8108ef2ce2805fb874e03b6dec9",
      "tree": "d8e9a67e7cb4f7d6c533be7b7e6d3eeb2f434fde",
      "parents": [
        "11d5f416182f3ae20d352f17e31933a5f8d0aea6"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Nov 01 14:30:18 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Nov 07 03:52:35 2018 +0000"
      },
      "message": "Pass custom fallback info to minikin\n\nThe custom fallback info is used for determine the priority between\ncustom fallback and locale fallback. The custom fallback should be\ngiven priority over locale fallback.\n\nBug: 116512426\nTest: minikin_tests\nTest: atest TypefaceCustomFallbackBuilderTest\nChange-Id: I79cc82fa990d7705ea5c40e9b0be40d062c218dc\n"
    }
  ],
  "next": "c1b6ab69c688ac263e4de80320b7b241fb11031d"
}
