diff options
author | Ben Murdoch <benm@google.com> | 2011-05-24 11:24:40 +0100 |
---|---|---|
committer | Ben Murdoch <benm@google.com> | 2011-06-02 09:53:15 +0100 |
commit | 81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch) | |
tree | 7a9e5ed86ff429fd347a25153107221543909b19 /Source/WebCore/inspector/InspectorStyleSheet.cpp | |
parent | 94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff) | |
download | external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.zip external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.gz external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.bz2 |
Merge WebKit at r80534: Intial merge by Git
Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61
Diffstat (limited to 'Source/WebCore/inspector/InspectorStyleSheet.cpp')
-rw-r--r-- | Source/WebCore/inspector/InspectorStyleSheet.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/Source/WebCore/inspector/InspectorStyleSheet.cpp b/Source/WebCore/inspector/InspectorStyleSheet.cpp index 4af0371..45e6e43 100644 --- a/Source/WebCore/inspector/InspectorStyleSheet.cpp +++ b/Source/WebCore/inspector/InspectorStyleSheet.cpp @@ -1131,7 +1131,7 @@ InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle(const Strin void InspectorStyleSheetForInlineStyle::didModifyElementAttribute() { - String newStyleText = m_element->getAttribute("style"); + String newStyleText = elementStyleText(); bool shouldDropSourceData = false; if (m_element->isStyledElement() && m_element->style() != m_inspectorStyle->cssStyle()) { m_inspectorStyle = InspectorStyle::create(InspectorCSSId(id(), 0), inlineStyle(), this); @@ -1168,6 +1168,13 @@ Document* InspectorStyleSheetForInlineStyle::ownerDocument() const bool InspectorStyleSheetForInlineStyle::ensureParsedDataReady() { + // The "style" property value can get changed indirectly, e.g. via element.style.borderWidth = "2px". + const String& currentStyleText = elementStyleText(); + if (m_styleText != currentStyleText) { + m_ruleSourceData.clear(); + m_styleText = currentStyleText; + } + if (m_ruleSourceData) return true; @@ -1192,6 +1199,11 @@ CSSStyleDeclaration* InspectorStyleSheetForInlineStyle::inlineStyle() const return m_element->style(); } +const String& InspectorStyleSheetForInlineStyle::elementStyleText() const +{ + return m_element->getAttribute("style").string(); +} + bool InspectorStyleSheetForInlineStyle::getStyleAttributeRanges(RefPtr<CSSStyleSourceData>* result) { if (!m_element->isStyledElement()) |