Index: Source/core/rendering/RenderMenuList.cpp |
diff --git a/Source/core/rendering/RenderMenuList.cpp b/Source/core/rendering/RenderMenuList.cpp |
index 4dd19ec4884a0c1cb57716b619eab0d335863a7f..ddc0196e39900f728d19f4ed185256c77607bfc8 100644 |
--- a/Source/core/rendering/RenderMenuList.cpp |
+++ b/Source/core/rendering/RenderMenuList.cpp |
@@ -100,29 +100,29 @@ void RenderMenuList::createInnerBlock() |
void RenderMenuList::adjustInnerStyle() |
{ |
- RenderStyle* innerStyle = m_innerBlock->style(); |
- innerStyle->setFlexGrow(1); |
- innerStyle->setFlexShrink(1); |
+ RenderStyle& innerStyle = m_innerBlock->mutableStyleRef(); |
+ innerStyle.setFlexGrow(1); |
+ innerStyle.setFlexShrink(1); |
// Use margin:auto instead of align-items:center to get safe centering, i.e. |
// when the content overflows, treat it the same as align-items: flex-start. |
// But we only do that for the cases where html.css would otherwise use center. |
if (style()->alignItems() == ItemPositionCenter) { |
- innerStyle->setMarginTop(Length()); |
- innerStyle->setMarginBottom(Length()); |
- innerStyle->setAlignSelf(ItemPositionFlexStart); |
+ innerStyle.setMarginTop(Length()); |
+ innerStyle.setMarginBottom(Length()); |
+ innerStyle.setAlignSelf(ItemPositionFlexStart); |
} |
- innerStyle->setPaddingLeft(Length(LayoutTheme::theme().popupInternalPaddingLeft(style()), Fixed)); |
- innerStyle->setPaddingRight(Length(LayoutTheme::theme().popupInternalPaddingRight(style()), Fixed)); |
- innerStyle->setPaddingTop(Length(LayoutTheme::theme().popupInternalPaddingTop(style()), Fixed)); |
- innerStyle->setPaddingBottom(Length(LayoutTheme::theme().popupInternalPaddingBottom(style()), Fixed)); |
+ innerStyle.setPaddingLeft(Length(LayoutTheme::theme().popupInternalPaddingLeft(styleRef()), Fixed)); |
+ innerStyle.setPaddingRight(Length(LayoutTheme::theme().popupInternalPaddingRight(styleRef()), Fixed)); |
+ innerStyle.setPaddingTop(Length(LayoutTheme::theme().popupInternalPaddingTop(styleRef()), Fixed)); |
+ innerStyle.setPaddingBottom(Length(LayoutTheme::theme().popupInternalPaddingBottom(styleRef()), Fixed)); |
if (m_optionStyle) { |
- if ((m_optionStyle->direction() != innerStyle->direction() || m_optionStyle->unicodeBidi() != innerStyle->unicodeBidi())) |
+ if ((m_optionStyle->direction() != innerStyle.direction() || m_optionStyle->unicodeBidi() != innerStyle.unicodeBidi())) |
m_innerBlock->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalidation(); |
- innerStyle->setTextAlign(style()->isLeftToRightDirection() ? LEFT : RIGHT); |
- innerStyle->setDirection(m_optionStyle->direction()); |
- innerStyle->setUnicodeBidi(m_optionStyle->unicodeBidi()); |
+ innerStyle.setTextAlign(style()->isLeftToRightDirection() ? LEFT : RIGHT); |
+ innerStyle.setDirection(m_optionStyle->direction()); |
+ innerStyle.setUnicodeBidi(m_optionStyle->unicodeBidi()); |
} |
} |
@@ -323,7 +323,7 @@ LayoutRect RenderMenuList::controlClipRect(const LayoutPoint& additionalOffset) |
void RenderMenuList::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const |
{ |
- maxLogicalWidth = std::max(m_optionsWidth, LayoutTheme::theme().minimumMenuListSize(style())) + m_innerBlock->paddingLeft() + m_innerBlock->paddingRight(); |
+ maxLogicalWidth = std::max(m_optionsWidth, LayoutTheme::theme().minimumMenuListSize(styleRef())) + m_innerBlock->paddingLeft() + m_innerBlock->paddingRight(); |
if (!style()->width().isPercent()) |
minLogicalWidth = maxLogicalWidth; |
} |