Reviewed by Ken.
authordarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 7 Feb 2005 16:26:19 +0000 (16:26 +0000)
committerdarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 7 Feb 2005 16:26:19 +0000 (16:26 +0000)
        - fixed <rdar://problem/3994164> setting a new style attribute with setAttribute("style") doesn't blow away the old style

        * khtml/css/css_valueimpl.h: Renamed parseProperty to parseDeclaration, since it's used to parse
        an entire style declaration, not a single property.
        * khtml/css/css_valueimpl.cpp: (DOM::CSSMutableStyleDeclarationImpl::parseDeclaration): Renamed,
        and added code to clear m_values.
        * khtml/html/html_elementimpl.cpp: (HTMLElementImpl::parseHTMLAttribute): Call function by its
        new name, and remove some unnecessary comments.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@8535 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog-2005-08-23
WebCore/khtml/css/css_valueimpl.cpp
WebCore/khtml/css/css_valueimpl.h
WebCore/khtml/html/html_elementimpl.cpp

index 7bb08c70c3c2239ed769a43e8c60a9dd3337bfef..66e2ad3ca78f640fe29980e2721bca459c0aed22 100644 (file)
@@ -1,3 +1,16 @@
+2005-02-06  Darin Adler  <darin@apple.com>
+
+        Reviewed by Ken.
+
+        - fixed <rdar://problem/3994164> setting a new style attribute with setAttribute("style") doesn't blow away the old style
+
+        * khtml/css/css_valueimpl.h: Renamed parseProperty to parseDeclaration, since it's used to parse
+        an entire style declaration, not a single property.
+        * khtml/css/css_valueimpl.cpp: (DOM::CSSMutableStyleDeclarationImpl::parseDeclaration): Renamed,
+        and added code to clear m_values.
+        * khtml/html/html_elementimpl.cpp: (HTMLElementImpl::parseHTMLAttribute): Call function by its
+        new name, and remove some unnecessary comments.
+
 2005-02-06  Darin Adler  <darin@apple.com>
 
         Reviewed by Maciej.
index 5d2c636b0d9d8f9667a10a241f4dc283ac4dd76f..eddb8b37b14047f0d59a8521209d5af5f8cb008c 100644 (file)
@@ -350,10 +350,11 @@ void CSSMutableStyleDeclarationImpl::setImageProperty(int propertyId, const DOMS
     setChanged();
 }
 
-void CSSMutableStyleDeclarationImpl::parseProperty(const DOMString &propertyString)
+void CSSMutableStyleDeclarationImpl::parseDeclaration(const DOMString &styleDeclaration)
 {
+    m_values.clear();
     CSSParser parser(strictParsing);
-    parser.parseDeclaration(this, propertyString);
+    parser.parseDeclaration(this, styleDeclaration);
     setChanged();
 }
 
index 726a469050815f5924d3734aa711987929c99e6a..eab8849a00dad09c810e47d46fb0e791f1e6941f 100644 (file)
@@ -473,7 +473,8 @@ public:
     void setStringProperty(int propertyId, const DOMString &value, CSSPrimitiveValue::UnitTypes, bool important = false); // parsed string value
     void setImageProperty(int propertyId, const DOMString &URL, bool important = false);
  
-    void parseProperty(const DOMString &propertyString);
+    // The following parses an entire new style declaration.
+    void parseDeclaration(const DOMString &styleDeclaration);
 
     // Besides adding the properties, this also removes any existing properties with these IDs.
     // It does no notification since it's called by the parser.
index d6a39e534f37807df91ad6c13c40d07113a6c83c..a59719f633ee2bbc13779d1c8c2b4379d84e92c6 100644 (file)
@@ -397,11 +397,8 @@ void HTMLElementImpl::parseHTMLAttribute(HTMLAttributeImpl *attr)
         setContentEditable(attr);
         break;
     case ATTR_STYLE:
-        // ### we need to remove old style info in case there was any!
-        // ### the inline sheet ay contain more than 1 property!
-        // stylesheet info
         setHasStyle();
-        getInlineStyleDecl()->parseProperty(attr->value());
+        getInlineStyleDecl()->parseDeclaration(attr->value());
         setChanged();
         break;
     case ATTR_TABINDEX: