• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Chrome changes
2==============
3
4If your change modifies the Skia API, you may also need to land a change in Chromium.
5
6The strategy you use to synchronize changes in the Skia and Chromium
7repositories may differ based on the nature of the change, but in general, we
8recommend using build flag suppressions \(defines\)\.
9We also prefer making the old code path opt-in where possible.
10
11Method 1 \(preferred\) \- Make the old code path opt\-in for Chromium
12
13  * Add new code to Skia, leaving the old code in place.
14  * Deprecate the old code path so that it must be enabled with a flag such as
15    'SK_SUPPORT_LEGACY_XXX'.
16  * Synchronize the above changes in Skia with a Chromium commit to
17    'skia/skia_common.gypi' or 'skia/config/SkUserConfig.h' to enable the
18    deprecated Skia API.
19      * Note that the code suppression cannot exist in both the header file and
20      the gyp file, it should only reside in one location.
21  * Test the new or updated Skia API within Chromium.
22  * Remove the flag and code when the legacy code path is no longer in use.
23
24Method 2 \- Make the new code path opt\-in for Chromium
25
26  * Add new code to Skia, suppressed by a flag.
27  * Leave the old code path in place.
28  * Set the flag in Chromium's 'skia/skia_common.gypi' or
29    'skia/config/SkUserConfig.h' to enable the new or updated Skia API.
30  * Test the new or updated Skia API within Chromium.
31  * Remove the code suppression \(and code\) when the legacy API is no longer
32    in use.
33
34If your changes will affect Blink layout tests, see detailed instructions about
35how to synchronize the changes between Skia, Blink, and Chromium [here](./blink).
36