)]}'
{
  "log": [
    {
      "commit": "1d8152726b7ef2094f2e99619581c2abd2117381",
      "tree": "fee2f86b4619aa88a12a11c3bc5bb9bc12ab5e74",
      "parents": [
        "26a11c28563c497625f00fc4fba319de9119ee60",
        "58c27e3e53ef64072412515792433e570a176f15"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Sep 09 23:44:37 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 09 23:44:37 2015 +0000"
      },
      "message": "am 58c27e3e: am c0ce6c42: Merge \"Reduce risk of memory corruption due to finalization.\"\n\n* commit \u002758c27e3e53ef64072412515792433e570a176f15\u0027:\n  Reduce risk of memory corruption due to finalization.\n"
    },
    {
      "commit": "58c27e3e53ef64072412515792433e570a176f15",
      "tree": "a96c418787b11265446f74a8e75afe3961e6247c",
      "parents": [
        "03c26b274aed35c0a580b309567264d00cb643f2",
        "c0ce6c422cfe089e7a8e209ac924e37bed3ca770"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Sep 09 22:41:42 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 09 22:41:42 2015 +0000"
      },
      "message": "am c0ce6c42: Merge \"Reduce risk of memory corruption due to finalization.\"\n\n* commit \u0027c0ce6c422cfe089e7a8e209ac924e37bed3ca770\u0027:\n  Reduce risk of memory corruption due to finalization.\n"
    },
    {
      "commit": "ffa84e008c712ceffa09d6b89a49882c88b3cca5",
      "tree": "8eb45713334c4fc5f1c2d4bb59e3f8936a91e37f",
      "parents": [
        "596fd38af207727d508a63fca39506c90ba29c44"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Nov 11 17:01:37 2014 -0800"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Sep 08 18:27:36 2015 -0700"
      },
      "message": "Reduce risk of memory corruption due to finalization.\n\nMany classes in graphics/java and elsewhere deallocate native memory\nin a finalizer on the assumption that instance methods can no longer\nbe called once the finalizer has been called.  This is incorrect if\nthe object can be used, possibly indirectly, from another finalizer,\npossibly one in the application.\n\nThis is the initial installment of a patch to cause such post-finalization\nuses to at least see a null pointer rather than causing memory corruption\nby accessing deallocated native memory. This should make it possible to\nidentify and fix such finalization ordering issues.\n\nThere are more graphics classes that need this treatment, and probably\nmany more in other subsystems.\n\nThis solution is \u003c 100% effective if finalizers can be invoked\nconcurrently.  We currently promise that they aren\u0027t.\n\n(In my opinion, the real cause here is a language spec bug.  But that ship\nhas sailed.)\n\nBug: 18178237\nChange-Id: I844cf1e0fbb190407389c4f8e8f072752cca6198\n"
    },
    {
      "commit": "a72f59a858ebda3d96583502d8ac02443d6223c3",
      "tree": "25fbb0ebd0f2f3cae8ed04e9b63f5cad028c1895",
      "parents": [
        "53f1a815b4401f10cd833217143da44ab0408dcc"
      ],
      "author": {
        "name": "Snild Dolkow",
        "email": "snild.dolkow@sonymobile.com",
        "time": "Fri Sep 04 10:08:05 2015 +0200"
      },
      "committer": {
        "name": "Zoran Jovanovic",
        "email": "zoran.jovanovic@sonymobile.com",
        "time": "Fri Sep 04 10:08:46 2015 +0200"
      },
      "message": "Update mFillPaint color on GradientDrawable inflation\n\nWhen a GradientDrawable is loaded from scratch, initializeWithState()\nis called with mColors \u003d\u003d null. This sets mFillPaint\u0027s color to\n0x00000000 -- transparent. mColors is then properly set in inflate(),\nbut mFillPaint is not updated there. It will be updated eventually\nthrough a mutate() or ensureValidRect() call, but that\u0027s sometimes too\nlate.\n\nIn our case, a wrapping StateListDrawable called getOpacity(), and\nsince it caches the result, it never got updated.\n\nThis doesn\u0027t cause any problems on preloaded GradientDrawables, since\nthe new GradientDrawable created when fetching a preload will call\ninitializeWithState() in its constructor, fixing the GradientState.\n\nChange-Id: Ic8caa7c6a7c1d4dae5ff31ae943831bd2e014f79\n"
    },
    {
      "commit": "b7303a36baf8d0ac3efdeeee3310ef5974ba9cea",
      "tree": "849198070694eacf05379994925381764f57b22b",
      "parents": [
        "5eb67c22489f5fda22770d1fc824e7a8013ec025"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Aug 19 16:51:36 2015 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Aug 21 15:21:12 2015 -0700"
      },
      "message": "Disable RT animations for header ripple\n\nBug: 22208997\nChange-Id: I10a890d4f8f70c7c786940ffdb86cf4d21bdaf05\n"
    },
    {
      "commit": "f0d69b9e33e32b60bf953fc775b7843825e99036",
      "tree": "d0c21b7d138c7c66443136c07a150309cab39da2",
      "parents": [
        "e3de6c5df5a94e627c5ee0f188cbb066233a3dd0"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Thu Aug 20 16:27:21 2015 -0400"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Thu Aug 20 16:27:21 2015 -0400"
      },
      "message": "Translate ripple mask to account for drawable bounds\n\nBug: 23354529\nChange-Id: Iaa4fde6b37645492cf902f141f975bdef8e7e14e\n"
    },
    {
      "commit": "bac9769146af07753728e5c6b3a30eae3076aed0",
      "tree": "6bf46bf18afbe8e2d76648666801b2393a850f83",
      "parents": [
        "ad7719dea4e8fd34854e4dcc918fc593c4416d82"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Aug 11 14:25:45 2015 -0400"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Aug 11 14:25:45 2015 -0400"
      },
      "message": "Ensure ripple mask is drawn at correct position\n\nBug: 22911708\nChange-Id: Icdbe1f8a66d5e35eb25aa973c94f5870896cc1f8\n"
    },
    {
      "commit": "01a0af31d7d418f400ce5d3f752eba6a35aa00e2",
      "tree": "02b4cd30808726c61463464dd9c62959df5cb3f2",
      "parents": [
        "3ba2bfa7b280bac76d4d60a7f548c5e06aaca569"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Jul 31 13:10:39 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Aug 03 20:57:22 2015 +0000"
      },
      "message": "Yell loudly about undefined behind in Bitmap, but work anyway\n\nBug: 22214367\n\nPrevious releases would let the getters on a recycle()\u0027d bitmap to still\nwork despite being firmly in undefined behavior per the documentation\non Bitmap#recycle().\n\nAs there are apps relying on this, yell very loudly about this behavior\nin the log and give them a bit of time to fix it\n\nChange-Id: I857be7e74cb217877973d9c6f03eb761d12fd056\n"
    },
    {
      "commit": "35289f12d6cb0f0db67489876c805ad4a3cbd5f6",
      "tree": "4f8c82b14b54af261462ca8e7ed79dbc2b8417aa",
      "parents": [
        "d4b566bf56333de708908ce4accb5fb067be64f0"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Tue Jan 13 16:21:11 2015 -0800"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Jul 17 11:16:41 2015 -0700"
      },
      "message": "Scaling (Animated)VectorDrawable inside ImageView\n\nBefore, the VectorDrawable is behaving like BitmapDrawable inside a ImageView,\nand it can be blurry due to scaling.\nNow apply the scaling information to the cached bitmap, then the size of bitmap\nwill match the ImageView\u0027s screen size. Therefore, no blurry any more.\n\nb/18185626\n\nChange-Id: I979cef3b5178a9bd37ee6cc776df3361ca47c803\n"
    },
    {
      "commit": "c7fd3462a2699f73d5f2ba6d863d8be4ddd570a9",
      "tree": "aed0e806ebcaaa4aba70e311604643aeab9496d4",
      "parents": [
        "208934ff010cc2aff7d8fee9237d6cee0e5bb563"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Jul 14 09:24:22 2015 -0400"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Tue Jul 14 09:24:22 2015 -0400"
      },
      "message": "Retrieve resources for apps, even if not installed for current user.\n\nBug: 21448052\nChange-Id: Id5db428a6faca4a905684088c47e070752ac2899\n"
    },
    {
      "commit": "b7ba1220a3dc3012d2e22825eaeb0e643333f5a4",
      "tree": "ab3d320793ed3a3f268a955b88630cb988a575f7",
      "parents": [
        "171fe6ac0aa5b0d2dd64ac1cdda25cdcb5f183f3"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 09 17:37:34 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Jul 09 17:40:41 2015 -0700"
      },
      "message": "Teach ImageView to recycle internal drawables\n\nBug: 22289362\n\nIt\u0027s pretty common for ImageView#setBitmap to be called\nrepeatedly. Avoid re-creating the BitmapDrawable in this scenario\nas that has high object churn of semi-expensive objects like\nPaint.\n\nChange-Id: Ib77719cd0366d02c1a42f774850bf3b9caa9c288\n"
    },
    {
      "commit": "93666e8691c9b41855add5c1c92bfc9e0912764e",
      "tree": "0e03b03291812a7bcb0386e255722f9f907f3e00",
      "parents": [
        "6acb521f7c5d13b4f9891822db6121dcedce268a",
        "95080637db69ffa4f31f18f32878ddd2457e6857"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Wed Jun 24 23:32:16 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 23:32:18 2015 +0000"
      },
      "message": "Merge \"Resize the VectorDrawable according to the virtual Dpi\" into mnc-dev"
    },
    {
      "commit": "95080637db69ffa4f31f18f32878ddd2457e6857",
      "tree": "0372b24fc666728b38bea580d0d7e3af23cf200b",
      "parents": [
        "91870fa281c736b59fb8481e4469da51397c586d"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Wed Jun 24 13:23:40 2015 -0700"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Wed Jun 24 15:09:09 2015 -0700"
      },
      "message": "Resize the VectorDrawable according to the virtual Dpi\n\nb/21928507\n\nChange-Id: I9e596192a0fdf13fc91481f990a345c3b267f225\n"
    },
    {
      "commit": "06ff2af68aa1041eeb26778e994e0fe196bf8b1e",
      "tree": "141743851357962ff0e48045cb4819e11318659e",
      "parents": [
        "e4ffec210e857c770cf63db8a1644fd04b9f625d"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Jun 24 14:42:44 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Jun 24 14:42:44 2015 -0700"
      },
      "message": "Update local state when creating LayerDrawable from constant state\n\nAlso clears DrawableContainer\u0027s futures list when it\u0027s no longer needed,\ncorrectly sets deep copy of state set in StateListDrawable, makes some\nprivate methods into package-protected to avoid thunk, and propagates\nstate to StateListDrawable\u0027s super class so that getState() has correct\ninformation.\n\nBug: 21840003\nChange-Id: I0d4232807f280d663c03b4a80e4aab8626806440\n"
    },
    {
      "commit": "346872d5387fe66d13ea962abe031830abf40648",
      "tree": "7cbeaa179285af45971d3d80ef08f5f81d9043b3",
      "parents": [
        "25a5f3012805e0fbcf3610dc57ab5c28d25aab0f",
        "24f11b1871f9def5d802d107897658c4b2b66ab5"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed Jun 24 02:10:23 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 02:10:25 2015 +0000"
      },
      "message": "Merge \"Allow an icon to carry a tint with it, wherever it goes.\" into mnc-dev"
    },
    {
      "commit": "25a5f3012805e0fbcf3610dc57ab5c28d25aab0f",
      "tree": "309e0be97d705e7d8fcf771a1fb04ecebe6862f2",
      "parents": [
        "29124960c6a39bf062caaccfc6810bea54d45cef",
        "a0d58ae574a3a69145512e0cd92e7842f0fbf83d"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Wed Jun 24 02:09:56 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 02:09:58 2015 +0000"
      },
      "message": "Merge \"Use ashmem backed bitmaps for passing around notifications\" into mnc-dev"
    },
    {
      "commit": "81e7dbddf10ecae99f65641d8774ca6b1aceac30",
      "tree": "a093322c36a8284fad6925e1d13894715b2c41b0",
      "parents": [
        "e6953913536155a5d1f78d184e67a74f9acbe1c1"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Jun 23 14:30:40 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Jun 23 14:30:40 2015 -0700"
      },
      "message": "Remove isDither(), deprecate setDither()\n\nBug: 22013358\nChange-Id: I37b11a94edc431a88522c6c056b76b045daa61d6\n"
    },
    {
      "commit": "a0d58ae574a3a69145512e0cd92e7842f0fbf83d",
      "tree": "4364ba89fc76b93de6c0f064260de61a277a1762",
      "parents": [
        "323b768d6d06c73209363f559cdd278e06ca7e48"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Jun 03 11:48:13 2015 -0700"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Tue Jun 23 19:55:41 2015 +0000"
      },
      "message": "Use ashmem backed bitmaps for passing around notifications\n\nAvoids many copies during IPC and duplicate Java heap consumption in\nsystem_server, SystemUI, etc.\n\nBug: 18386420\nChange-Id: Id5ac9406062d472f7848009d65f12131f5f4dac9\n"
    },
    {
      "commit": "24f11b1871f9def5d802d107897658c4b2b66ab5",
      "tree": "2c287ae6465e6151dbd4aae36ba286e108de4e00",
      "parents": [
        "b1891b3fc9d07ef766978f0a39c382b217a529e0"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed Jun 03 12:05:37 2015 -0400"
      },
      "committer": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Tue Jun 23 02:21:55 2015 -0400"
      },
      "message": "Allow an icon to carry a tint with it, wherever it goes.\n\nBug: 21031774\nChange-Id: I2d06c7288e0c0a06bf6ff147dfbfdea5a46fd288\n"
    },
    {
      "commit": "484b114846d6ed425f7e938fb97980ee67f43140",
      "tree": "394455ef15ac4a4d661e7f39fda04c15ce600935",
      "parents": [
        "0b50e56c070878211d9003e072128716bee445ba",
        "c79df8e831e50abae9f781148e0aee63f6c29659"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue Jun 23 00:07:17 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 23 00:07:18 2015 +0000"
      },
      "message": "Merge \"Clean up drawable filter/dither docs\" into mnc-dev"
    },
    {
      "commit": "b2aea9dcbd6edfa645c6fc3ae4adab95aa79cc1c",
      "tree": "035fbfffb50661ef345e8b3122d721f618ee0564",
      "parents": [
        "616f035bc9a2d9855feb2348d2b732a18ebdbffb",
        "e109940d81cc67fcdb2e2bbb79dce9039ead86c6"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Jun 22 15:38:09 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 22 15:38:11 2015 +0000"
      },
      "message": "Merge \"Enable Picture w/ HW Accelerated Canvas.\" into mnc-dev"
    },
    {
      "commit": "e109940d81cc67fcdb2e2bbb79dce9039ead86c6",
      "tree": "831fb9e36df43caa3328e763ed03252c0b57b76c",
      "parents": [
        "b3c8564314a4ce05b722e33409f2c15bcdac6666"
      ],
      "author": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Thu Jun 04 15:54:15 2015 -0400"
      },
      "committer": {
        "name": "Derek Sollenberger",
        "email": "djsollen@google.com",
        "time": "Mon Jun 22 13:18:29 2015 +0000"
      },
      "message": "Enable Picture w/ HW Accelerated Canvas.\n\nBug: 20688645\nChange-Id: I664f37d6dbb3e61b17206c82ebcc63f988cefc65\n"
    },
    {
      "commit": "c79df8e831e50abae9f781148e0aee63f6c29659",
      "tree": "0a3c4a43cf7559a628ae83b62a6b8a7d525ff6f9",
      "parents": [
        "bcca4ac4fb4fa66f2e4196437998c08e4dbed1d3"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 19 18:01:43 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Fri Jun 19 18:01:44 2015 -0700"
      },
      "message": "Clean up drawable filter/dither docs\n\nbug:21342040\n\nChange-Id: I6592bfa504516852967d82a7e7929b1aef6bff02\n"
    },
    {
      "commit": "690a16c35031b4474f429de1967d6738f9d00322",
      "tree": "b388c6a40e89d0dbf2ab4c8ea5d3d55da68f8bca",
      "parents": [
        "f3e8dca84b51e6eab1cc1384a5baabb0bae433a1"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri Jun 19 13:42:39 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri Jun 19 13:42:39 2015 -0700"
      },
      "message": "Invalidate the cached ripple drawable mask if mask layer changes\n\nBug: 21955350\nChange-Id: I2e610a5a0af39668b7e9447cfd7d48d35e11d299\n"
    },
    {
      "commit": "a6c51149c59b2921507f6903e490bd00702972d1",
      "tree": "030491b32b08b2b906600ecf46f1bfcd1fff45b0",
      "parents": [
        "b0ff3a6cb37aa45add4b0c5135bd978442fcc441"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu Jun 18 15:26:17 2015 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu Jun 18 15:28:27 2015 -0700"
      },
      "message": "Fix a typo in Drawable\u0027s javadoc\n\nChange-Id: Ic168b250defb30512cb35a836118fe2bdf1b2e78\n"
    },
    {
      "commit": "50ec9b1bd97a04a001dd394885db0cc6f13bea39",
      "tree": "6c15a31bce91d8a7b23012b82a64d94708ddd475",
      "parents": [
        "71b44259829cbc0f6480a1cda68fb9183a0d0ad9",
        "4e78706f439d318ae7a78927d98f734351a89f64"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Thu Jun 18 20:26:47 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 18 20:26:49 2015 +0000"
      },
      "message": "Merge \"Patch up certain kinds of broken notifications.\" into mnc-dev"
    },
    {
      "commit": "4e78706f439d318ae7a78927d98f734351a89f64",
      "tree": "3035a9fcf4416407a288b21b798789ddc277720a",
      "parents": [
        "e6ba94ce022a60b5225ee54cf2cc710633441d87"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed Jun 17 15:09:48 2015 -0400"
      },
      "committer": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Thu Jun 18 15:12:44 2015 -0400"
      },
      "message": "Patch up certain kinds of broken notifications.\n\nNotifications in which the icon resource ID is changed after\nBuilder.build() is called (even, and particularly, as the\nlast step in the current implementation of\nsetLatestEventInfo()) were not having their icons properly\nparceled. In these cases we now attempt to catch this at\nparcel time and construct the necessary Icon object.\n\nBut wait! Parceling does not require a Context. So we don\u0027t\nactually know which package to load the resource from.\nTherefore we now allow an Icon to be constructed with an\nempty (\"\") package name, which allows us to complete this\nparceling task despite the fact that a Notification does not\nknow its own package name. (In case you attempt to load a\ndrawable for such an Icon, loadDrawable will spot the \"\"\npackage and instead substitute the Context from its\nparameters to try to load the resource.)\n\nAs it happens, even though the Notification does not know\nits own package name, BaseStatusBar does, because it was\nprovided at NM.notify() time and is therefore included in\nthe StatusBarNotification structure. So we can actually\npatch up the Icon (if it is TYPE_RESOURCE) and be sure to\nget the icon loaded out of the correct package.\n\nWhile we\u0027ve got the hood open, this change fixes a couple of\nrelated problems:\n\n  • Foreground service notifications synthetically\n    constructed for naughty icon\u003d\u003d0 notifications (which we\n    are still allowing...FOR NOW) were losing the\n    FLAG_FOREGROUND_SERVICE flag (because we\u0027re\n    re-build()-ing them from scratch rather than rewriting\n    the provided Notification object). Now we set the flag\n    and hang onto the new notification for next time\n    setForeground() is called.\n\n  • We now allow media notifications to avoid getting bumped\n    to the top of the notification list if they\u0027re\n    PRIORITY_MIN. You might want to do that, I guess?\n\nBug: 21333763\nChange-Id: Ia5d1f1acb594c7677bcc75ee3d624da4ffca671f\n"
    },
    {
      "commit": "67b5a68088627394fd60baeeb54b78d7e68ba7b2",
      "tree": "a8901260d23986c06c5b89d18c6b1953e0ea59da",
      "parents": [
        "a7f4d74296a67524fc0bf3442eec680cea962373",
        "536652fe91d10e5baebe0f9ca5d7e21c88ae9d9e"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Jun 17 21:31:05 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 17 21:31:06 2015 +0000"
      },
      "message": "Merge \"Resolve start/end insets in LayerDrawable.getIntrinsicWidth()\" into mnc-dev"
    },
    {
      "commit": "536652fe91d10e5baebe0f9ca5d7e21c88ae9d9e",
      "tree": "ccb15edc3a8c1b718121c519b2f85b0e2f88456c",
      "parents": [
        "15ce33873e2ca774a1fca666a05cc8ed79f327d7"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Jun 17 14:09:53 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Jun 17 14:09:53 2015 -0700"
      },
      "message": "Resolve start/end insets in LayerDrawable.getIntrinsicWidth()\n\nBug: 21849185\nChange-Id: If9b392d863e808d83a5d90bcc32df6cb9194cbdf\n"
    },
    {
      "commit": "373954a1fd371a23c420aeeea9ccbc4d983733d7",
      "tree": "9d312b90f3e970defb9e2bbe723e4b31fe444899",
      "parents": [
        "15ce33873e2ca774a1fca666a05cc8ed79f327d7"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Jun 17 13:59:31 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed Jun 17 13:59:31 2015 -0700"
      },
      "message": "Refactor Drawable.getDither() to isDither()\n\nBug: 21342040\nChange-Id: I801970c2a25289d670636ad5387ddf244fb48225\n"
    },
    {
      "commit": "63a39ffe489e1411f96ab54002b83c7d28bb5ffc",
      "tree": "f277a1e6bab8ec4e8479a154204befd8443f4a19",
      "parents": [
        "27a88a3eb6a6a456ea3ec1b81a8fb26333f904a5"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Jun 16 15:04:45 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Jun 16 15:04:45 2015 -0700"
      },
      "message": "Ensure first load for bitmap and nine-patch gets correct density\n\nRemove unnecessary lines setting target density on bitmap and nine patch,\nsince we\u0027ll do this later in inflate().\n\nBug: 21774853\nChange-Id: I5ea316bee81f82192ce20f2f1bee0e62c6ec8ccb\n"
    },
    {
      "commit": "c03fa1ee54424b0c8b9ecdc06004c9dbdf4925f2",
      "tree": "3231e7d1c1ba8ca879ed0e162704499ecb40c756",
      "parents": [
        "0524e97ac333c685b43cd9dbe5a49b28371b8865",
        "ea1363910bf2138f633ef8a310a65d608ef94407"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Mon Jun 15 15:45:55 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 15 15:45:57 2015 +0000"
      },
      "message": "Merge \"Add isFilterBitmap() overrides where appropriate\" into mnc-dev"
    },
    {
      "commit": "ea1363910bf2138f633ef8a310a65d608ef94407",
      "tree": "2dea372b7acc3cc4aad96fb8f5e347bf7fc96969",
      "parents": [
        "5c82d2cc17df9774e677f6bab9cb52659fc2b56d"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Sun Jun 14 07:45:32 2015 -0700"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Mon Jun 15 08:43:27 2015 -0700"
      },
      "message": "Add isFilterBitmap() overrides where appropriate\n\nIssue #21825791 add isFilterBitmap() override to appropriate Drawable subclasses\n\nChange-Id: I5cbd72c034be79b0aa53815c7a5a8ea499e6e02d\n"
    },
    {
      "commit": "96a443b58d9c9849c846750657f959e3743bc5ed",
      "tree": "f75c161c4cb8e7178e21405d86bb373de60f6ffe",
      "parents": [
        "5c82d2cc17df9774e677f6bab9cb52659fc2b56d"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri Jun 12 10:27:44 2015 +0100"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri Jun 12 17:21:31 2015 +0100"
      },
      "message": "Clarify Drawable.getOpacity() docs\n\nDocs for translucent-vs-transparent-vs-opaque were confusing, especially since\nthe definition for those constants in PixelFormat are not the same as how they\u0027re\nactually used in Drawable. This fix simply adds clarifying text to the method\ncomment for getOpacity().\n\nIssue #21158891  Better document Drawable#getOpacity\n\nChange-Id: I94725592f85e5d7874e3a3ac1c5bab969163fbf0\n"
    },
    {
      "commit": "4039f6570cff0013d3986b522d43e6eab7cc28a6",
      "tree": "71abef879a4a45e26e0747efea37e7ed7c1f2861",
      "parents": [
        "421eaa7813e33ea1bbce398e5940e6ab477c759d",
        "f2122ef549dd73f68bdbe4d6767f6516935024d0"
      ],
      "author": {
        "name": "Keisuke Kuroyanagi",
        "email": "ksk@google.com",
        "time": "Thu Jun 11 22:44:52 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 22:44:55 2015 +0000"
      },
      "message": "Merge \"Improve boundary check for for Paint#DrawTextRun.\" into mnc-dev"
    },
    {
      "commit": "1b83edc6160d18323c7a0e0b892e97c05914ff81",
      "tree": "932991dca8a0cec04dd08541253fab2a912d1717",
      "parents": [
        "02184244dcd0149252676bbf24c6d9a5c9ebfd5b",
        "b786bbdd1164cf3ca7fcfb8448c7c619a82118a0"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Thu Jun 11 20:28:39 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 11 20:29:05 2015 +0000"
      },
      "message": "Merge \"Workaround shader crash\" into mnc-dev"
    },
    {
      "commit": "f2122ef549dd73f68bdbe4d6767f6516935024d0",
      "tree": "78859fc4a464ed897022c55ebc61cc60f9c7791e",
      "parents": [
        "4ba81a0878d058734e9eb2c298d7fc4df7e597ed"
      ],
      "author": {
        "name": "Keisuke Kuroyanagi",
        "email": "ksk@google.com",
        "time": "Thu Jun 11 20:46:53 2015 +0900"
      },
      "committer": {
        "name": "Keisuke Kuroyanagi",
        "email": "ksk@google.com",
        "time": "Thu Jun 11 20:46:53 2015 +0900"
      },
      "message": "Improve boundary check for for Paint#DrawTextRun.\n\nChange-Id: I01027ebb9133240cc1c750824a41dd9fca484c1f\n"
    },
    {
      "commit": "b786bbdd1164cf3ca7fcfb8448c7c619a82118a0",
      "tree": "0aa547fa12723beee4078fe1b3cf3a688302a814",
      "parents": [
        "cc87cfa29c4b38d1f119bdce652918565b0fed0f"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 10 16:58:42 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed Jun 10 16:58:50 2015 -0700"
      },
      "message": "Workaround shader crash\n\nbug:21706035\n\nChange-Id: Ia1cd4824c742b2d6fc0feb2861ccfde0b6ac2189\n"
    },
    {
      "commit": "99ca2a8470a48906aaba2d76c856037933496352",
      "tree": "440a0fbe5170cce1e3f8018070b8b81021c581d1",
      "parents": [
        "b5766468538de200d26012d96019db26bccac5d4"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon Jun 08 16:10:27 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon Jun 08 16:10:27 2015 -0700"
      },
      "message": "Account for hotspot bounds in RippleDrawable projection check\n\nBug: 21502154\nChange-Id: Iedf4bd07f10ec13070a68870304ab651c1f15c68\n"
    },
    {
      "commit": "371b582c4941a7c4a1a5531fa8768db74354b616",
      "tree": "9627de0a040b3143a1ede048fae5da02586677e8",
      "parents": [
        "dd99df0dbe21b73f437de1beb910b8ef7a2b6f30",
        "a74171190077d5ef8704a29442669e806447d560"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Sat Jun 06 00:26:00 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jun 06 00:26:04 2015 +0000"
      },
      "message": "Merge \"Implement getColorFilter() on VectorDrawable\" into mnc-dev"
    },
    {
      "commit": "a74171190077d5ef8704a29442669e806447d560",
      "tree": "b4d78ff58873995163840f9ec9d5c8a0cba2d9e5",
      "parents": [
        "8fa24e91c4dbe8a6533e99eeea4d8b200437d92a"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri Jun 05 17:20:11 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri Jun 05 17:20:11 2015 -0700"
      },
      "message": "Implement getColorFilter() on VectorDrawable\n\nBug: 21580708\nChange-Id: Id64bebeb5c39906ed34775e8ccc39f666966bad9\n"
    },
    {
      "commit": "96052718067e1645afd7c7ae93bab536711349ac",
      "tree": "0b523ce05a622fd8b78d72b33777f4c694059701",
      "parents": [
        "8fa24e91c4dbe8a6533e99eeea4d8b200437d92a"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Jun 05 15:22:24 2015 -0700"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Jun 05 15:42:59 2015 -0700"
      },
      "message": "Add reset to AVD\n\nb/21664621\n\nChange-Id: Ie40c3723860e183c8e4fedd2a76b9debbdf64a2a\n"
    },
    {
      "commit": "e1352de673423264c00c71c0ec1597bbdad6fd03",
      "tree": "9993b84e76659f5c9c6a30a905e86e7a64b29d35",
      "parents": [
        "3e85c1ed0cce70164dfe6f8ffa4bf3695c4ce0ba",
        "83a52031fd5c277d0c6e75da50bf8013e8a70399"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri Jun 05 16:37:09 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 05 16:37:10 2015 +0000"
      },
      "message": "Merge \"Setup the animation callback for AnimatedVectorDrawable\" into mnc-dev"
    },
    {
      "commit": "c3b68dff1654f95a9512027b29e8da49a15f4194",
      "tree": "3a1c4d2064e7d916bb67f8bb4f4afd66a074ae51",
      "parents": [
        "b0a5e78fc06aeb67ac1f55832c9ceef5f92a0807"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Thu Jun 04 15:33:52 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Thu Jun 04 15:33:52 2015 -0700"
      },
      "message": "Manually jump ripples when preemptively aborting RT animation\n\nBug: 21079749\nChange-Id: If79dcef59aba616c0446efc623863f563cb16250\n"
    },
    {
      "commit": "83a52031fd5c277d0c6e75da50bf8013e8a70399",
      "tree": "7d1cf90ee2ccead94abe77cee440fc64a7d7b88f",
      "parents": [
        "1da56b51d59aa4c587dcdb5bf4c1719961be0ae7"
      ],
      "author": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Fri May 29 17:19:41 2015 -0700"
      },
      "committer": {
        "name": "ztenghui",
        "email": "ztenghui@google.com",
        "time": "Thu Jun 04 12:55:21 2015 -0700"
      },
      "message": "Setup the animation callback for AnimatedVectorDrawable\n\nb/21341096\n\nChange-Id: I84e20366db21ceaa4f044be3e322f9215bb06ad2\n"
    },
    {
      "commit": "eebb83493418d8dcd82f33919c41b9a5d2ec898a",
      "tree": "812522d81eac10e706d78f3555a2078f3b0dcea6",
      "parents": [
        "85f4b7b38cedddfb0ed9f57555fb81aceca786ac"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Fri May 22 17:13:02 2015 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 03 17:52:35 2015 +0000"
      },
      "message": "ImageFormat: Update definition of depth formats for confidence.\n\nDEPTH16: Use high 3 bits for confidence measurement, with\n0 \u003d 100% confidence, 1 \u003d 0% confidence, 2 \u003d 1/7 (14.3%) confidence, etc.\n\nDEPTH_POINT_CLOUD: Add confidence as 4th entry to each point,\nwith a value in range 0.f - 1.f inclusive.\n\nBug: 20123879\nChange-Id: I23317b922ac727751156fa418ed239a696a898e5\n"
    },
    {
      "commit": "2b184e86347d9ff7b26d2667f31e436cf7d7be9e",
      "tree": "e5ab49a0366897f0fcca619303ca8d51f6ff54e9",
      "parents": [
        "765389ec4f7df86cc8f74258a087fc8b8f6f8a7e",
        "15ce834e52806378d6ab2b90f573bae14cb3fd4b"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Sat May 30 02:19:57 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 30 02:19:59 2015 +0000"
      },
      "message": "Merge \"Reduce amount of unnecessary RippleDrawable mask redraw\" into mnc-dev"
    },
    {
      "commit": "15ce834e52806378d6ab2b90f573bae14cb3fd4b",
      "tree": "3b8afb2706f458ce892dd095a47af7c4be26355c",
      "parents": [
        "517f3ee41afb7713f1fc6fa37a6f3a6efa97a020"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 29 16:23:43 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 29 16:23:43 2015 -0700"
      },
      "message": "Reduce amount of unnecessary RippleDrawable mask redraw\n\nBug: 19638504\nChange-Id: Ie7b639c543150e13aec30dfeca2b303d5b601cf3\n"
    },
    {
      "commit": "db2911321b1cb0870d10baab370c93da13a91067",
      "tree": "528d6a3dd2ded15bfe39cb2a28f5cb24888a661c",
      "parents": [
        "b85e1ecfdf410b6aec7b6f93e3932b0aa32fba06",
        "87e1938be8e6c2ac7e6163a63df5dd69633cc836"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 29 22:50:56 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 29 22:51:04 2015 +0000"
      },
      "message": "Merge \"Replace PNG-based seekbar thumb animation with AVD\" into mnc-dev"
    },
    {
      "commit": "87e1938be8e6c2ac7e6163a63df5dd69633cc836",
      "tree": "c4eb23c5d1e683ffd2fe36307b8dc529f49629b3",
      "parents": [
        "517f3ee41afb7713f1fc6fa37a6f3a6efa97a020"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 29 15:12:14 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 29 15:12:14 2015 -0700"
      },
      "message": "Replace PNG-based seekbar thumb animation with AVD\n\nAdds optical inset support for VectorDrawable and GradientDrawable.\n\nBug: 19944181\nChange-Id: I9df04d9fe17ad858413e7f93694bf37ee2c43c85\n"
    },
    {
      "commit": "3c436cb99f1cc0db82e342fb9dc145fd524f5029",
      "tree": "4bb8b5de8801ca77aad09d2f486c28dfd418f7fd",
      "parents": [
        "a5705a4ada8e719ebf73ed757c514b74785e7ae3",
        "d8d9a75f6a111b962bf5260a4dca87398405d95b"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Thu May 28 23:43:22 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 28 23:43:25 2015 +0000"
      },
      "message": "Merge \"Postpone AnimatedVectorDrawable animator inflation until applyTheme()\" into mnc-dev"
    },
    {
      "commit": "b63b93dee7744f00280ea998ef24d0a1d57d3934",
      "tree": "fdfa2c462b601470ad9a5dbc7ab6d79bb8f11199",
      "parents": [
        "517f3ee41afb7713f1fc6fa37a6f3a6efa97a020"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed May 27 17:18:57 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Thu May 28 13:50:44 2015 -0700"
      },
      "message": "Fix drawable CTS breakages\n\n1. ClipDrawable.getOpacity() now correctly respects the current level\n2. DrawableWrapper checks the contained drawable\u0027s changing config even\n   if it doesn\u0027t have a constant state\n3. DrawableWrapper gives priority to the last valid child drawable\n   rather than the drawable attribute\n\nBug: 21406104\nChange-Id: I442fe90d0a3865bfdc6b2d14a7358178310dde02\n"
    },
    {
      "commit": "dfa4646eca54511a28f2c61e1f4b9c697e05a913",
      "tree": "a2bfa9fa8bc4e9151509f76b6d083208514cca88",
      "parents": [
        "bcbe9ba0f939803dfa9b48519e113dc1c32268dc"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed May 27 13:26:41 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed May 27 13:26:41 2015 -0700"
      },
      "message": "API Review: Drawable\n\nRenames boolean getters to isZzz(), callback from onChange to onChanged.\n\nBug: 21342040\nChange-Id: I9700d645453354b608fd97a832359211d828b52f\n"
    },
    {
      "commit": "b1f6aebb4aab9e5c90206e01d19b7eab3d512893",
      "tree": "60243a00786e6cdd01fb57f5f0e93645df20e57b",
      "parents": [
        "90ac386b4e4ee2679a2b7af83642ab74967c51e3",
        "3df4869a77bdeb72d5810bbcf7819ed1b8dd0ec7"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed May 20 14:18:32 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 20 14:18:34 2015 +0000"
      },
      "message": "Merge \"Fix Bitmap#sameAs NPE\" into mnc-dev"
    },
    {
      "commit": "3df4869a77bdeb72d5810bbcf7819ed1b8dd0ec7",
      "tree": "ddb8c28bad72c12c0ac0c88c3756b0233c1ea8bc",
      "parents": [
        "95ba62f8d0e753bc7905b915d0b2b510d09c320c"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 19 15:50:51 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 19 16:06:16 2015 -0700"
      },
      "message": "Fix Bitmap#sameAs NPE\n\nBug: 21281842\n\nChange-Id: I4a1e33d7e642fa50e8789f1441e8587d1c15119c\n"
    },
    {
      "commit": "d8d9a75f6a111b962bf5260a4dca87398405d95b",
      "tree": "357cd9d13dc5dda487fb60fd523c57d12772403c",
      "parents": [
        "0c4729a1e468e2b0783a4234e39677d8078473b3"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon May 18 18:53:46 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon May 18 18:53:46 2015 -0700"
      },
      "message": "Postpone AnimatedVectorDrawable animator inflation until applyTheme()\n\nThis CL works around Animator\u0027s lack of support for applying a theme\nafter inflation by postponing Animator inflation until a theme is\navailable, either in inflate() or applyTheme().\n\nIncludes a workaround for AVDs that don\u0027t reference any theme attrs\nin their animators and this don\u0027t require a call to applyTheme().\n\nPartial implementation of removing non-constant data from the AVD\u0027s\nconstant state. Moves the mutable AnimatorSet to a local variable and\ntreats the Animators as constant data.\n\nWe\u0027ll follow up with real support for applyTheme() in Animator or\nAnimatorSet, at which point we can remove this workaround.\n\nBug: 20817800\nChange-Id: I555c53c955219990ee376bee568bcc038532f9ed\n"
    },
    {
      "commit": "0c4729a1e468e2b0783a4234e39677d8078473b3",
      "tree": "561ddec48cb25bb37f98c5c93f0ebe8ca6573445",
      "parents": [
        "f8575f667b88d87207053cca06101bbc1c36f68c",
        "344ad7126f1e598e4259f128eaeac8a7ef904dd3"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue May 19 00:37:02 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 19 00:37:03 2015 +0000"
      },
      "message": "Merge \"Revert \"Postpone AnimatedVectorDrawable animator inflation until applyTheme()\"\" into mnc-dev"
    },
    {
      "commit": "344ad7126f1e598e4259f128eaeac8a7ef904dd3",
      "tree": "77c48ee2c1d4289ffd41a36bbff3f685569876a7",
      "parents": [
        "9b115a9870a184e32bdbd07f792f9b8c956c75ca"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue May 19 00:36:53 2015 +0000"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue May 19 00:36:53 2015 +0000"
      },
      "message": "Revert \"Postpone AnimatedVectorDrawable animator inflation until applyTheme()\"\n\nThis reverts commit 9b115a9870a184e32bdbd07f792f9b8c956c75ca.\n\nChange-Id: Ief148510472e129f992cf52ef8b8a25b5e17e05f\n"
    },
    {
      "commit": "365f5c2e4be73382eefeb69a6d4a4aa5d60bc27d",
      "tree": "8f0c11707d2e7214b8c3c0e1f674b6f72e360694",
      "parents": [
        "6ae9dc804960da833338452c25023fc747e406a1",
        "5bc0144302bb378e5f007baa4bf6620ab9031879"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon May 18 22:32:56 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 18 22:32:57 2015 +0000"
      },
      "message": "Merge \"Update ripple drawable target radius on bounds change\" into mnc-dev"
    },
    {
      "commit": "6ae9dc804960da833338452c25023fc747e406a1",
      "tree": "33ba18c26a7898c9860da3716a3de97ef1f2b385",
      "parents": [
        "32d812824bf22569d12b2a8c3ed9fcf776e4da9e",
        "9b115a9870a184e32bdbd07f792f9b8c956c75ca"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon May 18 22:24:38 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 18 22:24:39 2015 +0000"
      },
      "message": "Merge \"Postpone AnimatedVectorDrawable animator inflation until applyTheme()\" into mnc-dev"
    },
    {
      "commit": "721ae5fec5f1fd4f93aa2a361a0ac298e15ce353",
      "tree": "c331ac3a8453867756de6e456c9624d84d27bbae",
      "parents": [
        "39d7f30ebe490c1d6aee76b0b61e3e67dec13e34"
      ],
      "author": {
        "name": "Riley Andrews",
        "email": "riandrews@google.com",
        "time": "Mon May 11 16:08:22 2015 -0700"
      },
      "committer": {
        "name": "Riley Andrews",
        "email": "riandrews@google.com",
        "time": "Mon May 18 19:55:39 2015 +0000"
      },
      "message": "Add internal bitmap api for creating immutable ashmem backed bitmaps.\n\nBug 21037890\nChange-Id: I827e83dd75e301e7d93ead5efdd744f0d8435ae5\n"
    },
    {
      "commit": "5bc0144302bb378e5f007baa4bf6620ab9031879",
      "tree": "5d2599ade2dbee0097edfe42c07a7a0113909e47",
      "parents": [
        "afabc217226c11bad46de4eac557f8fe2e15f708"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 15 17:22:24 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 15 17:22:24 2015 -0700"
      },
      "message": "Update ripple drawable target radius on bounds change\n\nOnly bothers with the background and active ripple, since the exiting\nripples are in hardware animation mode anyway and can\u0027t be updated.\n\nBug: 21079749\nChange-Id: I0f70c0c0feea32e2c70bb9b1b0fa3b7846b20c7f\n"
    },
    {
      "commit": "e922f49b627912c113250bd8506830bb69943025",
      "tree": "97bbae424c3a41a4fba0b1cf60ef20bf951fffb5",
      "parents": [
        "afabc217226c11bad46de4eac557f8fe2e15f708"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 15 14:53:03 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 15 14:53:03 2015 -0700"
      },
      "message": "Allow getChangingConfigurations() on DrawableWrapper with null drawable\n\nChange-Id: Iecf39b53419e07927a3fe3096036a57afd69439a\n"
    },
    {
      "commit": "9b115a9870a184e32bdbd07f792f9b8c956c75ca",
      "tree": "5f966209b5c84781e9d40f34168514ad8a2f2b75",
      "parents": [
        "79d0c080a060b340e87d9211f5b174613b67d947"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 15 10:43:12 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Fri May 15 10:54:11 2015 -0700"
      },
      "message": "Postpone AnimatedVectorDrawable animator inflation until applyTheme()\n\nThis CL works around Animator\u0027s lack of support for applying a theme\nafter inflation by postponing Animator inflation until a theme is\navailable, either in inflate() or applyTheme().\n\nIncludes a workaround for AVDs that don\u0027t reference any theme attrs\nin their animators and this don\u0027t require a call to applyTheme().\n\nWe\u0027ll follow up with real support for applyTheme() in Animator, at which\npoint we can remove this workaround.\n\nBug: 20817800\nChange-Id: I5a378a76e3625b9d754cb74ae98c07ba7c5698e5\n"
    },
    {
      "commit": "d63f9321e62064660d426efd5abbd885c4a24652",
      "tree": "96d7252ec6ba03410097d24a93abed13e52516d7",
      "parents": [
        "aee0c2ce39fe92716bb76d33d6f8cc8789467cf6"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed May 06 15:18:49 2015 -0400"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri May 15 12:35:21 2015 +0000"
      },
      "message": "Icon support comes to Notification.\n\n  And you may ask yourself: what is that beautiful icon?\n  And you may ask yourself: where does that API go to?\n  And you may ask yourself: is it a resource? is it a Bitmap?\n  And you may say to yourself: my god, what have I done\n\n(This patch fixes a number of bugs in the initial\nimplementation, but other than that, it\u0027s the same as it\never was.)\n\nBug: 18568715\nBug: 21141842\nChange-Id: I1d3f9427abd7f0bb57e533fcfac708851ff644b6\n"
    },
    {
      "commit": "aee0c2ce39fe92716bb76d33d6f8cc8789467cf6",
      "tree": "45267d7c194cf57499388ca50a1886ffdbb1ef70",
      "parents": [
        "af9ea2cf5e9f4848b3d1078cc261931e1339e7cf",
        "02cd9f91a6bd6d06d6d1237f8b978a0ab0b8ea32"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Fri May 15 04:39:41 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 15 04:39:42 2015 +0000"
      },
      "message": "Merge \"Use Context instead of Resources in Icon.createWithResource.\" into mnc-dev"
    },
    {
      "commit": "d76a81f5195b8a23b136f5a9965d3b5dd12a195d",
      "tree": "8946085c63bcf62eec448e74736898de315c85dc",
      "parents": [
        "ebb1d76e32535df04be5baab72fc067decf8ee15",
        "220239e37110bf7d97aa92270be5a12ab0cf5e24"
      ],
      "author": {
        "name": "Yorke Lee",
        "email": "yorkelee@google.com",
        "time": "Fri May 15 01:39:03 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 15 01:39:04 2015 +0000"
      },
      "message": "Merge \"Fix missing break in Icon class\" into mnc-dev"
    },
    {
      "commit": "220239e37110bf7d97aa92270be5a12ab0cf5e24",
      "tree": "752f10bf6f74315a45793106aa40cc9f177b4652",
      "parents": [
        "c9be9f4d5bcf513654dbca24e648312d61e04bfc"
      ],
      "author": {
        "name": "Yorke Lee",
        "email": "yorkelee@google.com",
        "time": "Thu May 14 18:22:02 2015 -0700"
      },
      "committer": {
        "name": "Yorke Lee",
        "email": "yorkelee@google.com",
        "time": "Thu May 14 18:24:31 2015 -0700"
      },
      "message": "Fix missing break in Icon class\n\nThis causes RuntimeExceptions to fall through to the next\ncase statement.\n\nBug: 21168985\nChange-Id: Ie69610b22c6caf9f6536ebd48673067880cb75a2\n"
    },
    {
      "commit": "4b4d4757698718f785aa534b69a117007f5b64a7",
      "tree": "70fabf3e5e0a3c8204039deeb2b39076e018bf7e",
      "parents": [
        "2cdf5eaad4ad84fc87b73945fdd3262da4a0ab43",
        "c7741d467b37351ab13f75592fc7400d0c2ba6d7"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Fri May 15 00:28:32 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 15 00:28:33 2015 +0000"
      },
      "message": "Merge \"Start AnimationDrawable from the zeroth frame.\" into mnc-dev"
    },
    {
      "commit": "c7741d467b37351ab13f75592fc7400d0c2ba6d7",
      "tree": "b23667632355b9cc5a9f4c4fe64298cc4b9be49e",
      "parents": [
        "07b83f1c9e8a7692a985aa2d13ac13fc5521aa4b"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu May 14 15:12:23 2015 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Thu May 14 17:23:43 2015 -0700"
      },
      "message": "Start AnimationDrawable from the zeroth frame.\n\nThis CL fixes the issue where when start is called, we run the next frame\nof the animation drawable while mCurFrame is already set to 0. The result\nis that the first frame of the AnimationDrawable is then skipped.\n\nBug: 21168854\nChange-Id: I2b77ae017d3debd0f8cfec81ea86d1120e78bb55\n"
    },
    {
      "commit": "0e4a2b5ff0ee061c46bfe3b1f15a7067308e0da8",
      "tree": "4ca4efbe64b2cc5224c37a687f3e6a361883302e",
      "parents": [
        "e650fd95a9d87f74fb420687b7062c9d428ef3f1",
        "6d8371e73ff6452be5a23089e7edeb8d6d96f065"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu May 14 23:27:47 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 14 23:27:49 2015 +0000"
      },
      "message": "Merge \"Check for setting to already set\" into mnc-dev"
    },
    {
      "commit": "6d8371e73ff6452be5a23089e7edeb8d6d96f065",
      "tree": "7dad88f89ada8fcc80966eb2004753f2e94d6bfd",
      "parents": [
        "6e1c17a3dfd62f3ae2a16ac64b8575fc3aa4a7a2"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu May 14 15:47:03 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu May 14 16:06:12 2015 -0700"
      },
      "message": "Check for setting to already set\n\nBug: 20105644\nChange-Id: Ia79d2ae5c725c139d2b7c423a899be625cb8f14f\n"
    },
    {
      "commit": "02cd9f91a6bd6d06d6d1237f8b978a0ab0b8ea32",
      "tree": "cbe53eb516a0d954bfb353e7bea9cf4e6d2f8c14",
      "parents": [
        "d674f2308aa1dd8f6f6df9d3cdd552e2aec0e64e"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Thu May 14 11:44:32 2015 -0400"
      },
      "committer": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Thu May 14 13:23:12 2015 -0400"
      },
      "message": "Use Context instead of Resources in Icon.createWithResource.\n\nThis works around situations where corrupted packages cause\nResources.getResourcePackageName to return something that\ndoes\u0027t actually work.\n\nBug: 21144636\nChange-Id: I271518599a8eb89d493f1ceda6cb2e47fb38a4ff\n"
    },
    {
      "commit": "09e51a739f3e408567f0eefafcc5fedb01bc3401",
      "tree": "d20689934b33b290a52cd74214db79b0c168fd6f",
      "parents": [
        "1b2e5c11b6a89d56d5058907c3b0c88bf0170857"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Thu May 14 15:32:28 2015 +0000"
      },
      "committer": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Thu May 14 12:23:24 2015 -0400"
      },
      "message": "Revert \"Icon support comes to Notification.\"\n\nThis reverts commit 08a04c15245c970856022d0779aa27d4d63cdee3.\nThis also reverts commit 5bcbf857d129f4513e562801a4e88077b2655ade.\n\nChange-Id: Ia0b0a5339d523581c877822a3a1feec97ae4b73d\n"
    },
    {
      "commit": "08a04c15245c970856022d0779aa27d4d63cdee3",
      "tree": "b2f405077560e5200fc2d55ae5f37eaf22f616ee",
      "parents": [
        "a22a380fbbe224783d8b82440ca8692b0ff5b0a2"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed May 06 15:18:49 2015 -0400"
      },
      "committer": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed May 13 23:50:43 2015 -0400"
      },
      "message": "Icon support comes to Notification.\n\n  And you may ask yourself: what is that beautiful icon?\n  And you may ask yourself: where does that API go to?\n  And you may ask yourself: is it a resource? is it a Bitmap?\n  And you may say to yourself: my god, what have I done\n\nBug: 18568715\nChange-Id: I4377b311c538bd1cf36b3fba22326bae81af40c9\n"
    },
    {
      "commit": "d9e1fe3cd443e02e64f6006be4bc5d5622082675",
      "tree": "1994ae14ae5fecd5aef3eb0411527bda5516617a",
      "parents": [
        "ad0bfe3ae2f056a568c6256614079e6f31f5d542",
        "cad84a2070b68093ab31b05389685fdbcd0d9f85"
      ],
      "author": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Thu May 14 02:07:52 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 14 02:07:58 2015 +0000"
      },
      "message": "Merge \"[1/4] Use new Icon class in PhoneAccount.\" into mnc-dev"
    },
    {
      "commit": "cad84a2070b68093ab31b05389685fdbcd0d9f85",
      "tree": "9dbb39304cf02950bb4d295c0c3b872be432642b",
      "parents": [
        "90c66e3ded4a91613b0c1760ab2ef15e0d118a36"
      ],
      "author": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Wed May 13 11:17:25 2015 -0700"
      },
      "committer": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Wed May 13 16:57:48 2015 -0700"
      },
      "message": "[1/4] Use new Icon class in PhoneAccount.\n\nBug: 21088522\nChange-Id: Ia03171d4861f758701e89733f4082863587e8c11\n"
    },
    {
      "commit": "d6acd422aff35bc7cb8ab46fa422a4be7fffd026",
      "tree": "a3c70ac16107dc281459b9e16efa48ed58df0871",
      "parents": [
        "74a727d06100c7fb9bc3f4d0a1e1b29151172b58",
        "caa6226b1735ae074ec3861e2424bbd2276b88a0"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 13 20:47:46 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 13 20:47:47 2015 +0000"
      },
      "message": "Merge \"Revert \"Anti-alias by default\"\" into mnc-dev"
    },
    {
      "commit": "74a727d06100c7fb9bc3f4d0a1e1b29151172b58",
      "tree": "dc38fbd662d77e63a7b7d6ee6631d93b45866580",
      "parents": [
        "bc2c21e2922e6b3441bb4f80caed4328af5993af",
        "b846b58f7a27f19431bf0af3f39a514ad4761690"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 13 20:44:48 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 13 20:44:49 2015 +0000"
      },
      "message": "Merge \"Anti-Alias ColorDrawable\" into mnc-dev"
    },
    {
      "commit": "caa6226b1735ae074ec3861e2424bbd2276b88a0",
      "tree": "596e2bbfa5710b8c3511d4d4a4a98605b37e744d",
      "parents": [
        "55e603ee9de06125751292c84f1b25fb9a78d4e4"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 13 13:09:50 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 13 13:44:30 2015 -0700"
      },
      "message": "Revert \"Anti-alias by default\"\n\nbug:20948129\n\nKeep HIDDEN_DEFAULT_PAINT_FLAGS name.\n\nThis reverts commit 1b60cc0529161b5eca6407b551d67d355994c567.\n\nChange-Id: I97cd9c556375c74c52b006bda4fc7b3a2cfa89e1\n"
    },
    {
      "commit": "b846b58f7a27f19431bf0af3f39a514ad4761690",
      "tree": "fba61a5d757d04ace7030914887b35c0abeef18e",
      "parents": [
        "55e603ee9de06125751292c84f1b25fb9a78d4e4"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 13 13:16:56 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Wed May 13 13:16:56 2015 -0700"
      },
      "message": "Anti-Alias ColorDrawable\n\nChange-Id: I4d0ee2a496de908b99b0f1d8bef1b6f861c94c6f\n"
    },
    {
      "commit": "b27333bcca733ec0ec828b45d20507cbfa13c6d6",
      "tree": "77972139ac44f01a69624cb2817b36093afd60f3",
      "parents": [
        "4201be08a1cb1358e7ee30f81927b7c11f477ea3",
        "877d696c382ecb8a97972450c8819536641a963c"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed May 13 17:32:16 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 13 17:32:17 2015 +0000"
      },
      "message": "Merge \"Icon API tuneups:\" into mnc-dev"
    },
    {
      "commit": "877d696c382ecb8a97972450c8819536641a963c",
      "tree": "3bd31b9dd305f9ad8836eb013d9edaa07d512f64",
      "parents": [
        "1c86159142aa8b5d582cd53e1d16b874c99d3bc4"
      ],
      "author": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed May 13 10:51:52 2015 -0400"
      },
      "committer": {
        "name": "Dan Sandler",
        "email": "dsandler@android.com",
        "time": "Wed May 13 13:15:46 2015 -0400"
      },
      "message": "Icon API tuneups:\n\n- Reorder parameters to loadDrawableAsync()\n- New version of createWithResource that takes a package\n  name instead of a Resources\n- Add loadDrawableAsUser() for INTERACT_ACROSS_USERS clients\n  like SystemUI\n- Docs cleanups\n\nBug: 21089268\nBug: 21031774\nChange-Id: I465d2b865e35e12094b564f994e59d55e522f65a\n"
    },
    {
      "commit": "aa358194f015e282e9c0962e49fe6752efc4f9c0",
      "tree": "60b4e0827e893ef46079f0f3a2f8773db5690269",
      "parents": [
        "6dda58e7acb13f8a9c3fab385055eedf7d5c9416"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue May 12 16:44:59 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue May 12 16:44:59 2015 -0700"
      },
      "message": "AnimatedRotateDrawable should inflate child elements\n\nThis was missed during the update that extended from DrawableWrapper.\n\nBug: 20089503\nChange-Id: Ie84c040deaecb415e882842f2172a344afa8df7b\n"
    },
    {
      "commit": "6af2857ae0c3bde47e0e4a6abd84f42ee7086291",
      "tree": "63c4d37132fef5f4c56b03a7be19e223683354d1",
      "parents": [
        "f038295e98846e3e359854b1642b362643bd6053",
        "6a49ddef62865c1b245ad60a13c334f0ffaf1a5f"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 12 19:40:25 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 12 19:40:26 2015 +0000"
      },
      "message": "Merge \"Revert \"Fix build - Revert \"Revert \"Use default constructor to get anti-aliasing\"\"\"\" into mnc-dev"
    },
    {
      "commit": "6a49ddef62865c1b245ad60a13c334f0ffaf1a5f",
      "tree": "870eb5c65f153857550b3dfddeca639e19d19775",
      "parents": [
        "d2c05188b669256ab9d6024ad5793e0ca891fed0"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 12 10:28:14 2015 -0700"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 12 10:44:30 2015 -0700"
      },
      "message": "Revert \"Fix build - Revert \"Revert \"Use default constructor to get anti-aliasing\"\"\"\n\nFix import\n\nThis reverts commit 7ed1431c83286abc83b9e5afc45fbd21ecb777b1.\n\nChange-Id: Id93eba3ed1d47a90384ba20dea6f74d78755792b\n"
    },
    {
      "commit": "4b403557bca7b622c187c3b06814e2118ec7d985",
      "tree": "efb393bb60c5cd32c6f10fac9874b02d5981eb5c",
      "parents": [
        "03064e25b284d7ee99563658c5966ee590f925f6",
        "56ef127df75164243a21df10771e7c77c8ef2e24"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue May 12 17:32:21 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 12 17:32:30 2015 +0000"
      },
      "message": "Merge \"Avoid setting mCurFrame to -1\" into mnc-dev"
    },
    {
      "commit": "7ed1431c83286abc83b9e5afc45fbd21ecb777b1",
      "tree": "26fc500fb3315ecd5e99acdb8a9e82a05f829f98",
      "parents": [
        "dfe0a66ceca530e0777ebfab20f81103baa18f14"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 12 17:22:22 2015 +0000"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 12 17:22:22 2015 +0000"
      },
      "message": "Fix build - Revert \"Revert \"Use default constructor to get anti-aliasing\"\"\n\nThis reverts commit dfe0a66ceca530e0777ebfab20f81103baa18f14.\n\nChange-Id: I58a1bae649a284f3d3b6213064d903ea7fcf185a\n"
    },
    {
      "commit": "56ef127df75164243a21df10771e7c77c8ef2e24",
      "tree": "8d1971bc35e9a28c0a2d7321424619ec9d9cfd85",
      "parents": [
        "729d0a06eaaa40f5be4d9dc5bd580f525ba8360e"
      ],
      "author": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Mon May 11 15:18:45 2015 -0700"
      },
      "committer": {
        "name": "Doris Liu",
        "email": "tianliu@google.com",
        "time": "Tue May 12 10:07:25 2015 -0700"
      },
      "message": "Avoid setting mCurFrame to -1\n\nUse the dedicated flag mRunning to check whether the DrawableAnimation\nis running, rather than comparing mCurFrame with -1. This CL aims to\nsimplify the use of mCurFrame.\n\nBug: 17112962\nChange-Id: I15f9e4c102f504b8c806f029949fe9ec872479a5\n"
    },
    {
      "commit": "dfe0a66ceca530e0777ebfab20f81103baa18f14",
      "tree": "c6c694f61a07824efda588c7c941dab2672459d6",
      "parents": [
        "356a26122bf928709d88cdc9a4a304b4495b1b31"
      ],
      "author": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 12 16:36:28 2015 +0000"
      },
      "committer": {
        "name": "Chris Craik",
        "email": "ccraik@google.com",
        "time": "Tue May 12 16:36:49 2015 +0000"
      },
      "message": "Revert \"Use default constructor to get anti-aliasing\"\n\nbug:20948129\n\nThis reverts commit 58fc522a69e8ddf9ac8530ce88e9c2c92da1dd14.\n\nChange-Id: Iddeccb4ad15b843bb3e610bd3673a0c7abc1bf46\n"
    },
    {
      "commit": "9298c5414172344f2462beda70e624af5f774483",
      "tree": "a5717abc111a0ba1674c8383354a0239723aa85a",
      "parents": [
        "ad57442fd00e7fd7f1885d23372ec5c85e176820"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 11 10:18:12 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 11 11:03:43 2015 -0700"
      },
      "message": "Clarify assert\n\nBug: 20918138\nChange-Id: I39a9f8bbfb3752f9a6e5f5215ed8cd3c93ce87fc\n"
    },
    {
      "commit": "ad57442fd00e7fd7f1885d23372ec5c85e176820",
      "tree": "f2f0a5ad98229885438cd4f0a368d29ce7c5d7a8",
      "parents": [
        "d7b2a2e4562a9f5a085257b0da5a95b1b46d3d55"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 11 09:43:47 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 11 09:43:47 2015 -0700"
      },
      "message": "Add a few missing asserts\n\nBug: 20918138\nChange-Id: I6823cfe531ff6f63a7d9fde22278e6780726c9f1\n"
    },
    {
      "commit": "3e776dee3e8af646cdcfb7a60e0e301c99f05293",
      "tree": "168fdb412a62a5709f9db7094b0bc4025b4c5eb7",
      "parents": [
        "a0698b617f1efc71d5301f98aead822e266ec5d6"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri May 08 13:59:01 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri May 08 14:02:02 2015 -0700"
      },
      "message": "Compatibility hack\n\nBug: 20940526\n\nRather than throwing an exception on accessing a recycled()\nbitmap let certain operations succeed and just return dummy\nvalues. Apps appear to be relying on this.\n\nChange-Id: I74df2efdc29d93facd8553ed31cda3addf0b28eb\n"
    },
    {
      "commit": "a039182d6157bc0487df4ad8e373685c9dd7d662",
      "tree": "5646c6fe082f32147659a939f0aa74e232a3caca",
      "parents": [
        "b59642bf49e8703ebd88532f06628ef5a7d8b006"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu May 07 10:49:55 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu May 07 11:06:46 2015 -0700"
      },
      "message": "Delete a bunch of dead code\n\nRotation wasn\u0027t supported, so just nuke all the code\naround it. Fixes some unused field warnings\n\nChange-Id: Ic33d56ed3b42e3261bddc5007c5a029831254f83\n"
    },
    {
      "commit": "27cf86939d918b2d6b32a0650a48b8a2afaa26b6",
      "tree": "fa2ba438e009b4ec62cbcdf5e0b84c64f6c0c8db",
      "parents": [
        "424681e43e454bfcbceb863ddccb875ea57ec26f"
      ],
      "author": {
        "name": "Alexander Martinz",
        "email": "eviscerationls@gmail.com",
        "time": "Wed May 06 00:44:24 2015 +0200"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Wed May 06 09:55:49 2015 -0700"
      },
      "message": "Fix setting hotspot bounds in a drawable container\n\nWe are passing the wrong parameters for setting hotspot bounds.\nBottom and right are in the wrong order, correct it.\n\nChange-Id: I2762fc3a4c29f05ba8b7e71a5c6cad0be16c2ae0\n"
    },
    {
      "commit": "859df3b7b3990b9230f517aa12d08e408caefa5e",
      "tree": "019c30206749016804d033a4e995f68552b126fa",
      "parents": [
        "d5c780a7877d898452f47355abee64a82dc57038"
      ],
      "author": {
        "name": "Alexander Martinz",
        "email": "eviscerationls@gmail.com",
        "time": "Wed May 06 00:44:24 2015 +0200"
      },
      "committer": {
        "name": "Alexander Martinz",
        "email": "eviscerationls@gmail.com",
        "time": "Wed May 06 00:44:24 2015 +0200"
      },
      "message": "Fix setting hotspot bounds in a drawable container\n\nWe are passing the wrong parameters for setting hotspot bounds.\nBottom and right are in the wrong order, correct it.\n\nChange-Id: I2762fc3a4c29f05ba8b7e71a5c6cad0be16c2ae0\n"
    },
    {
      "commit": "c64b3fab95cff6f33cba524f1b9c540cfb75c73b",
      "tree": "465b876084be864f8205c98e5f6fa69fce126ef4",
      "parents": [
        "0bc8afff7eb3b5af72b7e9a4ce3954488bfbecd0",
        "f29ed28c7b878ef28058bc730715d0d32445bc57"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue May 05 14:50:48 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 05 14:50:50 2015 +0000"
      },
      "message": "Merge \"Attempt to solve the double-GC problem\" into mnc-dev"
    },
    {
      "commit": "f29ed28c7b878ef28058bc730715d0d32445bc57",
      "tree": "3687467f789dfd447159e13dd0a840d1a5dae98f",
      "parents": [
        "05dc201ff64f6324c2726a8841af7021e7071b97"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Apr 07 07:32:03 2015 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 04 16:05:12 2015 -0700"
      },
      "message": "Attempt to solve the double-GC problem\n\nFix the issue where Bitmap requires two GC passes\nto release its byte[] by using some questionable\nref-counting hacks to manage whether or not\nnative has a strong or weak ref to the byte[]\n\nChange-Id: Ia90a883579f61c0b1904b5549a66bd0ef34b32c5\n"
    },
    {
      "commit": "d21be499753b964433faefbe0fd770c62a4c2e12",
      "tree": "21b13b793f6f6b545b059311d235e50c9dd73285",
      "parents": [
        "5551aca2b8ec9fe7ab5ffda8dad82ee104556962"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon May 04 12:51:54 2015 -0700"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Mon May 04 12:51:54 2015 -0700"
      },
      "message": "More documentation for handling RippleDrawable mask at run time\n\nThe docs are now really explicit about the layer\u0027s ID and how to set\nor update the mask layer from code.\n\nBug: 20493831\nChange-Id: I801f10cd08fd1b4bb226c63a1bdf3271229928ea\n"
    },
    {
      "commit": "05dc201ff64f6324c2726a8841af7021e7071b97",
      "tree": "e3d4dcbeb60a01cf2f4cf7f255ef4fa3ad11c05a",
      "parents": [
        "1641c0cb0b6baf313c82846fe4f64007078c604f",
        "7c103a36f60b690e3fe83c40210e1cb0c76bba43"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon May 04 14:34:41 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 04 14:34:52 2015 +0000"
      },
      "message": "Merge \"Remove Bitmap#getSkBitmap\" into mnc-dev"
    }
  ],
  "next": "1641c0cb0b6baf313c82846fe4f64007078c604f"
}
