summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/inspector/InspectorStyleSheet.cpp
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-05-24 11:24:40 +0100
committerBen Murdoch <benm@google.com>2011-06-02 09:53:15 +0100
commit81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch)
tree7a9e5ed86ff429fd347a25153107221543909b19 /Source/WebCore/inspector/InspectorStyleSheet.cpp
parent94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff)
downloadexternal_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.cpp14
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())