diff --git a/dom/svg/SVGGeometryElement.cpp b/dom/svg/SVGGeometryElement.cpp index e5c57c3f771c..5f92563b4b33 100644 --- a/dom/svg/SVGGeometryElement.cpp +++ b/dom/svg/SVGGeometryElement.cpp @@ -19,6 +19,7 @@ #include "mozilla/dom/SVGLengthBinding.h" #include "mozilla/gfx/2D.h" #include "mozilla/RefPtr.h" +#include "mozilla/StaticPrefs_layout.h" #include "mozilla/SVGContentUtils.h" using namespace mozilla::gfx; diff --git a/dom/svg/SVGPathElement.cpp b/dom/svg/SVGPathElement.cpp index 81c333a6f3de..b3fb7af260dc 100644 --- a/dom/svg/SVGPathElement.cpp +++ b/dom/svg/SVGPathElement.cpp @@ -21,6 +21,7 @@ #include "mozilla/dom/SVGPathElementBinding.h" #include "mozilla/gfx/2D.h" #include "mozilla/RefPtr.h" +#include "mozilla/StaticPrefs_layout.h" #include "mozilla/SVGContentUtils.h" NS_IMPL_NS_NEW_SVG_ELEMENT(Path) diff --git a/gfx/layers/wr/OMTAController.cpp b/gfx/layers/wr/OMTAController.cpp index a928b2a15ae1..527ec881f6a6 100644 --- a/gfx/layers/wr/OMTAController.cpp +++ b/gfx/layers/wr/OMTAController.cpp @@ -8,6 +8,7 @@ #include "mozilla/layers/CompositorBridgeParent.h" #include "mozilla/layers/CompositorThread.h" +#include "mozilla/StaticPrefs_layout.h" namespace mozilla { namespace layers { diff --git a/gfx/src/nsDeviceContext.cpp b/gfx/src/nsDeviceContext.cpp index 97cc50c6d325..78ee8b034e35 100644 --- a/gfx/src/nsDeviceContext.cpp +++ b/gfx/src/nsDeviceContext.cpp @@ -15,13 +15,14 @@ #include "mozilla/gfx/PrintTarget.h" #include "mozilla/Preferences.h" // for Preferences #include "mozilla/Services.h" // for GetObserverService -#include "mozilla/mozalloc.h" // for operator new -#include "nsCRT.h" // for nsCRT -#include "nsDebug.h" // for NS_ASSERTION, etc -#include "nsFont.h" // for nsFont -#include "nsFontCache.h" // for nsFontCache -#include "nsFontMetrics.h" // for nsFontMetrics -#include "nsAtom.h" // for nsAtom, NS_Atomize +#include "mozilla/StaticPrefs_layout.h" +#include "mozilla/mozalloc.h" // for operator new +#include "nsCRT.h" // for nsCRT +#include "nsDebug.h" // for NS_ASSERTION, etc +#include "nsFont.h" // for nsFont +#include "nsFontCache.h" // for nsFontCache +#include "nsFontMetrics.h" // for nsFontMetrics +#include "nsAtom.h" // for nsAtom, NS_Atomize #include "nsID.h" #include "nsIDeviceContextSpec.h" // for nsIDeviceContextSpec #include "nsLanguageAtomService.h" // for nsLanguageAtomService diff --git a/layout/generic/ScrollSnap.cpp b/layout/generic/ScrollSnap.cpp index b400a62689fd..8efbaa00118a 100644 --- a/layout/generic/ScrollSnap.cpp +++ b/layout/generic/ScrollSnap.cpp @@ -14,6 +14,7 @@ #include "nsLayoutUtils.h" #include "nsPresContext.h" #include "nsTArray.h" +#include "mozilla/StaticPrefs_layout.h" namespace mozilla { diff --git a/layout/generic/nsFlexContainerFrame.cpp b/layout/generic/nsFlexContainerFrame.cpp index 400d33889212..3e14022f0ee2 100644 --- a/layout/generic/nsFlexContainerFrame.cpp +++ b/layout/generic/nsFlexContainerFrame.cpp @@ -16,6 +16,7 @@ #include "mozilla/FloatingPoint.h" #include "mozilla/Logging.h" #include "mozilla/PresShell.h" +#include "mozilla/StaticPrefs_layout.h" #include "mozilla/WritingModes.h" #include "nsBlockFrame.h" #include "nsContentUtils.h" diff --git a/layout/painting/RetainedDisplayListBuilder.cpp b/layout/painting/RetainedDisplayListBuilder.cpp index 5e4a7682db7b..a1cf61cd558b 100644 --- a/layout/painting/RetainedDisplayListBuilder.cpp +++ b/layout/painting/RetainedDisplayListBuilder.cpp @@ -71,6 +71,10 @@ namespace mozilla { +RetainedDisplayListData::RetainedDisplayListData() + : mModifiedFrameLimit( + StaticPrefs::layout_display_list_rebuild_frame_limit()) {} + void RetainedDisplayListData::AddModifiedFrame(nsIFrame* aFrame) { MOZ_ASSERT(!aFrame->IsFrameModified()); Flags(aFrame) += RetainedDisplayListData::FrameFlag::Modified; diff --git a/layout/painting/RetainedDisplayListBuilder.h b/layout/painting/RetainedDisplayListBuilder.h index 4cbd58d63571..1b22bfc06d55 100644 --- a/layout/painting/RetainedDisplayListBuilder.h +++ b/layout/painting/RetainedDisplayListBuilder.h @@ -26,10 +26,7 @@ struct RetainedDisplayListData { enum class FrameFlag : uint8_t { Modified, HasProps, HadWillChange }; using FrameFlags = mozilla::EnumSet; - RetainedDisplayListData() : mModifiedFrameCount(0) { - mModifiedFrameLimit = - StaticPrefs::layout_display_list_rebuild_frame_limit(); - } + RetainedDisplayListData(); /** * Adds the frame to modified frames list. @@ -86,8 +83,8 @@ struct RetainedDisplayListData { private: nsTHashMap, FrameFlags> mFrames; - uint32_t mModifiedFrameCount; - uint32_t mModifiedFrameLimit; + uint32_t mModifiedFrameCount = 0; + uint32_t mModifiedFrameLimit; // initialized to a pref value in constructor }; enum class PartialUpdateResult { Failed, NoChange, Updated }; diff --git a/layout/style/nsCSSPseudoElements.h b/layout/style/nsCSSPseudoElements.h index 244810943a1f..dcfdd9768bb9 100644 --- a/layout/style/nsCSSPseudoElements.h +++ b/layout/style/nsCSSPseudoElements.h @@ -13,7 +13,6 @@ #include "mozilla/CSSEnabledState.h" #include "mozilla/Compiler.h" #include "mozilla/PseudoStyleType.h" -#include "mozilla/StaticPrefs_layout.h" // Is this pseudo-element a CSS2 pseudo-element that can be specified // with the single colon syntax (in addition to the double-colon syntax, diff --git a/layout/style/nsStyleStruct.cpp b/layout/style/nsStyleStruct.cpp index 1dcfc3600b15..3e3b480babc8 100644 --- a/layout/style/nsStyleStruct.cpp +++ b/layout/style/nsStyleStruct.cpp @@ -3311,6 +3311,15 @@ nsChangeHint nsStyleUIReset::CalcDifference( return hint; } +StyleScrollbarWidth nsStyleUIReset::ScrollbarWidth() const { + if (MOZ_UNLIKELY(StaticPrefs::layout_css_scrollbar_width_thin_disabled())) { + if (mScrollbarWidth == StyleScrollbarWidth::Thin) { + return StyleScrollbarWidth::Auto; + } + } + return mScrollbarWidth; +} + //----------------------- // nsStyleEffects // diff --git a/layout/style/nsStyleStruct.h b/layout/style/nsStyleStruct.h index 366ad1f281e6..a9f024e664f6 100644 --- a/layout/style/nsStyleStruct.h +++ b/layout/style/nsStyleStruct.h @@ -16,7 +16,6 @@ #include "mozilla/Attributes.h" #include "mozilla/Maybe.h" #include "mozilla/ServoStyleConstsInlines.h" -#include "mozilla/StaticPrefs_layout.h" #include "mozilla/UniquePtr.h" #include "nsColor.h" #include "nsCoord.h" @@ -1795,15 +1794,7 @@ struct MOZ_NEEDS_MEMMOVABLE_MEMBERS nsStyleUIReset { public: mozilla::StyleUserSelect ComputedUserSelect() const { return mUserSelect; } - mozilla::StyleScrollbarWidth ScrollbarWidth() const { - if (MOZ_UNLIKELY( - mozilla::StaticPrefs::layout_css_scrollbar_width_thin_disabled())) { - if (mScrollbarWidth == mozilla::StyleScrollbarWidth::Thin) { - return mozilla::StyleScrollbarWidth::Auto; - } - } - return mScrollbarWidth; - } + mozilla::StyleScrollbarWidth ScrollbarWidth() const; nsCSSPropertyID GetTransitionProperty(uint32_t aIndex) const { return mTransitions[aIndex % mTransitionPropertyCount].GetProperty(); diff --git a/layout/tables/nsTableCellFrame.cpp b/layout/tables/nsTableCellFrame.cpp index e84598ecca92..375a847b31df 100644 --- a/layout/tables/nsTableCellFrame.cpp +++ b/layout/tables/nsTableCellFrame.cpp @@ -9,6 +9,7 @@ #include "gfxUtils.h" #include "mozilla/ComputedStyle.h" #include "mozilla/PresShell.h" +#include "mozilla/StaticPrefs_layout.h" #include "mozilla/gfx/2D.h" #include "mozilla/gfx/Helpers.h" #include "nsTableFrame.h" diff --git a/layout/tables/nsTableColFrame.cpp b/layout/tables/nsTableColFrame.cpp index a289b1e269e9..92c98deba7c3 100644 --- a/layout/tables/nsTableColFrame.cpp +++ b/layout/tables/nsTableColFrame.cpp @@ -13,6 +13,7 @@ #include "nsIContent.h" #include "mozilla/ComputedStyle.h" #include "mozilla/PresShell.h" +#include "mozilla/StaticPrefs_layout.h" using namespace mozilla; diff --git a/layout/tables/nsTableRowFrame.cpp b/layout/tables/nsTableRowFrame.cpp index 5a428ab486ac..b6e212efc5e9 100644 --- a/layout/tables/nsTableRowFrame.cpp +++ b/layout/tables/nsTableRowFrame.cpp @@ -10,6 +10,7 @@ #include "nsTableRowGroupFrame.h" #include "nsPresContext.h" #include "mozilla/ComputedStyle.h" +#include "mozilla/StaticPrefs_layout.h" #include "nsStyleConsts.h" #include "nsGkAtoms.h" #include "nsIContent.h" diff --git a/layout/tables/nsTableRowGroupFrame.cpp b/layout/tables/nsTableRowGroupFrame.cpp index 6252a7eb4d9b..df6872d35f50 100644 --- a/layout/tables/nsTableRowGroupFrame.cpp +++ b/layout/tables/nsTableRowGroupFrame.cpp @@ -6,6 +6,7 @@ #include "mozilla/ComputedStyle.h" #include "mozilla/PresShell.h" +#include "mozilla/StaticPrefs_layout.h" #include "nsCOMPtr.h" #include "nsTableRowFrame.h" diff --git a/widget/ThemeColors.cpp b/widget/ThemeColors.cpp index aaddd550798f..ead5042229e7 100644 --- a/widget/ThemeColors.cpp +++ b/widget/ThemeColors.cpp @@ -6,6 +6,7 @@ #include "ThemeColors.h" #include "mozilla/RelativeLuminanceUtils.h" +#include "mozilla/StaticPrefs_layout.h" #include "mozilla/StaticPrefs_widget.h" #include "ThemeDrawing.h" #include "nsNativeTheme.h" diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp index 8d4f6e0d6072..2cc19b5fba72 100644 --- a/widget/gtk/nsWindow.cpp +++ b/widget/gtk/nsWindow.cpp @@ -54,6 +54,7 @@ #include "mozilla/ProfilerLabels.h" #include "mozilla/ScopeExit.h" #include "mozilla/StaticPrefs_apz.h" +#include "mozilla/StaticPrefs_layout.h" #include "mozilla/StaticPrefs_mozilla.h" #include "mozilla/StaticPrefs_ui.h" #include "mozilla/StaticPrefs_widget.h" diff --git a/widget/nsXPLookAndFeel.cpp b/widget/nsXPLookAndFeel.cpp index a74fdda891c7..1a635fa38071 100644 --- a/widget/nsXPLookAndFeel.cpp +++ b/widget/nsXPLookAndFeel.cpp @@ -26,6 +26,7 @@ #include "mozilla/ServoCSSParser.h" #include "mozilla/StaticPrefs_browser.h" #include "mozilla/StaticPrefs_editor.h" +#include "mozilla/StaticPrefs_layout.h" #include "mozilla/StaticPrefs_ui.h" #include "mozilla/StaticPrefs_widget.h" #include "mozilla/dom/Document.h"