)]}'
{
  "log": [
    {
      "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": "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": "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"
    },
    {
      "commit": "c1b6ab69c688ac263e4de80320b7b241fb11031d",
      "tree": "35f4f6d48b44d02f66b3b21ff68a7e40d7c505fa",
      "parents": [
        "de037ad4ff572a821e786ddbae20fb8bce57c7f6"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Oct 30 16:43:08 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Nov 06 10:56:30 2018 -0800"
      },
      "message": "Introduce new API for specifying user font fallback\n\nBug: 111133573\nTest: atest TypefaceCustomFallbackBuilderTest\nChange-Id: I0345824ecd475e43dbb5e5451f647020c4b53a83\n"
    },
    {
      "commit": "0a2786cc5d16f330142c235f1a8b7cb05c3262fb",
      "tree": "024cca2e3a3261f9bcba8b536af137d4ec67a13f",
      "parents": [
        "f2c351abb478c958a0e11aa6748e6099e4ec20b2",
        "ee4b6d85dcc11bba2aaeea4811ba490c4c7e7028"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Nov 05 21:09:23 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 05 21:09:23 2018 +0000"
      },
      "message": "Merge \"Refactor Typeface construction logic\""
    },
    {
      "commit": "ddeaa487dac907f2f5064671e21426e429f8fe5d",
      "tree": "79042392455bd7b7369cbfa9a3349afaf346f537",
      "parents": [
        "d6942d539ba6f2fd969c754673c7bd0ac21aac0f"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Oct 30 10:47:43 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Nov 02 14:24:32 2018 -0700"
      },
      "message": "Make RenderNode public API\n\nBug: 112709971\nTest: CtsUiRenderingTestCases:.testclasses.RenderNodeTests\nChange-Id: I57d64165b842d03565eda5f4d37343c4f9c45d42\n"
    },
    {
      "commit": "3bef4908b2d9392d8bae6900bd236c4be77f0323",
      "tree": "8be4e2352450dc1e28ac0d00d352830251946324",
      "parents": [
        "367d14a1b5172efb2e60e20fc8daf708603aaeda"
      ],
      "author": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Tue Oct 30 14:53:18 2018 -0700"
      },
      "committer": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Tue Oct 30 16:53:59 2018 -0700"
      },
      "message": "Move MeasuredText.sRegistry to Builder\n\nTest: atest android.graphics.text.cts.MeasuredTextTest\nTest: atest android.graphics.text.cts.LineBreakerTest\nTest: atest android.text.cts.StaticLayoutTest\n\nBug: 117888473\nBug: 112327179\nChange-Id: I0c1b86928429dce02867ac0cba674e0f69fc5fdf\n"
    },
    {
      "commit": "ee4b6d85dcc11bba2aaeea4811ba490c4c7e7028",
      "tree": "4cc12da12db1ae5de367a7b012919b3b786088f8",
      "parents": [
        "6b82d83d6ba1753eb38b5f885379a6893e49734d"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Oct 25 13:12:03 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Oct 30 12:18:12 2018 -0700"
      },
      "message": "Refactor Typeface construction logic\n\nAPI refactoring:\n- Replace Font.getWeight()/getSlant() with Font.getStyle().\n- Change Typeface.CustomFallbackBuilder.setItalic() to setSlant()\n\nImplementation refactoring:\n- Add hidden builder API for asset manager with cookie. The cookie is\ninternal, so hide the API as well.\n- Replace createFromResources with Typeface.Builder\n- Reimplement Typeface.Builder with Typeface.CustomFallbackBuilder\n\nGround work for b/114479228\n- Keep list of FontFamily in the Typeface.\n\nBug: 114479228\nTest: atest CtsTestCases\nTest: atest CtsGraphicsTestCases\nTest: atest CtsWidgetTestCases\nChange-Id: Ifaaa58ddea147644a93158aa075394c2f645617c\n"
    },
    {
      "commit": "a5ce2c7c7cef1930fd98c37a42a85e879d91824d",
      "tree": "f5be4f6373c40e8e67bdaa254949c9d48358acb4",
      "parents": [
        "84f970c840bb168b5199963fe5522875c41381ff",
        "d06aa0ab1fc66b370e85b97a590c48c810ae81c5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 29 20:06:34 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 29 20:06:34 2018 +0000"
      },
      "message": "Merge \"Register generic font families in Zygote\""
    },
    {
      "commit": "ec5e8d25f0f3526ebe0f8e51a4fe3dfb57b2acba",
      "tree": "81012b3e5c497b509703ef6c3690c79fc103debe",
      "parents": [
        "68585439aaa41be3275a35de29e84e8ccb2fc062"
      ],
      "author": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Fri Sep 28 09:28:48 2018 -0700"
      },
      "committer": {
        "name": "Shuzhen Wang",
        "email": "shuzhenwang@google.com",
        "time": "Mon Oct 29 07:44:13 2018 -0700"
      },
      "message": "Camera: Unhide and update Y8 format spec\n\n- Unhide Y8 format as part of MONOCHROME camera support.\n- Specify required stream combination for Y8 format.\n\nTest: Camera CTS test\nBug: 70216652\nChange-Id: Iab28b7ee3f2d5ec534a517079f14e0ed648ae556\n"
    },
    {
      "commit": "815aa66d3cb21d4bcb84688a2b180a22e5efe4c1",
      "tree": "118752a3b74a45b1cd93c2ec3d92d8cda990df43",
      "parents": [
        "abc7c746667601500b9b65d1e59f39859da393c5",
        "c7ddcf390ffdc71e48ba402a7cc451f4a2a0f62e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Oct 27 00:24:59 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Oct 27 00:24:59 2018 +0000"
      },
      "message": "Merge \"Update some docs \u0026 tweak some method names\""
    },
    {
      "commit": "d06aa0ab1fc66b370e85b97a590c48c810ae81c5",
      "tree": "1848f926880d3b32dc1efc89724a5d033fa25667",
      "parents": [
        "ffe3226069984e6c8e3f7bf08941d74c2afd3fdc"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Oct 26 16:26:05 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Oct 26 17:17:48 2018 -0700"
      },
      "message": "Register generic font families in Zygote\n\nBug: 114479228\nTest: TreeHugger and verified this is booted manually\nChange-Id: I5e2c25ad01d5686e6116f343c7345d43f8160c62\n"
    },
    {
      "commit": "c7ddcf390ffdc71e48ba402a7cc451f4a2a0f62e",
      "tree": "34eef9e215c1b4edace2bcb59665d6eea7160378",
      "parents": [
        "bef47d02d5ccf0238173027e6830b3f1bf05f0df"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Oct 25 13:56:17 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Oct 26 13:57:12 2018 -0700"
      },
      "message": "Update some docs \u0026 tweak some method names\n\nTest: builds\nChange-Id: Id0e5cf6fdb3a391136a1d314498f75e0b954ceeb\n"
    },
    {
      "commit": "3fb3ac1ab2ad9a178264b7845a7853b636b47e43",
      "tree": "0ba27988b1a16aae60efd6940ea0689b20289b0f",
      "parents": [
        "4b81463736bc544f1362ca4272b7435285a43ac1",
        "54c6a2722bf82f3c7c39eee9c2556f1bf41c8a9c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 26 04:12:51 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 26 04:12:51 2018 +0000"
      },
      "message": "Merge \"Keep file path used to create SkTypeface in MinikinFontSkia\""
    },
    {
      "commit": "c59e7dd6ad18787eb84e55c10dfdfd7d2b88d049",
      "tree": "d01cb182e5e71bb4b55dbffaa165afd539732b31",
      "parents": [
        "be452b24b54d75707839a161878814051a1668b5",
        "c2eaf48e4203dac1050a53f08b9475be74fff8da"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Oct 25 18:17:28 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 25 18:17:28 2018 -0700"
      },
      "message": "Merge \"Clarify createScaledBitmap\u0027s \u0027filter\u0027 docs\" am: e0f6d84ba1 am: 324cb8c075\nam: c2eaf48e42\n\nChange-Id: Id0a228f273f83b238ba1df92a78b7a0da66c4209\n"
    },
    {
      "commit": "54c6a2722bf82f3c7c39eee9c2556f1bf41c8a9c",
      "tree": "742fd411c546acbc869e1ad0bb1fd75ff06287c1",
      "parents": [
        "f5231c8c02f3d5ca3d9a208cf5ee091cdc786482"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Oct 25 15:44:32 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Oct 25 22:49:04 2018 +0000"
      },
      "message": "Keep file path used to create SkTypeface in MinikinFontSkia\n\nThis is a ground work for the itemize API. The file path will be the\noutput of the itemize API.\n\nBug: 114479228\nTest: minikin_tests\nTest: hwui_unit_tests (only tested on 32bit. couldn\u0027t test 64bit)\nChange-Id: I70252594889175bf5fa0013bbaa95c6c87ca5680\n"
    },
    {
      "commit": "c2eaf48e4203dac1050a53f08b9475be74fff8da",
      "tree": "5b0748558f028ca27347358ebbc38c5f00b0caa7",
      "parents": [
        "4c8a976a0e9857a3a6bd3359b81754bc02248928",
        "324cb8c07579d9a830626884c5c4586e882acf13"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Oct 24 15:37:38 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 24 15:37:38 2018 -0700"
      },
      "message": "Merge \"Clarify createScaledBitmap\u0027s \u0027filter\u0027 docs\" am: e0f6d84ba1\nam: 324cb8c075\n\nChange-Id: I29ff879ded8e40f73c5326bf1f929b117ede96d6\n"
    },
    {
      "commit": "a2d20b447a003251f42195dfb7fa41671f89b673",
      "tree": "90f54c103809deb19c6af93727a2d6c43d139d5d",
      "parents": [
        "c63d1cc434ea7422d6f9ef2bd396e1b0b0ec7cac"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Oct 01 12:21:55 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Oct 24 10:17:20 2018 -0700"
      },
      "message": "Add theme \u0026 View API to control force-dark\n\nBug: 102591313\nTest: CTS android.uirendering.cts.testclasses.ForceDarkTests\n\nChange-Id: I6ba129681aed8e2f3f1b1ac60d458bb5f5393e9b\n"
    },
    {
      "commit": "8884cfc13ef7a8848a41094e4452c7a72a62c908",
      "tree": "a97e06d08e4f27852457a5ba7c046fc2dcb1f207",
      "parents": [
        "51d48e09a5140c697d2af072c18f6e3cd89be54a",
        "32f140aa6764ebc71b549e57479a42fc3daefc8a"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Oct 23 20:02:00 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 23 20:02:00 2018 +0000"
      },
      "message": "Merge \"Rename \u0026 package shuffle\""
    },
    {
      "commit": "7ba6f430f635ea09d506b4de1774b703c69bf552",
      "tree": "1a0396e8c914e6492acab22a1307272687e14f22",
      "parents": [
        "cbcaabedfd54ae034635bbe2ec220f8f2b540fa6"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Oct 22 13:23:12 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Oct 22 13:24:48 2018 -0700"
      },
      "message": "Clarify createScaledBitmap\u0027s \u0027filter\u0027 docs\n\nReddit complained the docs were bad, so make the docs less bad.\n\nTest: none\nChange-Id: I61928ea859af4ce0a63a9b545ea1b6dd965cc3df\n"
    },
    {
      "commit": "9958c4ab21b9df323a29915181ab1f278f06ab11",
      "tree": "b1c8da6dff5f127b1cc71094609d7179a5c3ac7a",
      "parents": [
        "d8c16347a9915993d8126a68159e408a7a659202"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Oct 17 16:41:35 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Oct 19 14:51:59 2018 -0700"
      },
      "message": "Introduce FontStyle for future extensibility\n\nThis is a ground work for b/114479228\nFontStyle is an argument of the font itemization. Currently Android\nsystem uses weight and italic info for itemizing but maybe we will\nuse width and oblique style in future.\nTo be extensible in future, introduce FontStyle.\n\nThis CL includes:\n- new class FontStyle which holds width and italic at this moment. In\n  future, we may add width and oblique. (or grdual italic slant)\n- Font class still returns weight/slant since they need to be immutable.\n- Moved font weight constants from Font to FontStyle\n\nBug: 114479228\nTest: atest CtsGraphicsTestCases\nChange-Id: I0ba717fbf9f90ee6f760c1a0f6eda17b4bef6f43\n"
    },
    {
      "commit": "047edaeaa3e4aea389f3cbc1be9c9763e6ae2832",
      "tree": "4e61fdadd9fed78659b443dc36de0fe5ad2a1b79",
      "parents": [
        "e428c326530a83c1e00fe2da7bb8cf3d051adbe1",
        "5282796ac3c3021336cd0e0ad323e98a90917f7b"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Fri Oct 19 15:21:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 19 15:21:54 2018 +0000"
      },
      "message": "Merge changes I86f597f1,I5c9c09dd\n\n* changes:\n  MediaStore deprecations for Q.\n  Convenience method for obtaining thumbnails.\n"
    },
    {
      "commit": "7b86fe573c7d30dbe14e067fdac0ef424751cc86",
      "tree": "d57a5316bbefd7f61540b5652b6b0d6d7df20f3e",
      "parents": [
        "916bdd7d4d17257d7c3df0debf80274819503d66"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Oct 16 18:02:32 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Oct 18 14:58:18 2018 -0700"
      },
      "message": "Change add{StyleRun, ReplacementRun} to append{StyleRun, ReplacementRun}\n\nGiving any range to the Builder is too much freedum and hard to tell\nerrors. Changes to accept length instead of ranges. By this change, we\ncan prevent and tell errors about\n- The gap in the text that no Paint is assigned.\n- The given range is overlapped.\n- The given range exceeds the text length.\n\nBug: 112327179\nTest: TreeHugger\n\nChange-Id: Iefc078b1f7be2d006a65b46e0b4ea1018ecb29e7\n"
    },
    {
      "commit": "4e5efa31864121326a1c6796c2b8e54492aad179",
      "tree": "a380dbd18cf02c63d3f77720f2ea74aa3944dd0b",
      "parents": [
        "47bf6668dc22ee79db15bd9fb1676f81a0251472"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 04 19:21:53 2018 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 18 14:32:51 2018 -0600"
      },
      "message": "Convenience method for obtaining thumbnails.\n\nObtaining a thumbnail for a Uri requires opening it with the slightly\nobscure openTypedAssetFileDescriptor(), passing in \"image/*\" with the\nright Bundle of EXTRA_SIZE to hint the target area on screen, and\ndefensively scaling any returned results.\n\nThis is pretty tedious to get right, so offer a convenience method\nthat does all this for the developer.  Internally uses ImageDecoder\nto follow best-practices, and replaces older getDocumentThumbnail()\nimplementation by delegating to this one.\n\nA future CL will teach ImageDecoder about how to read any embedded\nEXIF thumbnails, including any required rotation.\n\nBug: 111268862\nTest: atest FrameworksCoreTests:android.content.ContentResolverTest\nChange-Id: I5c9c09ddf9b480f3b5c6ade0a078cccb68de2f2b\n"
    },
    {
      "commit": "4a772fc4d2d8578489cdd305f03832f8ca04981f",
      "tree": "e0506d3f4616b755db8c196df4613b07b136b3b5",
      "parents": [
        "dfa4c24aafd18b07077427b36d302414bceff5c1",
        "9fe7cdf3a5d9507fae8e837c4b337a95ef0cf3f5"
      ],
      "author": {
        "name": "Fan Zhang",
        "email": "zhfan@google.com",
        "time": "Tue Oct 16 22:04:51 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 16 22:04:51 2018 +0000"
      },
      "message": "Merge \"Refactor the nativePtr validation code to a method.\""
    },
    {
      "commit": "9fe7cdf3a5d9507fae8e837c4b337a95ef0cf3f5",
      "tree": "3ee2c3d3f56c8b3eec38efcf71a1b32db012957d",
      "parents": [
        "d80c72ab88aa4548a9af58d4a78e54fef18b3706"
      ],
      "author": {
        "name": "Fan Zhang",
        "email": "zhfan@google.com",
        "time": "Tue Oct 16 10:21:09 2018 -0700"
      },
      "committer": {
        "name": "Fan Zhang",
        "email": "zhfan@google.com",
        "time": "Tue Oct 16 13:30:03 2018 -0700"
      },
      "message": "Refactor the nativePtr validation code to a method.\n\nThis will make testing much easier.\n\nBug: 117828816\nTest: robotests\nChange-Id: I1ca81e2005e559c0ec1e5f468cdd4bc0c21edbea\n"
    },
    {
      "commit": "93cd653b226da03658d550c4cb691ea43ce8440c",
      "tree": "002aaee38bf459f263c0f0cd8a40d9dee63d2e97",
      "parents": [
        "f70e1edd6fb97f18e6e503393984021528435ba9",
        "bc56d73af292a737bb7e244fc9d37f9793bf8cd2"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Tue Oct 16 11:26:55 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 16 11:26:55 2018 -0700"
      },
      "message": "Merge \"[Graphics] Align Display P3 transfer function coefficients.\" am: fde18facba\nam: bc56d73af2\n\nChange-Id: Ib72ca917df3a778c4ad59dc46f672b482e8b62bf\n"
    },
    {
      "commit": "bc56d73af292a737bb7e244fc9d37f9793bf8cd2",
      "tree": "fa2e941d87d4a3278d05998fe856342e3cec6378",
      "parents": [
        "1e69440dff609998cc6057cae195799ad90587e5",
        "fde18facbadb7bd61e75c02469d5ee6ae68b1ce7"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Tue Oct 16 11:03:47 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 16 11:03:47 2018 -0700"
      },
      "message": "Merge \"[Graphics] Align Display P3 transfer function coefficients.\"\nam: fde18facba\n\nChange-Id: I242a8f1ccf0d2b662d745a0a956da7e7c8e3d790\n"
    },
    {
      "commit": "7a45d2c310e0596506a80ad1c09fb60822c8a4fa",
      "tree": "800b5af6390edb11e2fdaafea81daa727c37aaaf",
      "parents": [
        "a3608c91163829d8ee150c5d0c0e7c6b259fbceb"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Mon Oct 15 15:56:05 2018 -0700"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Tue Oct 16 16:50:25 2018 +0000"
      },
      "message": "[Graphics] Align Display P3 transfer function coefficients.\n\nThe transfer function of Display P3 should be sRGB transfer function,\npreviously we defined f as 0.039, however, the sRGB transfer function defines f\nas 0.04045. This patch fixes it.\n\nBUG: 116726537\nTest: Build, flash and boot\n\nChange-Id: I247092d8ce939aa743f23a1f8688cbaf0874fb99\nMerged-In: I247092d8ce939aa743f23a1f8688cbaf0874fb99\n"
    },
    {
      "commit": "dbd6e3fd88330206abb9431efa784b90ef7a1858",
      "tree": "9a5478d6a5efc7b4ebccd1b5772483993dc63201",
      "parents": [
        "bbfdce2c342c367124f48f529759ee48944883c7",
        "f198118ba106cc88dbd25e048bc301f18d1e9e33"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Tue Oct 16 16:48:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 16 16:48:46 2018 +0000"
      },
      "message": "Merge \"[Graphics] Align Display P3 transfer function coefficients.\""
    },
    {
      "commit": "f198118ba106cc88dbd25e048bc301f18d1e9e33",
      "tree": "35cf30bef8f45dd8f060267e60797958cb7b45c3",
      "parents": [
        "add325328b9703661650c934d2b9f2e978ffe618"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Mon Oct 15 15:56:05 2018 -0700"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Mon Oct 15 17:06:53 2018 -0700"
      },
      "message": "[Graphics] Align Display P3 transfer function coefficients.\n\nThe transfer function of Display P3 should be sRGB transfer function,\npreviously we defined f as 0.039, however, the sRGB transfer function defines f\nas 0.04045. This patch fixes it.\n\nBUG: 116726537\nTest: Build, flash and boot\n\nChange-Id: I247092d8ce939aa743f23a1f8688cbaf0874fb99\n"
    },
    {
      "commit": "aa35899430acbe20b700fec1394cdfe5622ac723",
      "tree": "16402a57e79bc6a4a9e15f3a69447eadb6b2faab",
      "parents": [
        "bc9ebba7e50ca88bec4a4f68bfe35289ab0acfef",
        "70200b0f56bc466e08f6f0f843e6615790186bb3"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Oct 15 21:56:12 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 15 21:56:12 2018 +0000"
      },
      "message": "Merge \"Make LineBreaker public\""
    },
    {
      "commit": "0d0dd506ac55080bb94d56d639ca7910deaccd0d",
      "tree": "de7b64b809bbbd566a69d50eeeb43a853a4e1347",
      "parents": [
        "2024cd8baa3be5007ed8ecfd0266098b31d2d735",
        "320e38309b25d94bff8a7c056b487aaf723dea53"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Fri Oct 12 19:24:25 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 12 19:24:25 2018 -0700"
      },
      "message": "Merge \"Remove unused imports of libcore.io.Libcore.\" am: 2a520365da am: abe7a32c67\nam: 320e38309b\n\nChange-Id: I2f8069235c4e8c298b0e092928a23d15cbe30520\n"
    },
    {
      "commit": "320e38309b25d94bff8a7c056b487aaf723dea53",
      "tree": "ed04e7013f6f02cbb10cfe020d53c8dc73748f9b",
      "parents": [
        "be558d6e58683142bcf1b4c0cec950f3898cb411",
        "abe7a32c67fc1cb43e0957b215c6ea7eedc6fe10"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Fri Oct 12 19:13:38 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 12 19:13:38 2018 -0700"
      },
      "message": "Merge \"Remove unused imports of libcore.io.Libcore.\" am: 2a520365da\nam: abe7a32c67\n\nChange-Id: I57d7d317f5827a54346e287db3f6f2d625e0aebc\n"
    },
    {
      "commit": "abe7a32c67fc1cb43e0957b215c6ea7eedc6fe10",
      "tree": "7141adf07c99325868f6bc2b6b9de33ceda527be",
      "parents": [
        "dd298a4b0f840000e3f9a9f051cb1d4c942655df",
        "2a520365dad848ad0b9027b8b64943cf04d31d27"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Fri Oct 12 18:59:21 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 12 18:59:21 2018 -0700"
      },
      "message": "Merge \"Remove unused imports of libcore.io.Libcore.\"\nam: 2a520365da\n\nChange-Id: I79c4679d483e0e8ea2e434237bd61d75f129da0f\n"
    },
    {
      "commit": "c5f8fa9d8142170679fc9584a23916cd8681de83",
      "tree": "dc1f7748348bda656d03a469ed8447bcbb2e3fb9",
      "parents": [
        "355f1c0b7b605cea1fedf5983dabbfc7955f05d7",
        "a95934967a4dd683304cb0959ea99438917ab53a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 12 15:48:25 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 12 15:48:25 2018 +0000"
      },
      "message": "Merge \"Switch to Skia\u0027s new representation of linear gamma\""
    },
    {
      "commit": "91fe37b86ed5a7a9a7dcbacd7dfe26413aa86138",
      "tree": "a8fa36386357cc05763145c48e0c5512101c91e6",
      "parents": [
        "a127627ea05c9e3ed375d7bcdcb9a13b80ff61b2",
        "5aa216924a7048f22ba4da11ea798d13b25404b0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 12 02:56:57 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 12 02:56:57 2018 +0000"
      },
      "message": "Merge \"Revert \"Expose the ability to resolve icon as a different app\"\""
    },
    {
      "commit": "a95934967a4dd683304cb0959ea99438917ab53a",
      "tree": "ecff5535ba98f73344f222d628e9c3fd57ff5ff7",
      "parents": [
        "1e7b9347d7cbaf94760ebd9b5af1e5df2e5173ea"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Thu Oct 11 12:27:06 2018 -0400"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Thu Oct 11 12:27:06 2018 -0400"
      },
      "message": "Switch to Skia\u0027s new representation of linear gamma\n\nBug: 77276533\nTest: CtsGraphicsTestCases ImageDecoderTest#testColorSpace\n      ag/5244477\n\nAlthough the old one works for [0,1], Skia has switched to this new\nrepresentation because it has the following nice properties:\n- it extends cleanly above 1\n- it\u0027s unambiguously defined\n\nHaving ColorSpace out of sync results in mismatches between those\nobjects underlying SkColorSpace objects when they should be the same.\n\nChange-Id: Ie5cf223d6053718aded12b66ea58a874ce888903\n"
    },
    {
      "commit": "5aa216924a7048f22ba4da11ea798d13b25404b0",
      "tree": "c1a7c373524d0967670cc7b216c4dd60cd0a1be5",
      "parents": [
        "4236ccb7c407c1792b8ab454d2c290d128116036"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Thu Oct 11 00:03:41 2018 +0000"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Thu Oct 11 00:03:41 2018 +0000"
      },
      "message": "Revert \"Expose the ability to resolve icon as a different app\"\n\nThis reverts commit 4236ccb7c407c1792b8ab454d2c290d128116036.\n\nBug: 116798569\nReason for revert: This API is not needed as system-API\n\nChange-Id: I90140a55a50067f1aa98d9649dfb97ffb45f03a4\n"
    },
    {
      "commit": "30ff7a093e748fbd78e90df36885920c324217fa",
      "tree": "cb0ccba1268f5f8b8df114b485b21158025caea2",
      "parents": [
        "9b1db24f6e0ce1bea68a834d5ea21bea0f9bf374"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Mon Oct 08 15:14:45 2018 +0100"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Oct 10 15:49:51 2018 +0000"
      },
      "message": "Remove unused imports of libcore.io.Libcore.\n\nTest: Treehugger\nBug: 115503977\nBug: 117548625\nChange-Id: I122fa68ddc2bd531f627dcac00834b47249bd56e\n"
    },
    {
      "commit": "7cc5a53c255dd5059de247556980556b80874a9e",
      "tree": "28df4b058f8f66b80b28c820cfa39d0a2b8c1c92",
      "parents": [
        "fb301a47188610cc5bbcf2ea65ef92b81cc1e7c4",
        "b2e9f5244b5a78423ba33c364bb658e43851db21"
      ],
      "author": {
        "name": "Marius Renn",
        "email": "renn@google.com",
        "time": "Tue Oct 09 23:09:30 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 09 23:09:30 2018 +0000"
      },
      "message": "Merge \"Add HardwareBuffer support to Bitmaps\""
    },
    {
      "commit": "70200b0f56bc466e08f6f0f843e6615790186bb3",
      "tree": "1cac9e7a058e7eba1de5cbeca878f053776be92d",
      "parents": [
        "002f63d0ffb25d261cccee48690d3c945924eb43"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Oct 01 16:04:11 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Oct 09 12:16:52 2018 -0700"
      },
      "message": "Make LineBreaker public\n\nThis CL includes:\n- Move NativeLineBreaker/NativeMeasuredParagraph to android.graphics.text\npackage since these two uses the shaping result of the text which is a\npart of graphics responsibility. At the same time, by this moving,\nminikin is only used by android.graphics package.\n- Rename NativeLineBreaker/NativeMeasuredParagraph to\nLineBreaker/MeasuredText.\n- Updated comments of the break strategy and hyphenation frequency.\n\nBug: 112327179\nTest: atest CtsTextTestCases CtsGraphicsTestCases CtsWidgetTestCases\nChange-Id: Id69c328e7c9097b9fc11b5c0bd04d1c2e0939c6a\n"
    },
    {
      "commit": "32f140aa6764ebc71b549e57479a42fc3daefc8a",
      "tree": "83fcf0c85b8ee80d70afc48b86151621f98dc296",
      "parents": [
        "b577f20c23093ff263adc30083928c1d70266fd3"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Oct 04 15:08:24 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Oct 04 16:18:12 2018 -0700"
      },
      "message": "Rename \u0026 package shuffle\n\nRename DisplayListCanvas -\u003e RecordingCanvas\nMove RecordingCanvas to android.graphics\nMove RenderNode to android.graphics\n\nBug: 112709971\nTest: make \u0026 boot\nChange-Id: Iddeb6a89f8923ea81a1f37bbee4e9b1db8ede238\n"
    },
    {
      "commit": "8ad9ef4aa9ac29823b17c67b343da4e96efcbb1a",
      "tree": "36ed2ae65e18ec841ae0df9111fa6e322de300e9",
      "parents": [
        "42f4e79d7e87eefe4a9528b646b1ae456a9f23e6",
        "685c4aef821cd7f62276b9e93ee50606f45f692f"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Oct 04 20:23:59 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 20:23:59 2018 +0000"
      },
      "message": "Merge \"Support custom creation of AFD for ImageDecoder.\""
    },
    {
      "commit": "b2e9f5244b5a78423ba33c364bb658e43851db21",
      "tree": "aac01739fb7c790738ded3e7287f34cdfb010331",
      "parents": [
        "73ff9c527497e82d616e97ce8e10ced6d8a96565"
      ],
      "author": {
        "name": "renn",
        "email": "renn@google.com",
        "time": "Wed Sep 26 10:49:00 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Oct 04 17:15:10 2018 +0000"
      },
      "message": "Add HardwareBuffer support to Bitmaps\n\nThis adds a new public constructor to Bitmap to allow passing in\na HardwareBuffer to back the Bitmap. Currently, the format of the\nHardwareBuffer must be RGBA_8888.\n\nOne-Pager: https://docs.google.com/document/d/1n72X-gJZhjeajp4FIQwsGPKFiHBSeWYjC6fkXYe_bS0/edit?usp\u003dsharing\nBug: 116713113\nTest: manual - ran CTS tests\nChange-Id: Ic437825138eafea526326e6cf300f116867ba29e\n"
    },
    {
      "commit": "d4e48c593e1d9447134005d170b5bd00178963a0",
      "tree": "19173fd06baa86349bb6558c8d477857f64fc30b",
      "parents": [
        "746a795b0fbc7308e6b68bc8c031d9ed132873e1",
        "adfe1d991bbc65dbf80f16f493b88a72adc701d6"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Thu Oct 04 16:46:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 16:46:54 2018 +0000"
      },
      "message": "Merge \"Added support for Canvas#drawDoubleRoundRect in application Canvas API\""
    },
    {
      "commit": "685c4aef821cd7f62276b9e93ee50606f45f692f",
      "tree": "c0fb10d88089e5192b04657ab123239708410687",
      "parents": [
        "cd084e45fb22e0fcfcedb71424affecc2b592bf7"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Oct 03 15:15:56 2018 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Oct 04 10:37:32 2018 -0600"
      },
      "message": "Support custom creation of AFD for ImageDecoder.\n\nContentResolver.openTypedAssetFileDescriptor() has support for a\nBundle of options that can be used to communicate things like desired\nthumbnail size, and also CancellationSignal to cancel large network\nfetches when no longer needed.\n\nInstead of adding all these to ImageDecoder, let developers provide\ntheir own Callable\u003cAssetFileDescriptor\u003e so they can implement these\ncustom features.\n\nBug: 111268862\nTest: atest cts/tests/tests/graphics/src/android/graphics/cts/ImageDecoderTest.java\nChange-Id: I51c509962f50dd08be94507169355b5da54d6782\n"
    },
    {
      "commit": "495de00e0a27879be709ba0a615b38571b8e0327",
      "tree": "cfc560f3c955ac56c008cc4b1ff0760d8d4dac31",
      "parents": [
        "bddeea865c7965eabe4310565fc96023cca6da72",
        "43190bdf403bb4e5098bf4fdfec575eabaa7d433"
      ],
      "author": {
        "name": "Issei Suzuki",
        "email": "issei@google.com",
        "time": "Thu Oct 04 08:43:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 04 08:43:54 2018 +0000"
      },
      "message": "Merge \"Refactor DisplayCutout to use Rect instead of Region.\""
    },
    {
      "commit": "43190bdf403bb4e5098bf4fdfec575eabaa7d433",
      "tree": "1551d0cb7eb63c4d6661bf047f253a02e40f4f02",
      "parents": [
        "f322456bd82a2f7107e9f06122d209432ceb9718"
      ],
      "author": {
        "name": "Issei Suzuki",
        "email": "issei@google.com",
        "time": "Mon Aug 20 17:28:41 2018 +0200"
      },
      "committer": {
        "name": "Issei Suzuki",
        "email": "issei@google.com",
        "time": "Wed Oct 03 18:52:33 2018 +0900"
      },
      "message": "Refactor DisplayCutout to use Rect instead of Region.\n\nTest: unittest\nBug: 112296834\n\nChange-Id: I4245543c26f99afa59a34f5b6e6650b93d052a6e\n"
    },
    {
      "commit": "adfe1d991bbc65dbf80f16f493b88a72adc701d6",
      "tree": "15fe71348a6951b6df9c0b8785833839473862eb",
      "parents": [
        "2616b08d4d8295dd8cd14565e49617e8ac1ad68c"
      ],
      "author": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Thu Sep 27 12:27:36 2018 -0700"
      },
      "committer": {
        "name": "Nader Jawad",
        "email": "njawad@google.com",
        "time": "Tue Oct 02 17:12:15 2018 -0700"
      },
      "message": "Added support for Canvas#drawDoubleRoundRect in application Canvas API\n\nExposed Skia\u0027s underlying drawDRRect method used to draw a double\nrounded rectangle\n\nBug: 117181396\nTest: Added test case to verify Canvas#drawDRRect and re-ran CanvasTests\nChange-Id: I4e1954c8ffc82811dc541488d1df9b37309faf51\n"
    },
    {
      "commit": "e96517edd2c90ae1cc48164e3b02063ecec57139",
      "tree": "168feeec8a52b266f2ca906fddb5a8286238d29d",
      "parents": [
        "03b973183007fbcedf8a22fb36453b2ee2f5056d",
        "3328d1ce55322f344505173860ebf0525784fb62"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Oct 01 21:21:14 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 21:21:14 2018 +0000"
      },
      "message": "Merge \"Introduce OEM customization XML parser\""
    },
    {
      "commit": "03b973183007fbcedf8a22fb36453b2ee2f5056d",
      "tree": "f22cdf3cd38b0a0a2252ccb73e90f37e514f4557",
      "parents": [
        "222b756958cdfc06a0ba558a69476993f13892b9",
        "c90bc15dc87ac1709def3424bd5306678f0844ac"
      ],
      "author": {
        "name": "Michael Wachenschwanz",
        "email": "mwachens@google.com",
        "time": "Mon Oct 01 21:20:56 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 01 21:20:56 2018 +0000"
      },
      "message": "Merge changes from topic \"UsageStats2Proto\"\n\n* changes:\n  Pool Package and Class names when writing UsageStats to disk\n  Upgrade UsageStatsDatabase from XML to Protobuf\n"
    },
    {
      "commit": "c8c26365a4bc237cccb462ef903c837f73833c23",
      "tree": "37cd90fe4168c24ea3480b058f079bd52769f36b",
      "parents": [
        "c210031d085b510450c49bf2da0ac7bd9024c4be"
      ],
      "author": {
        "name": "Michael Wachenschwanz",
        "email": "mwachens@google.com",
        "time": "Fri Sep 07 14:59:25 2018 -0700"
      },
      "committer": {
        "name": "Michael Wachenschwanz",
        "email": "mwachens@google.com",
        "time": "Fri Sep 28 16:48:23 2018 -0700"
      },
      "message": "Upgrade UsageStatsDatabase from XML to Protobuf\n\nAdd the relevant methods to read from ProtoInputStream to\nvarious classes.\n\nAlso add some framework to handle version changes in\nUsageStatsDatabase. There is some risk of users losing all their current\nUsageStats data, if something goes horribly wrong. The debug flag and a\nkeep backup files flag are temporarily set in UsageStatsDatabase with\nthis change. They will both be unset in the future before the Q release.\n\nSome rough number on the impact of this change:\nProto file size on disk reduces to ~47% of XML file size :)\nProto file read time reduces to ~55% of XML file read :)\nProto file write time increases ~17% over the XML file write :(\n\nThere will be a follow up CL to address the file write time regression\n\nBug: 111422946\nFixes: 111449927\nTest: atest UsageStatsDatabaseTest\nChange-Id: I084aea796ed2163c42947d52396a36cc7c5562a2\n"
    },
    {
      "commit": "3328d1ce55322f344505173860ebf0525784fb62",
      "tree": "74c3c3b4044ee71a2fb863eb1d9e609aebcc9e2c",
      "parents": [
        "914857349e66eb3ce4361c412797319ea0a24386"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Sep 26 22:11:31 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Sep 28 15:59:15 2018 -0700"
      },
      "message": "Introduce OEM customization XML parser\n\nAs the initial version of the OEM customization XML, support\nnew-named-family customization. This allows OEMs to add new named\nfamily.\n\nBug: 111544833\nTest: atest FrameworksCoreTests:android.graphics\nChange-Id: If58711fc038898175fcad0ae095865312bd738e2\n"
    },
    {
      "commit": "38304b594fe7b01de2edc39bbba2cb37791b0318",
      "tree": "37236fa96e6051540b1f562b5a8d5fa7b72e0f81",
      "parents": [
        "7e833acdaf145ee67f00c94d8aacf62d46aebbe1",
        "746cd4208a303fc20a350b3bf95aedc6446b1b3c"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Sep 28 09:48:49 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 28 09:48:49 2018 +0000"
      },
      "message": "Merge \"Delete method kept for layoutlib\""
    },
    {
      "commit": "18bec393e484462a4dd933909b42e7ee6617fc0a",
      "tree": "a3a9ef1719deab53a17c87ba147e64631bcbf290",
      "parents": [
        "3fcda51fad13c1750a1f2f7f51677e60f45c12bc",
        "aaa85d6818f6e26f3e924157415d50457073eb87"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 27 17:24:47 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 27 17:24:47 2018 +0000"
      },
      "message": "Merge \"Address comments from API council\""
    },
    {
      "commit": "746cd4208a303fc20a350b3bf95aedc6446b1b3c",
      "tree": "171bde7cbc5035d7ded729a3975342c4bb458ba5",
      "parents": [
        "1d65ea4edd0ca4acbb423f1638f72b12041e6695"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Sep 27 17:08:07 2018 +0100"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Sep 27 17:08:07 2018 +0100"
      },
      "message": "Delete method kept for layoutlib\n\nTypeface.buildSystemFallback was kept only because it was used in\nlayoutlib. Change I33f27f62 (commit a65f963) removed that last use case,\nso this now deletes the unused method.\n\nBug: 112196940\nTest: atest FrameworksCoreTests:TypefaceTest\nChange-Id: I19b793d34c1ce16d5dc7430c08746261cd52b4b2\n"
    },
    {
      "commit": "6b1644022ba3efa0cd0cafde26ebb022363ffbca",
      "tree": "5f8b790e8b1fc7e6acb646d7af127438734da098",
      "parents": [
        "99ae10396189d79bd34c58120947ce3bfeb70281"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Sep 24 15:25:42 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Sep 26 16:29:32 2018 -0700"
      },
      "message": "De-couple RenderNode from View package\n\nFirst step of moving RenderNode to the graphics package\n\nTest: builds\nChange-Id: Ife7f5ec6698e32393d1b85ed2bad909ef0210be4\n"
    },
    {
      "commit": "aaa85d6818f6e26f3e924157415d50457073eb87",
      "tree": "e254f03a631e0e981681c4dafcbc38a4faab7eaf",
      "parents": [
        "043a3a713de8864afb04b3fc029bfc1155c334b3"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Sep 26 10:55:41 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Sep 26 11:11:27 2018 -0700"
      },
      "message": "Address comments from API council\n\nThis CL includes:\n- Fix typo\n- Make SystemFonts final\n- Storing readonly buffer in Font\n\nBug: 116224077\nBug: 116224515\nTest: m update-api \u0026\u0026 m docs\nChange-Id: Ib7442bac6d2d8efea4deff1fd309940794c20a88\n"
    },
    {
      "commit": "47e79a1626e8014c7e7283c09006cb511c034665",
      "tree": "df9746d525c4b331680542756c1026cc5fa5473f",
      "parents": [
        "7a96ec0e0aa7167257a95e898699ba4c662fc676",
        "32b87e01e0b47873e0b29939deb4e42f45b718dd"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Sep 25 18:34:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 25 18:34:26 2018 +0000"
      },
      "message": "Merge \"Move hasEqualAttribute from Paint with adding some accessors\""
    },
    {
      "commit": "e64d55010f20caad124525847562535f2674bf09",
      "tree": "c5aa7c215bd8c3e14fb2520426a91d882f0c8511",
      "parents": [
        "4dc09a4b82b8bd063105d1376c0c8b5cd95d7ab3",
        "1423e1331fa8b97d36950d143560a332b6c6bed7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Sep 24 19:54:33 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 24 19:54:33 2018 +0000"
      },
      "message": "Merge \"Create plumbing for disabling force-dark\""
    },
    {
      "commit": "03bc1ab26fc5b49a16d7852e588df2da73d627f5",
      "tree": "f70f88498cd2c74aaabd1d2e4a5d22e3402c727a",
      "parents": [
        "2a0b67d0f322951788ba4a60fd168beaf42e8b19",
        "3da032dcb64d3436946693de467f148efb7b5b81"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Sep 24 17:03:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 24 17:03:18 2018 +0000"
      },
      "message": "Merge \"Fix a typo in ImageDecoder documentation\""
    },
    {
      "commit": "1423e1331fa8b97d36950d143560a332b6c6bed7",
      "tree": "5c6b076f9a93eb2cc22601a2fe13a0eb1d473304",
      "parents": [
        "4603406afe2667b1eac5b07bc21d3b44443a9e9a"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Sep 21 14:30:19 2018 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Sep 24 09:34:18 2018 -0700"
      },
      "message": "Create plumbing for disabling force-dark\n\nTest: sysui\u0027s rounded corners are no longer white\nBug: 102591313\n\nChange-Id: Id99ae38c354cef06b94a5fb79b5b1a9a216a514c\n"
    },
    {
      "commit": "3da032dcb64d3436946693de467f148efb7b5b81",
      "tree": "3844399b526beeac5e9f1ae19d1e28ef6f6c1630",
      "parents": [
        "7c6ceb23dbbd6c6e8be4d593ed22ff1b491648cf"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Sep 21 15:47:47 2018 -0400"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Sep 21 15:47:47 2018 -0400"
      },
      "message": "Fix a typo in ImageDecoder documentation\n\nBug: None\nTest: None - no change in behavior\nChange-Id: Ibd1e8721b4cead7ba841cf0e1f982610f991698c\n"
    },
    {
      "commit": "fa95b83df78467a2ebf0026bd511f61de1f117a9",
      "tree": "8d7c7bc6ca8e8019bbef9e6f730d08b79d05aae0",
      "parents": [
        "93890b2e2e872d32ab5c53bd301f2a3ef4f48736"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Sep 17 14:09:25 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Sep 18 15:06:19 2018 -0700"
      },
      "message": "Unhide getTextRunCursor APIs\n\nThis API is necessary for identifying the cursor locations.\n\nBug: 112327179\nTest: atest android.graphics.cts.PaintTest\nChange-Id: Ief6770bd622a296ae356094fe3ce58e9c4371088\n"
    },
    {
      "commit": "93890b2e2e872d32ab5c53bd301f2a3ef4f48736",
      "tree": "03e18f6933cdf02c7aae7d05d2d5ef0b7ce7a497",
      "parents": [
        "665f5b9b09b326fea468bdf9890f01fc09a7ab4e"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Sep 14 16:20:41 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Sep 18 14:17:38 2018 -0700"
      },
      "message": "Unhide getTextBounds for CharSequence\n\nBug: 112327179\nTest: atest android.graphics.cts.PaintTest\nChange-Id: I1d2c5c5710dbe15d0352735ce18d9bb9d6f4dbc7\n"
    },
    {
      "commit": "32b87e01e0b47873e0b29939deb4e42f45b718dd",
      "tree": "16e57daeea8a268400cde14ba40a627f1ed2abaa",
      "parents": [
        "665f5b9b09b326fea468bdf9890f01fc09a7ab4e"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Sep 18 13:26:24 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Tue Sep 18 14:10:14 2018 -0700"
      },
      "message": "Move hasEqualAttribute from Paint with adding some accessors\n\nPaint#hasEqualAttributes is not a equal method in Paint.\nTextLine depends on this method but making this public will make\ndeveloper confused. So, moving hasEqualAttributes to TextLine and\nprovide some accessors for shadow layer parameters.\n\nFor the TextPaint, unhide underlineColor and underlineThckness for\nimplementing equalAttributes in TextLine.\n\nBug: 112327179\nTest: atest android.graphics.cts.PaintTest\nChange-Id: I4565e18134856e31d26bd06bcddeb31ddbe7e093\n"
    },
    {
      "commit": "14a081f2711d88a98a419cfc9205eb11f071d06e",
      "tree": "80139f848052eefae7f05f2dc1732ab72b8b142e",
      "parents": [
        "4c888c779c678a0e3253c064044d3326caa52bb3",
        "eb749119e675976087fee2e93c4b1deba1783b64"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Mon Sep 17 18:55:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 17 18:55:54 2018 +0000"
      },
      "message": "Merge \"Unhide Paint.getTextRunAdvances\""
    },
    {
      "commit": "eb749119e675976087fee2e93c4b1deba1783b64",
      "tree": "cbefd47804d3936b93e25a1402ea7f7962d2f1f2",
      "parents": [
        "d75020c65f8c041c0de8a5238550211964befefe"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Sep 13 15:23:55 2018 -0700"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Sep 14 11:57:20 2018 -0700"
      },
      "message": "Unhide Paint.getTextRunAdvances\n\nThis is necessary for getting individual character advances.\n\nThe only char[] version of getTextRunAdvances is used, so removing\nString/CharSequence versions.\n\nBug: 112327179\nTest: atest android.graphics.cts.PaintTest#testGetTextRunAdvances\nChange-Id: Ic49a4742cccb2a5155f6afacef3555e29c7a061c\n"
    },
    {
      "commit": "db0657a4f4408ba1cc0c0c86fbd934018707f40f",
      "tree": "ca7bd55476a0b406ad17dc01d85c9b7fd6a098ce",
      "parents": [
        "033f4b9506cf92c76f61090c74d550cb9cc1dc65",
        "8c854f86a477fbbee38092f449333e1425e5cd7e"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Sep 14 13:54:28 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 14 13:54:28 2018 +0000"
      },
      "message": "Merge \"Move some members to the \"Q blacklist\".\""
    }
  ],
  "next": "8c854f86a477fbbee38092f449333e1425e5cd7e"
}
