diff --git a/gfx/thebes/gfxPrefs.h b/gfx/thebes/gfxPrefs.h index b1fcd80b6221..c326e44b9e87 100644 --- a/gfx/thebes/gfxPrefs.h +++ b/gfx/thebes/gfxPrefs.h @@ -447,7 +447,6 @@ private: DECL_GFX_PREF(Live, "layers.acceleration.draw-fps.print-histogram", FPSPrintHistogram, bool, false); DECL_GFX_PREF(Live, "layers.acceleration.draw-fps.write-to-file", WriteFPSToFile, bool, false); DECL_GFX_PREF(Once, "layers.acceleration.force-enabled", LayersAccelerationForceEnabledDoNotUseDirectly, bool, false); - DECL_GFX_PREF(Live, "layers.advanced.border-layers", LayersAllowBorderLayers, bool, false); DECL_GFX_PREF(Live, "layers.advanced.text-layers", LayersAllowTextLayers, bool, false); DECL_GFX_PREF(Once, "layers.allow-d3d9-fallback", LayersAllowD3D9Fallback, bool, false); DECL_GFX_PREF(Once, "layers.amd-switchable-gfx.enabled", LayersAMDSwitchableGfxEnabled, bool, false); diff --git a/layout/painting/nsDisplayList.cpp b/layout/painting/nsDisplayList.cpp index 8df2587bcdb5..c817a5a89617 100644 --- a/layout/painting/nsDisplayList.cpp +++ b/layout/painting/nsDisplayList.cpp @@ -36,7 +36,6 @@ #include "nsIScrollableFrame.h" #include "nsIFrameInlines.h" #include "nsThemeConstants.h" -#include "BorderConsts.h" #include "LayerTreeInvalidation.h" #include "imgIContainer.h" @@ -4058,80 +4057,6 @@ nsDisplayBorder::ComputeInvalidationRegion(nsDisplayListBuilder* aBuilder, } } -LayerState -nsDisplayBorder::GetLayerState(nsDisplayListBuilder* aBuilder, - LayerManager* aManager, - const ContainerLayerParameters& aParameters) -{ - if (!gfxPrefs::LayersAllowBorderLayers()) { - return LAYER_NONE; - } - - nsPoint offset = ToReferenceFrame(); - Maybe br = - nsCSSRendering::CreateBorderRenderer(mFrame->PresContext(), - nullptr, - mFrame, - nsRect(), - nsRect(offset, mFrame->GetSize()), - mFrame->StyleContext(), - mFrame->GetSkipSides()); - if (!br) { - return LAYER_NONE; - } - - bool hasCompositeColors; - if (!br->AllBordersSolid(&hasCompositeColors) || hasCompositeColors) { - return LAYER_NONE; - } - - // We don't support this yet as we don't copy the values to - // the layer, and BasicBorderLayer doesn't support it yet. - if (!br->mNoBorderRadius) { - return LAYER_NONE; - } - - // We copy these values correctly to the layer, but BasicBorderLayer - // won't render them - if (!br->AreBorderSideFinalStylesSame(SIDE_BITS_ALL) || - !br->AllBordersSameWidth()) { - return LAYER_NONE; - } - - NS_FOR_CSS_SIDES(i) { - if (br->mBorderStyles[i] == NS_STYLE_BORDER_STYLE_SOLID) { - mColors[i] = ToDeviceColor(br->mBorderColors[i]); - mWidths[i] = br->mBorderWidths[i]; - } else { - mWidths[i] = 0; - } - } - - mRect = ViewAs(br->mOuterRect); - return LAYER_INACTIVE; -} - -already_AddRefed -nsDisplayBorder::BuildLayer(nsDisplayListBuilder* aBuilder, - LayerManager* aManager, - const ContainerLayerParameters& aContainerParameters) -{ - RefPtr layer = static_cast - (aManager->GetLayerBuilder()->GetLeafLayerFor(aBuilder, this)); - if (!layer) { - layer = aManager->CreateBorderLayer(); - if (!layer) - return nullptr; - } - layer->SetRect(mRect); - layer->SetCornerRadii({ LayerSize(), LayerSize(), LayerSize(), LayerSize() }); - layer->SetColors(mColors); - layer->SetWidths(mWidths); - layer->SetBaseTransform(gfx::Matrix4x4::Translation(aContainerParameters.mOffset.x, - aContainerParameters.mOffset.y, 0)); - return layer.forget(); -} - void nsDisplayBorder::Paint(nsDisplayListBuilder* aBuilder, nsRenderingContext* aCtx) { diff --git a/layout/painting/nsDisplayList.h b/layout/painting/nsDisplayList.h index ff9b053ec48e..f401a4d7ccf8 100644 --- a/layout/painting/nsDisplayList.h +++ b/layout/painting/nsDisplayList.h @@ -14,7 +14,6 @@ #define NSDISPLAYLIST_H_ #include "mozilla/Attributes.h" -#include "mozilla/Array.h" #include "mozilla/DebugOnly.h" #include "mozilla/EnumSet.h" #include "mozilla/Maybe.h" @@ -2558,13 +2557,6 @@ public: virtual bool IsInvisibleInRect(const nsRect& aRect) override; virtual nsRect GetBounds(nsDisplayListBuilder* aBuilder, bool* aSnap) override; - virtual LayerState GetLayerState(nsDisplayListBuilder* aBuilder, - LayerManager* aManager, - const ContainerLayerParameters& aParameters) override; - - virtual already_AddRefed BuildLayer(nsDisplayListBuilder* aBuilder, - LayerManager* aManager, - const ContainerLayerParameters& aContainerParameters) override; virtual void Paint(nsDisplayListBuilder* aBuilder, nsRenderingContext* aCtx) override; NS_DISPLAY_DECL_NAME("Border", TYPE_BORDER) @@ -2577,10 +2569,6 @@ public: protected: nsRect CalculateBounds(const nsStyleBorder& aStyleBorder); - mozilla::Array mColors; - mozilla::Array mWidths; - mozilla::LayerRect mRect; - nsRect mBounds; };