Bug 1358185 - Force FixedPosition display items to be active. r?mstange draft
authorJamie Nicol <jnicol@mozilla.com>
Wed, 03 May 2017 16:49:43 +0100
changeset 571969 c00a1cda734a1ab68a92acbf5483dc37fec368f3
parent 571941 d7e40bb852ea047a0e5f530bcdc04d29a1765001
child 626931 ad3a4d4d8d6d48d0663d23c8b16f01fdd64e1f5d
push id56974
push userbmo:jnicol@mozilla.com
push dateWed, 03 May 2017 15:53:29 +0000
reviewersmstange
bugs1358185
milestone55.0a1
Bug 1358185 - Force FixedPosition display items to be active. r?mstange Fixed backgrounds were not being clipped correctly when rendered using inactive layers. MozReview-Commit-ID: 3v8tajr3MoB
layout/painting/nsDisplayList.h
--- a/layout/painting/nsDisplayList.h
+++ b/layout/painting/nsDisplayList.h
@@ -4105,17 +4105,17 @@ public:
   virtual already_AddRefed<Layer> BuildLayer(nsDisplayListBuilder* aBuilder,
                                              LayerManager* aManager,
                                              const ContainerLayerParameters& aContainerParameters) override;
   NS_DISPLAY_DECL_NAME("FixedPosition", TYPE_FIXED_POSITION)
   virtual LayerState GetLayerState(nsDisplayListBuilder* aBuilder,
                                    LayerManager* aManager,
                                    const ContainerLayerParameters& aParameters) override
   {
-    return mozilla::LAYER_ACTIVE;
+    return mozilla::LAYER_ACTIVE_FORCE;
   }
   virtual bool TryMerge(nsDisplayItem* aItem) override;
 
   virtual bool ShouldFixToViewport(nsDisplayListBuilder* aBuilder) override { return mIsFixedBackground; }
 
   virtual uint32_t GetPerFrameKey() override { return (mIndex << nsDisplayItem::TYPE_BITS) | nsDisplayItem::GetPerFrameKey(); }
 
   AnimatedGeometryRoot* AnimatedGeometryRootForScrollMetadata() const override {