mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-21 09:49:14 +00:00
Bug 1386643 - Don't respect font smoothing background colors in pushed layers. r=jrmuizel
This is an imperfect workaround. Ideally we'd want layout to determine the correct color here: If the pushed layer will end up on something mostly opaque in the outer layer, the font smoothing background color should be transparent (or even a color that approximates that opaque content), and if the pushed layer will end up on transparency in the outer layer, the appropriate font smoothing background color for the outer layer should be used when drawing text in the pushed layer. This workaround causes us to lose subpixel AA in background tabs that have the overflow mask applied to them. For those, using the font smoothing background color in the pushed layer was the right choice. MozReview-Commit-ID: FPufh04EVp3 --HG-- extra : rebase_source : 7a6cb73255bdb7f1b8aba7df60ebe61171275da4
This commit is contained in:
parent
4e2c6b0054
commit
b7d6066c45
@ -1261,7 +1261,13 @@ DrawTargetSkia::FillGlyphsWithCG(ScaledFont *aFont,
|
||||
return false;
|
||||
}
|
||||
|
||||
SetFontSmoothingBackgroundColor(cgContext, mColorSpace, aRenderingOptions);
|
||||
if (mPushedLayers.empty()) {
|
||||
// Respect the font smoothing background color, but only if no layer is
|
||||
// currently pushed, because this color usually describes what's under this
|
||||
// DrawTarget, and not what's within this DrawTarget under the currently
|
||||
// pushed layer.
|
||||
SetFontSmoothingBackgroundColor(cgContext, mColorSpace, aRenderingOptions);
|
||||
}
|
||||
SetFontColor(cgContext, mColorSpace, aPattern);
|
||||
|
||||
ScaledFontMac* macFont = static_cast<ScaledFontMac*>(aFont);
|
||||
|
Loading…
x
Reference in New Issue
Block a user