Keep CSW inheriting from ContainerFrame draft
authorNeerja Pancholi <npancholi@mozilla.com>
Thu, 09 Nov 2017 18:12:11 -0800
changeset 698712 8142260134099878d68cbe641f0670df0ebb9ba3
parent 698711 d18ad78aff6ea2962b0791d744aaeacfba13cbe0
child 698713 5fb69eb47f8b3e08ef967a1ad8f952b39397602a
push id89334
push userbmo:npancholi@mozilla.com
push dateThu, 16 Nov 2017 00:39:30 +0000
milestone59.0a1
Keep CSW inheriting from ContainerFrame MozReview-Commit-ID: CklOpTOtDkv
layout/generic/nsColumnSetWrapperFrame.cpp
layout/generic/nsColumnSetWrapperFrame.h
layout/style/res/ua.css
--- a/layout/generic/nsColumnSetWrapperFrame.cpp
+++ b/layout/generic/nsColumnSetWrapperFrame.cpp
@@ -19,17 +19,17 @@ NS_NewColumnSetWrapperFrame(nsIPresShell
     new (aPresShell) nsColumnSetWrapperFrame(aContext);
   frame->AddStateBits(aStateFlags | NS_BLOCK_MARGIN_ROOT);
   return frame;
 }
 
 NS_IMPL_FRAMEARENA_HELPERS(nsColumnSetWrapperFrame)
 
 nsColumnSetWrapperFrame::nsColumnSetWrapperFrame(nsStyleContext* aContext)
-: nsBlockFrame(aContext, kClassID)
+: nsContainerFrame(aContext, kClassID)
 {
 }
 
 nscoord
 nsColumnSetWrapperFrame::GetMinISize(gfxContext* aRenderingContext)
 {
   nscoord minISize = 0;
   DISPLAY_MIN_WIDTH(this, minISize);
--- a/layout/generic/nsColumnSetWrapperFrame.h
+++ b/layout/generic/nsColumnSetWrapperFrame.h
@@ -14,17 +14,17 @@
 /* This class is a wrapper for nsColumnSetFrames and column-span elements i.e.
  * spanners. Essentially, we divide the *original* nsColumnSetFrame
  * into multiple nsColumnSetFrames on the basis of the number and position of
  * spanning elements.
  * This wrapper is necessary for implementing column-span as it allows us to
  * maintain each nsColumnSetFrame as an independent set of columns and each
  * spanning element then becomes just a block level element.
  */
-class nsColumnSetWrapperFrame final : public nsBlockFrame
+class nsColumnSetWrapperFrame final : public nsContainerFrame
 {
 public:
   NS_DECL_FRAMEARENA_HELPERS(nsColumnSetWrapperFrame)
 
   friend nsContainerFrame* NS_NewColumnSetWrapperFrame(nsIPresShell* aPresShell,
                                                        nsStyleContext* aContext,
                                                        nsFrameState aStateFlags);
   void BuildDisplayList(nsDisplayListBuilder*   aBuilder,
--- a/layout/style/res/ua.css
+++ b/layout/style/res/ua.css
@@ -189,17 +189,17 @@
   margin-top: inherit; //TODO: remove this
   margin-bottom: inherit; //TODO: remove this
 }
 
 *|*::-moz-column-set {
   /* Prevent inheriting of borders on ColumnSetFrames since they are now
      inherited by ColumnSetWrapper frame instead*/
   display: inherit !important;
-  columns: inherit;  //TODO: remove longhand properties if shorthand properties are included
+  columns: inherit;  //xxxNeerja remove longhand properties if shorthand properties are included
   column-count: inherit;
   column-width: inherit;
   column-gap: inherit;
   column-rule: inherit;
   column-rule-color: inherit;
   column-rule-style: inherit;
   column-rule-width: inherit;
   column-fill: inherit;