)]}'
{
  "commit": "aaa77c169f2f31565574acfc3e27cec140c05c9e",
  "tree": "ed6a2b5d9cd1fc5cc309e43f3a59a4109c825023",
  "parents": [
    "555c972f5b1d32f295c2b271bb3d59b8ca27b9a0"
  ],
  "author": {
    "name": "Chris Dalton",
    "email": "csmartdalton@google.com",
    "time": "Mon Jan 07 17:45:36 2019 -0700"
  },
  "committer": {
    "name": "Skia Commit-Bot",
    "email": "skia-commit-bot@chromium.org",
    "time": "Tue Jan 08 16:58:58 2019 +0000"
  },
  "message": "Reland \"ccpr: Support caching of paths that span multiple tiles\"\n\nThis is a reland of 6a3dc8be46728ce2042d363f89ed689a2236a37a\n\nOriginal change\u0027s description:\n\u003e ccpr: Support caching of paths that span multiple tiles\n\u003e \n\u003e Adds an accumulative \"hit rect\" for each cache entry that tracks the\n\u003e region of the path that has been drawn during its lifetime. Now, a\n\u003e path mask can be cached once the \"hit rect\" covers 50% of the path.\n\u003e This allows us to cache a path that spans multiple tiles.\n\u003e \n\u003e To guard against unnecessarily caching gigantic path masks, we also\n\u003e require that 10% of the path be visible during the draw when it is\n\u003e cached.\n\u003e \n\u003e Bug: skia:8462\n\u003e Change-Id: Iab2c277102b7a774eaa909c9663211694554c5a5\n\u003e Reviewed-on: https://skia-review.googlesource.com/c/180700\n\u003e Commit-Queue: Chris Dalton \u003ccsmartdalton@google.com\u003e\n\u003e Reviewed-by: Robert Phillips \u003crobertphillips@google.com\u003e\n\nBug: skia:8462\nChange-Id: Ia2b10430acd2dffac78b5abd432763ead79bc902\nReviewed-on: https://skia-review.googlesource.com/c/181983\nReviewed-by: Robert Phillips \u003crobertphillips@google.com\u003e\nCommit-Queue: Chris Dalton \u003ccsmartdalton@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b9f09699843bb39a9f62ae83f7fd940f8137daf8",
      "old_mode": 33188,
      "old_path": "src/gpu/ccpr/GrCCDrawPathsOp.cpp",
      "new_id": "fe1365b582d8376b3b3aface80c12772f2e2c235",
      "new_mode": 33188,
      "new_path": "src/gpu/ccpr/GrCCDrawPathsOp.cpp"
    },
    {
      "type": "modify",
      "old_id": "b5d216f36cb98345128bd6a350cbf68f698c4e5e",
      "old_mode": 33188,
      "old_path": "src/gpu/ccpr/GrCCDrawPathsOp.h",
      "new_id": "82e05ae47c1e952896d6e46ece9a9d6765f6bbe1",
      "new_mode": 33188,
      "new_path": "src/gpu/ccpr/GrCCDrawPathsOp.h"
    },
    {
      "type": "modify",
      "old_id": "c3f6498bcf8f6167d615cbfc4616ccb4529018ae",
      "old_mode": 33188,
      "old_path": "src/gpu/ccpr/GrCCPathCache.cpp",
      "new_id": "1342431481959c21f9e22e88b29dfc822815cb4f",
      "new_mode": 33188,
      "new_path": "src/gpu/ccpr/GrCCPathCache.cpp"
    },
    {
      "type": "modify",
      "old_id": "8c52bf9fb75f6db1ec1fa8b918a4c53d373df07a",
      "old_mode": 33188,
      "old_path": "src/gpu/ccpr/GrCCPathCache.h",
      "new_id": "5fa5d4d6d1d312f0822bd4653e42862381e1aad1",
      "new_mode": 33188,
      "new_path": "src/gpu/ccpr/GrCCPathCache.h"
    },
    {
      "type": "modify",
      "old_id": "aeb509aea222ea45fc6c677cabdf5662bfc7d555",
      "old_mode": 33188,
      "old_path": "tests/GrCCPRTest.cpp",
      "new_id": "7bff2b3a207f57ac38b022923fc957195c93b0c4",
      "new_mode": 33188,
      "new_path": "tests/GrCCPRTest.cpp"
    }
  ]
}
