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