Index: Source/core/editing/EditingStyle.cpp |
diff --git a/Source/core/editing/EditingStyle.cpp b/Source/core/editing/EditingStyle.cpp |
index 41ce59d22ea33931048d8e7e57ce9137aca1113a..cb4eb97c45778337f7fc521bb38ef7d2c541c205 100644 |
--- a/Source/core/editing/EditingStyle.cpp |
+++ b/Source/core/editing/EditingStyle.cpp |
@@ -578,9 +578,9 @@ void EditingStyle::clear() |
m_fontSizeDelta = NoFontDelta; |
} |
-PassRefPtr<EditingStyle> EditingStyle::copy() const |
+PassRefPtrWillBeRawPtr<EditingStyle> EditingStyle::copy() const |
{ |
- RefPtr<EditingStyle> copy = EditingStyle::create(); |
+ RefPtrWillBeRawPtr<EditingStyle> copy = EditingStyle::create(); |
if (m_mutableStyle) |
copy->m_mutableStyle = m_mutableStyle->mutableCopy(); |
copy->m_shouldUseFixedDefaultFontSize = m_shouldUseFixedDefaultFontSize; |
@@ -588,9 +588,9 @@ PassRefPtr<EditingStyle> EditingStyle::copy() const |
return copy; |
} |
-PassRefPtr<EditingStyle> EditingStyle::extractAndRemoveBlockProperties() |
+PassRefPtrWillBeRawPtr<EditingStyle> EditingStyle::extractAndRemoveBlockProperties() |
{ |
- RefPtr<EditingStyle> blockProperties = EditingStyle::create(); |
+ RefPtrWillBeRawPtr<EditingStyle> blockProperties = EditingStyle::create(); |
if (!m_mutableStyle) |
return blockProperties; |
@@ -600,9 +600,9 @@ PassRefPtr<EditingStyle> EditingStyle::extractAndRemoveBlockProperties() |
return blockProperties; |
} |
-PassRefPtr<EditingStyle> EditingStyle::extractAndRemoveTextDirection() |
+PassRefPtrWillBeRawPtr<EditingStyle> EditingStyle::extractAndRemoveTextDirection() |
{ |
- RefPtr<EditingStyle> textDirection = EditingStyle::create(); |
+ RefPtrWillBeRawPtr<EditingStyle> textDirection = EditingStyle::create(); |
textDirection->m_mutableStyle = MutableStylePropertySet::create(); |
textDirection->m_mutableStyle->setProperty(CSSPropertyUnicodeBidi, CSSValueEmbed, m_mutableStyle->propertyIsImportant(CSSPropertyUnicodeBidi)); |
textDirection->m_mutableStyle->setProperty(CSSPropertyDirection, m_mutableStyle->getPropertyValue(CSSPropertyDirection), |
@@ -944,7 +944,7 @@ void EditingStyle::prepareToApplyAt(const Position& position, ShouldPreserveWrit |
// ReplaceSelectionCommand::handleStyleSpans() requires that this function only removes the editing style. |
// If this function was modified in the future to delete all redundant properties, then add a boolean value to indicate |
// which one of editingStyleAtPosition or computedStyle is called. |
- RefPtr<EditingStyle> editingStyleAtPosition = EditingStyle::create(position, EditingPropertiesInEffect); |
+ RefPtrWillBeRawPtr<EditingStyle> editingStyleAtPosition = EditingStyle::create(position, EditingPropertiesInEffect); |
StylePropertySet* styleAtPosition = editingStyleAtPosition->m_mutableStyle.get(); |
RefPtrWillBeRawPtr<CSSValue> unicodeBidi = nullptr; |
@@ -977,7 +977,7 @@ void EditingStyle::mergeTypingStyle(Document* document) |
{ |
ASSERT(document); |
- RefPtr<EditingStyle> typingStyle = document->frame()->selection().typingStyle(); |
+ RefPtrWillBeRawPtr<EditingStyle> typingStyle = document->frame()->selection().typingStyle(); |
if (!typingStyle || typingStyle == this) |
return; |
@@ -1029,7 +1029,7 @@ static PassRefPtrWillBeRawPtr<MutableStylePropertySet> extractEditingProperties( |
void EditingStyle::mergeInlineAndImplicitStyleOfElement(Element* element, CSSPropertyOverrideMode mode, PropertiesToInclude propertiesToInclude) |
{ |
- RefPtr<EditingStyle> styleFromRules = EditingStyle::create(); |
+ RefPtrWillBeRawPtr<EditingStyle> styleFromRules = EditingStyle::create(); |
styleFromRules->mergeStyleFromRulesForSerialization(element); |
styleFromRules->m_mutableStyle = extractEditingProperties(styleFromRules->m_mutableStyle.get(), propertiesToInclude); |
mergeStyle(styleFromRules->m_mutableStyle.get(), mode); |
@@ -1051,9 +1051,9 @@ void EditingStyle::mergeInlineAndImplicitStyleOfElement(Element* element, CSSPro |
} |
} |
-PassRefPtr<EditingStyle> EditingStyle::wrappingStyleForSerialization(Node* context, bool shouldAnnotate) |
+PassRefPtrWillBeRawPtr<EditingStyle> EditingStyle::wrappingStyleForSerialization(Node* context, bool shouldAnnotate) |
{ |
- RefPtr<EditingStyle> wrappingStyle; |
+ RefPtrWillBeRawPtr<EditingStyle> wrappingStyle = nullptr; |
if (shouldAnnotate) { |
wrappingStyle = EditingStyle::create(context, EditingStyle::EditingPropertiesInEffect); |
@@ -1203,7 +1203,7 @@ void EditingStyle::removeStyleFromRulesAndContext(Element* element, Node* contex |
m_mutableStyle = getPropertiesNotIn(m_mutableStyle.get(), styleFromMatchedRules->ensureCSSStyleDeclaration()); |
// 2. Remove style present in context and not overriden by matched rules. |
- RefPtr<EditingStyle> computedStyle = EditingStyle::create(context, EditingPropertiesInEffect); |
+ RefPtrWillBeRawPtr<EditingStyle> computedStyle = EditingStyle::create(context, EditingPropertiesInEffect); |
if (computedStyle->m_mutableStyle) { |
if (!computedStyle->m_mutableStyle->getPropertyCSSValue(CSSPropertyBackgroundColor)) |
computedStyle->m_mutableStyle->setProperty(CSSPropertyBackgroundColor, CSSValueTransparent); |
@@ -1249,7 +1249,7 @@ int EditingStyle::legacyFontSize(Document* document) const |
m_shouldUseFixedDefaultFontSize, AlwaysUseLegacyFontSize); |
} |
-PassRefPtr<EditingStyle> EditingStyle::styleAtSelectionStart(const VisibleSelection& selection, bool shouldUseBackgroundColorInEffect) |
+PassRefPtrWillBeRawPtr<EditingStyle> EditingStyle::styleAtSelectionStart(const VisibleSelection& selection, bool shouldUseBackgroundColorInEffect) |
{ |
if (selection.isNone()) |
return nullptr; |
@@ -1268,7 +1268,7 @@ PassRefPtr<EditingStyle> EditingStyle::styleAtSelectionStart(const VisibleSelect |
if (!element) |
return nullptr; |
- RefPtr<EditingStyle> style = EditingStyle::create(element, EditingStyle::AllProperties); |
+ RefPtrWillBeRawPtr<EditingStyle> style = EditingStyle::create(element, EditingStyle::AllProperties); |
style->mergeTypingStyle(&element->document()); |
// If background color is transparent, traverse parent nodes until we hit a different value or document root |
@@ -1369,6 +1369,11 @@ WritingDirection EditingStyle::textDirectionForSelection(const VisibleSelection& |
return foundDirection; |
} |
+void EditingStyle::trace(Visitor* visitor) |
+{ |
+ visitor->trace(m_mutableStyle); |
+} |
+ |
static void reconcileTextDecorationProperties(MutableStylePropertySet* style) |
{ |
RefPtrWillBeRawPtr<CSSValue> textDecorationsInEffect = style->getPropertyCSSValue(CSSPropertyWebkitTextDecorationsInEffect); |