Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(802)

Unified Diff: Source/core/editing/EditingStyle.h

Issue 299353004: Oilpan: move editing objects to the heap. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Make test wrapper class finalized Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/editing/EditCommand.cpp ('k') | Source/core/editing/EditingStyle.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/editing/EditingStyle.h
diff --git a/Source/core/editing/EditingStyle.h b/Source/core/editing/EditingStyle.h
index 0fe207156cca04249b406bebbe0428cea6631846..a97f1dfea482f73540843be9dcfb83f1436aff2d 100644
--- a/Source/core/editing/EditingStyle.h
+++ b/Source/core/editing/EditingStyle.h
@@ -60,7 +60,7 @@ class RenderStyle;
class StylePropertySet;
class VisibleSelection;
-class EditingStyle : public RefCounted<EditingStyle> {
+class EditingStyle FINAL : public RefCountedWillBeGarbageCollectedFinalized<EditingStyle> {
public:
enum PropertiesToInclude { AllProperties, OnlyEditingInheritableProperties, EditingPropertiesInEffect };
@@ -68,29 +68,29 @@ public:
enum ShouldExtractMatchingStyle { ExtractMatchingStyle, DoNotExtractMatchingStyle };
static float NoFontDelta;
- static PassRefPtr<EditingStyle> create()
+ static PassRefPtrWillBeRawPtr<EditingStyle> create()
{
- return adoptRef(new EditingStyle());
+ return adoptRefWillBeNoop(new EditingStyle());
}
- static PassRefPtr<EditingStyle> create(Node* node, PropertiesToInclude propertiesToInclude = OnlyEditingInheritableProperties)
+ static PassRefPtrWillBeRawPtr<EditingStyle> create(Node* node, PropertiesToInclude propertiesToInclude = OnlyEditingInheritableProperties)
{
- return adoptRef(new EditingStyle(node, propertiesToInclude));
+ return adoptRefWillBeNoop(new EditingStyle(node, propertiesToInclude));
}
- static PassRefPtr<EditingStyle> create(const Position& position, PropertiesToInclude propertiesToInclude = OnlyEditingInheritableProperties)
+ static PassRefPtrWillBeRawPtr<EditingStyle> create(const Position& position, PropertiesToInclude propertiesToInclude = OnlyEditingInheritableProperties)
{
- return adoptRef(new EditingStyle(position, propertiesToInclude));
+ return adoptRefWillBeNoop(new EditingStyle(position, propertiesToInclude));
}
- static PassRefPtr<EditingStyle> create(const StylePropertySet* style)
+ static PassRefPtrWillBeRawPtr<EditingStyle> create(const StylePropertySet* style)
{
- return adoptRef(new EditingStyle(style));
+ return adoptRefWillBeNoop(new EditingStyle(style));
}
- static PassRefPtr<EditingStyle> create(CSSPropertyID propertyID, const String& value)
+ static PassRefPtrWillBeRawPtr<EditingStyle> create(CSSPropertyID propertyID, const String& value)
{
- return adoptRef(new EditingStyle(propertyID, value));
+ return adoptRefWillBeNoop(new EditingStyle(propertyID, value));
}
~EditingStyle();
@@ -100,9 +100,9 @@ public:
bool isEmpty() const;
void overrideWithStyle(const StylePropertySet*);
void clear();
- PassRefPtr<EditingStyle> copy() const;
- PassRefPtr<EditingStyle> extractAndRemoveBlockProperties();
- PassRefPtr<EditingStyle> extractAndRemoveTextDirection();
+ PassRefPtrWillBeRawPtr<EditingStyle> copy() const;
+ PassRefPtrWillBeRawPtr<EditingStyle> extractAndRemoveBlockProperties();
+ PassRefPtrWillBeRawPtr<EditingStyle> extractAndRemoveTextDirection();
void removeBlockProperties();
void removeStyleAddedByNode(Node*);
void removeStyleConflictingWithStyleOfNode(Node*);
@@ -127,7 +127,7 @@ public:
void mergeTypingStyle(Document*);
enum CSSPropertyOverrideMode { OverrideValues, DoNotOverrideValues };
void mergeInlineStyleOfElement(Element*, CSSPropertyOverrideMode, PropertiesToInclude = AllProperties);
- static PassRefPtr<EditingStyle> wrappingStyleForSerialization(Node* context, bool shouldAnnotate);
+ static PassRefPtrWillBeRawPtr<EditingStyle> wrappingStyleForSerialization(Node* context, bool shouldAnnotate);
void mergeStyleFromRules(Element*);
void mergeStyleFromRulesForSerialization(Element*);
void removeStyleFromRulesAndContext(Element*, Node* context);
@@ -138,8 +138,11 @@ public:
float fontSizeDelta() const { return m_fontSizeDelta; }
bool hasFontSizeDelta() const { return m_fontSizeDelta != NoFontDelta; }
- static PassRefPtr<EditingStyle> styleAtSelectionStart(const VisibleSelection&, bool shouldUseBackgroundColorInEffect = false);
+ static PassRefPtrWillBeRawPtr<EditingStyle> styleAtSelectionStart(const VisibleSelection&, bool shouldUseBackgroundColorInEffect = false);
static WritingDirection textDirectionForSelection(const VisibleSelection&, EditingStyle* typingStyle, bool& hasNestedOrMultipleEmbeddings);
+
+ void trace(Visitor*);
+
private:
EditingStyle();
EditingStyle(Node*, PropertiesToInclude);
@@ -156,7 +159,7 @@ private:
void mergeInlineAndImplicitStyleOfElement(Element*, CSSPropertyOverrideMode, PropertiesToInclude);
void mergeStyle(const StylePropertySet*, CSSPropertyOverrideMode);
- RefPtrWillBePersistent<MutableStylePropertySet> m_mutableStyle;
+ RefPtrWillBeMember<MutableStylePropertySet> m_mutableStyle;
bool m_shouldUseFixedDefaultFontSize;
float m_fontSizeDelta;
« no previous file with comments | « Source/core/editing/EditCommand.cpp ('k') | Source/core/editing/EditingStyle.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698