import changes from `dev' branch of rmottola/Arctic-Fox:

- Bug 1196462 - Add a pref to highlight checkerboarded areas for debugging. r=kats (ffd1d24515)
- Bug 1207944 (part 1) - Pass a gfx::Color& instead of a gfxRGBA& to SetDeviceColor(). r=jwatt. (117317c610)
- Bug 1207944 (part 2) - Pass a gfx::Color& instead of a gfxRGBA& to GetDeviceColor(). r=jwatt. (82739fb35a)
- Bug 1207944 (part 3) - Add a gfxContext::SetColor method that takes a gfx::Color&. r=jwatt. (65d081203d)
- Bug 1207944 (part 4) - Use SetColor(const Color&) when setting from an nscolor. r=jwatt. (4e3ca8e36b)
- Bug 1207944 (part 5) - Use SetColor(const Color&) when setting from a constructed gfxRGBA. r=jwatt. (d4583dbee1)
- Bug 1207944 (part 6) - Use gfx::Color instead of gfxRGBA in ColorStop. r=jwatt. (74ad3407a2)
- Bug 1207944 (part 7) - Use gfx::Color instead of gfxRGBA in BlurCache. r=jwatt. (1402a3f334)
- Bug 1207944 (part 8) - Change nsDisplayBackgroundColor::mColor from gfxRGBA to gfx::Color. r=jwatt. (42259ef66b)
- Bug 1207944 (part 9) - Remove SetColor(const gfxRGBA&). r=jwatt. (064879c237)
- Bug 1208283 (part 1) - Change gfxPattern's single-arg constructor to take a gfx::Color& instead of a gfxRGBA&. r=jwatt. (1aa348d966)
- Bug 1208283 (part 2) - Change ColorLayer::mColor, ColorLayerProperties::mColor, ReadbackLayer::mBackgroundColor from gfxRBGA to gfx::Color. r=jwatt. (859d5c4a45)
- Bug 1208283 (part 3) - Remove the ToDeviceColor() that takes a gfxRGBA. r=jwatt. (525cd78338)
- Bug 1208283 (part 4) - Change FrameMetrics::mBackgroundColor from gfxRGBA to gfx::Color. r=jwatt. (49e3c39013)
- Bug 1208283 (part 5) - Pass a gfx::Color instead of a gfxRGBA to PaintRectToSurface(). r=jwatt. (04997ce877)
- Bug 1157669 - Assert aGroupTarget is not null in PaintSelfOrChildren method. r=nical (7f3cc9c792)
- Bug 1208300 (part 4) - Remove gfxRGBA and some related things. r=jwatt. (c158d04b63)
- Bug 1207931 - Remove no-longer-needed SetBackgroundColor IPC message. r=mattwoodrow. (a54d91bf53)
- Bug 1206904 - Work around APZ crashes when dealing with nested content processes. r=botond (3252333fb4)
- Bug 1189611 - Improve the APZ minimap position and ignore trivial APZ. r=kats (12c5ff5215)
- Bug 1196412 - Correctly scale canvas layers that have a transform applied to fill the screen, r=vlad (5036fd706c)
- Bug 1189473 - Don't paint the tiles in the APZ minimap. r=mstange (fc3db414f7)
- Bug 1189924 - Add a background color to the APZ minimap. r=kats (dd347db883)
- add some dead stuff back in (de8fe1d1a0)
- Treat mix-blend-mode layers as transparent for occlusion culling. (bug 1207041, r=mstange) (c3c3844d7b)
This commit is contained in:
2022-08-26 09:36:24 +08:00
parent aa93536920
commit f39d19c93e
79 changed files with 343 additions and 503 deletions
+8 -7
View File
@@ -17,7 +17,6 @@
#include "basic/BasicImplData.h" // for BasicImplData
#include "basic/BasicLayers.h" // for BasicLayerManager, etc
#include "gfxASurface.h" // for gfxASurface, etc
#include "gfxColor.h" // for gfxRGBA
#include "gfxContext.h" // for gfxContext, etc
#include "gfxImageSurface.h" // for gfxImageSurface
#include "gfxMatrix.h" // for gfxMatrix
@@ -584,7 +583,7 @@ BasicLayerManager::FlashWidgetUpdateArea(gfxContext *aContext)
float r = float(rand()) / RAND_MAX;
float g = float(rand()) / RAND_MAX;
float b = float(rand()) / RAND_MAX;
aContext->SetColor(gfxRGBA(r, g, b, 0.2));
aContext->SetColor(Color(r, g, b, 0.2f));
aContext->Paint();
}
}
@@ -791,6 +790,7 @@ void
BasicLayerManager::PaintSelfOrChildren(PaintLayerContext& aPaintContext,
gfxContext* aGroupTarget)
{
MOZ_ASSERT(aGroupTarget);
BasicImplData* data = ToData(aPaintContext.mLayer);
/* Only paint ourself, or our children - This optimization relies on this! */
@@ -893,6 +893,8 @@ BasicLayerManager::PaintLayer(gfxContext* aTarget,
DrawPaintedLayerCallback aCallback,
void* aCallbackData)
{
MOZ_ASSERT(aTarget);
PROFILER_LABEL("BasicLayerManager", "PaintLayer",
js::ProfileEntry::Category::GRAPHICS);
@@ -959,7 +961,7 @@ BasicLayerManager::PaintLayer(gfxContext* aTarget,
paintLayerContext.AnnotateOpaqueRect();
}
bool clipIsEmpty = !aTarget || aTarget->GetClipExtents().IsEmpty();
bool clipIsEmpty = aTarget->GetClipExtents().IsEmpty();
if (clipIsEmpty) {
PaintSelfOrChildren(paintLayerContext, aTarget);
return;
@@ -1001,10 +1003,9 @@ BasicLayerManager::PaintLayer(gfxContext* aTarget,
gfxRect destRect;
#ifdef DEBUG
if (aLayer->GetDebugColorIndex() != 0) {
gfxRGBA color((aLayer->GetDebugColorIndex() & 1) ? 1.0 : 0.0,
(aLayer->GetDebugColorIndex() & 2) ? 1.0 : 0.0,
(aLayer->GetDebugColorIndex() & 4) ? 1.0 : 0.0,
1.0);
Color color((aLayer->GetDebugColorIndex() & 1) ? 1.f : 0.f,
(aLayer->GetDebugColorIndex() & 2) ? 1.f : 0.f,
(aLayer->GetDebugColorIndex() & 4) ? 1.f : 0.f);
nsRefPtr<gfxContext> temp = new gfxContext(untransformedDT, Point(bounds.x, bounds.y));
temp->SetColor(color);