[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
kocienda
kocienda at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:01:18 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 380f787f8fbee9feb003a81452d9a735b9729a68
Author: kocienda <kocienda at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Oct 14 15:36:10 2003 +0000
Reviewed by Hyatt
* khtml/dom/dom_misc.h: Declared TristateFlag enum used to implement
inheritance behavior for inheritable attributes like designMode.
* khtml/dom/html_document.cpp:
(HTMLDocument::designMode): Added getter.
(HTMLDocument::setDesignMode): Added setter.
* khtml/dom/html_document.h: Added declarations for designMode getter and setter.
* khtml/dom/html_element.cpp:
(HTMLElement::isContentEditable): Added convenience.
(HTMLElement::contentEditable): Added getter.
(HTMLElement::setContentEditable): Added setter.
* khtml/dom/html_element.h: Added declarations for contentEditable accessors.
* khtml/ecma/kjs_html.cpp: Added js support for contentEditable and designMode.
(KJS::HTMLDocument::tryGet)
(KJS::HTMLDocument::putValue)
(KJS::HTMLElement::getValueProperty)
(KJS::HTMLElement::putValue)
* khtml/ecma/kjs_html.h:
(KJS::HTMLDocument::): Added DesignMode to attribuute enum.
(KJS::HTMLElement::): Added ContentEditable to attribute enum.
* khtml/html/html_documentimpl.cpp:
(HTMLDocumentImpl::designMode): Added getter.
(HTMLDocumentImpl::setDesignMode): Added setter.
* khtml/html/html_documentimpl.h: Declared designMode accessors.
* khtml/html/html_elementimpl.cpp:
(HTMLElementImpl::HTMLElementImpl):
(HTMLElementImpl::parseAttribute): Added support for contentEditable.
(HTMLElementImpl::isContentEditable): Added. Implements inheritance feature
for this attribute.
(HTMLElementImpl::contentEditable): Getter for contentEditable attribute.
(HTMLElementImpl::setContentEditable): Setter for contentEditable attribute.
* khtml/html/html_elementimpl.h:
* khtml/khtml_part.cpp:
(KHTMLPart::setEditMode): Added.
(KHTMLPart::editMode): Added. Implements inheritance behavior for
attribute.
(KHTMLPart::inEditMode): Helper that calls on editMode function.
(KHTMLPart::parentPart): Made const.
* khtml/khtml_part.h: Rolled in a couple of typo fixes. Added
declarations for the changes made in the implementation file.
* khtml/khtmlpart_p.h:
(KHTMLPartPrivate::KHTMLPartPrivate): Declared editMode flag.
Also added support for editMode flag in initializers and copy function.
* khtml/misc/htmlattrs.in: Added contentEditable as an attribute name.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5179 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 0897a13..958b3dc 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,51 @@
+2003-10-14 Ken Kocienda <kocienda at apple.com>
+
+ Reviewed by Hyatt
+
+ * khtml/dom/dom_misc.h: Declared TristateFlag enum used to implement
+ inheritance behavior for inheritable attributes like designMode.
+ * khtml/dom/html_document.cpp:
+ (HTMLDocument::designMode): Added getter.
+ (HTMLDocument::setDesignMode): Added setter.
+ * khtml/dom/html_document.h: Added declarations for designMode getter and setter.
+ * khtml/dom/html_element.cpp:
+ (HTMLElement::isContentEditable): Added convenience.
+ (HTMLElement::contentEditable): Added getter.
+ (HTMLElement::setContentEditable): Added setter.
+ * khtml/dom/html_element.h: Added declarations for contentEditable accessors.
+ * khtml/ecma/kjs_html.cpp: Added js support for contentEditable and designMode.
+ (KJS::HTMLDocument::tryGet)
+ (KJS::HTMLDocument::putValue)
+ (KJS::HTMLElement::getValueProperty)
+ (KJS::HTMLElement::putValue)
+ * khtml/ecma/kjs_html.h:
+ (KJS::HTMLDocument::): Added DesignMode to attribuute enum.
+ (KJS::HTMLElement::): Added ContentEditable to attribute enum.
+ * khtml/html/html_documentimpl.cpp:
+ (HTMLDocumentImpl::designMode): Added getter.
+ (HTMLDocumentImpl::setDesignMode): Added setter.
+ * khtml/html/html_documentimpl.h: Declared designMode accessors.
+ * khtml/html/html_elementimpl.cpp:
+ (HTMLElementImpl::HTMLElementImpl):
+ (HTMLElementImpl::parseAttribute): Added support for contentEditable.
+ (HTMLElementImpl::isContentEditable): Added. Implements inheritance feature
+ for this attribute.
+ (HTMLElementImpl::contentEditable): Getter for contentEditable attribute.
+ (HTMLElementImpl::setContentEditable): Setter for contentEditable attribute.
+ * khtml/html/html_elementimpl.h:
+ * khtml/khtml_part.cpp:
+ (KHTMLPart::setEditMode): Added.
+ (KHTMLPart::editMode): Added. Implements inheritance behavior for
+ attribute.
+ (KHTMLPart::inEditMode): Helper that calls on editMode function.
+ (KHTMLPart::parentPart): Made const.
+ * khtml/khtml_part.h: Rolled in a couple of typo fixes. Added
+ declarations for the changes made in the implementation file.
+ * khtml/khtmlpart_p.h:
+ (KHTMLPartPrivate::KHTMLPartPrivate): Declared editMode flag.
+ Also added support for editMode flag in initializers and copy function.
+ * khtml/misc/htmlattrs.in: Added contentEditable as an attribute name.
+
2003-10-13 David Hyatt <hyatt at apple.com>
Fix for a small-caps rendering error when used in conjunction with ::first-line. Always update
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 0897a13..958b3dc 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,51 @@
+2003-10-14 Ken Kocienda <kocienda at apple.com>
+
+ Reviewed by Hyatt
+
+ * khtml/dom/dom_misc.h: Declared TristateFlag enum used to implement
+ inheritance behavior for inheritable attributes like designMode.
+ * khtml/dom/html_document.cpp:
+ (HTMLDocument::designMode): Added getter.
+ (HTMLDocument::setDesignMode): Added setter.
+ * khtml/dom/html_document.h: Added declarations for designMode getter and setter.
+ * khtml/dom/html_element.cpp:
+ (HTMLElement::isContentEditable): Added convenience.
+ (HTMLElement::contentEditable): Added getter.
+ (HTMLElement::setContentEditable): Added setter.
+ * khtml/dom/html_element.h: Added declarations for contentEditable accessors.
+ * khtml/ecma/kjs_html.cpp: Added js support for contentEditable and designMode.
+ (KJS::HTMLDocument::tryGet)
+ (KJS::HTMLDocument::putValue)
+ (KJS::HTMLElement::getValueProperty)
+ (KJS::HTMLElement::putValue)
+ * khtml/ecma/kjs_html.h:
+ (KJS::HTMLDocument::): Added DesignMode to attribuute enum.
+ (KJS::HTMLElement::): Added ContentEditable to attribute enum.
+ * khtml/html/html_documentimpl.cpp:
+ (HTMLDocumentImpl::designMode): Added getter.
+ (HTMLDocumentImpl::setDesignMode): Added setter.
+ * khtml/html/html_documentimpl.h: Declared designMode accessors.
+ * khtml/html/html_elementimpl.cpp:
+ (HTMLElementImpl::HTMLElementImpl):
+ (HTMLElementImpl::parseAttribute): Added support for contentEditable.
+ (HTMLElementImpl::isContentEditable): Added. Implements inheritance feature
+ for this attribute.
+ (HTMLElementImpl::contentEditable): Getter for contentEditable attribute.
+ (HTMLElementImpl::setContentEditable): Setter for contentEditable attribute.
+ * khtml/html/html_elementimpl.h:
+ * khtml/khtml_part.cpp:
+ (KHTMLPart::setEditMode): Added.
+ (KHTMLPart::editMode): Added. Implements inheritance behavior for
+ attribute.
+ (KHTMLPart::inEditMode): Helper that calls on editMode function.
+ (KHTMLPart::parentPart): Made const.
+ * khtml/khtml_part.h: Rolled in a couple of typo fixes. Added
+ declarations for the changes made in the implementation file.
+ * khtml/khtmlpart_p.h:
+ (KHTMLPartPrivate::KHTMLPartPrivate): Declared editMode flag.
+ Also added support for editMode flag in initializers and copy function.
+ * khtml/misc/htmlattrs.in: Added contentEditable as an attribute name.
+
2003-10-13 David Hyatt <hyatt at apple.com>
Fix for a small-caps rendering error when used in conjunction with ::first-line. Always update
diff --git a/WebCore/khtml/dom/dom_misc.h b/WebCore/khtml/dom/dom_misc.h
index 9ebb003..b598e5a 100644
--- a/WebCore/khtml/dom/dom_misc.h
+++ b/WebCore/khtml/dom/dom_misc.h
@@ -53,6 +53,8 @@ protected:
unsigned int _ref;
};
+enum TristateFlag { FlagNone, FlagEnabled, FlagDisabled };
+
}; // namespace
#endif
diff --git a/WebCore/khtml/dom/html_document.cpp b/WebCore/khtml/dom/html_document.cpp
index c79eadb..30ccc44 100644
--- a/WebCore/khtml/dom/html_document.cpp
+++ b/WebCore/khtml/dom/html_document.cpp
@@ -237,3 +237,15 @@ NodeList HTMLDocument::getElementsByName( const DOMString &elementName )
return new NameNodeListImpl(impl, elementName);
}
+DOMString HTMLDocument::designMode() const
+{
+ if(!impl) return "inherit";
+ return ((HTMLDocumentImpl *)impl)->designMode();
+}
+
+void HTMLDocument::setDesignMode(const DOMString &s)
+{
+ if(impl)
+ ((HTMLDocumentImpl *)impl)->setDesignMode(s);
+}
+
diff --git a/WebCore/khtml/dom/html_document.h b/WebCore/khtml/dom/html_document.h
index c9a303f..9da69e6 100644
--- a/WebCore/khtml/dom/html_document.h
+++ b/WebCore/khtml/dom/html_document.h
@@ -292,6 +292,10 @@ public:
* a document.
*/
HTMLCollection all() const;
+
+ DOMString designMode() const;
+ void setDesignMode(const DOMString &);
+
};
}; //namespace
diff --git a/WebCore/khtml/dom/html_element.cpp b/WebCore/khtml/dom/html_element.cpp
index e5dddf8..ea05011 100644
--- a/WebCore/khtml/dom/html_element.cpp
+++ b/WebCore/khtml/dom/html_element.cpp
@@ -175,3 +175,26 @@ void HTMLElement::assignOther( const Node &other, int elementId )
Node::operator = (other);
}
}
+
+bool HTMLElement::isContentEditable() const
+{
+ if(!impl) return false;
+ return static_cast<HTMLElementImpl *>(impl)->isContentEditable();
+}
+
+DOMString HTMLElement::contentEditable() const {
+ if(!impl) return "inherit";
+ return static_cast<HTMLElementImpl *>(impl)->contentEditable();
+}
+
+void HTMLElement::setContentEditable(const DOMString &enabled) {
+ if(!impl)
+ throw DOMException(DOMException::INVALID_STATE_ERR);
+ if (enabled == "inherit") {
+ int exceptionCode;
+ static_cast<HTMLElementImpl *>(impl)->removeAttribute(ATTR_CONTENTEDITABLE, exceptionCode);
+ }
+ else
+ static_cast<HTMLElementImpl *>(impl)->setAttribute(ATTR_CONTENTEDITABLE, enabled.isEmpty() ? "true" : enabled);
+}
+
diff --git a/WebCore/khtml/dom/html_element.h b/WebCore/khtml/dom/html_element.h
index dadbefa..1387b08 100644
--- a/WebCore/khtml/dom/html_element.h
+++ b/WebCore/khtml/dom/html_element.h
@@ -200,6 +200,10 @@ public:
*/
void addCSSProperty( const DOMString &property, const DOMString &value );
+ bool isContentEditable() const;
+ DOMString contentEditable() const;
+ void setContentEditable(const DOMString &enabled);
+
protected:
/*
* @internal
diff --git a/WebCore/khtml/ecma/kjs_html.cpp b/WebCore/khtml/ecma/kjs_html.cpp
index 4318ac5..604d1d6 100644
--- a/WebCore/khtml/ecma/kjs_html.cpp
+++ b/WebCore/khtml/ecma/kjs_html.cpp
@@ -122,7 +122,7 @@ Value KJS::HTMLDocFunction::tryCall(ExecState *exec, Object &thisObj, const List
const ClassInfo KJS::HTMLDocument::info =
{ "HTMLDocument", &DOMDocument::info, &HTMLDocumentTable, 0 };
/* Source for HTMLDocumentTable. Use "make hashtables" to regenerate.
- at begin HTMLDocumentTable 31
+ at begin HTMLDocumentTable 32
title HTMLDocument::Title DontDelete
referrer HTMLDocument::Referrer DontDelete|ReadOnly
domain HTMLDocument::Domain DontDelete
@@ -154,6 +154,7 @@ const ClassInfo KJS::HTMLDocument::info =
height HTMLDocument::Height DontDelete|ReadOnly
width HTMLDocument::Width DontDelete|ReadOnly
dir HTMLDocument::Dir DontDelete
+ designMode HTMLDocument::DesignMode DontDelete
#potentially obsolete array properties
# layers
# plugins
@@ -244,6 +245,8 @@ Value KJS::HTMLDocument::tryGet(ExecState *exec, const Identifier &propertyName)
case CaptureEvents:
case ReleaseEvents:
return lookupOrCreateFunction<HTMLDocFunction>( exec, propertyName, this, entry->value, entry->params, entry->attr );
+ case DesignMode:
+ return String(doc.designMode());
}
}
// Look for overrides
@@ -414,6 +417,9 @@ void KJS::HTMLDocument::putValue(ExecState *exec, int token, const Value& value,
case Dir:
body.setDir(value.toString(exec).string());
break;
+ case DesignMode:
+ doc.setDesignMode(value.toString(exec).string());
+ break;
default:
kdWarning() << "HTMLDocument::putValue unhandled token " << token << endl;
}
@@ -603,7 +609,7 @@ const ClassInfo* KJS::HTMLElement::classInfo() const
}
}
/*
- at begin HTMLElementTable 8
+ at begin HTMLElementTable 11
id KJS::HTMLElement::ElementId DontDelete
title KJS::HTMLElement::ElementTitle DontDelete
lang KJS::HTMLElement::ElementLang DontDelete
@@ -615,6 +621,8 @@ const ClassInfo* KJS::HTMLElement::classInfo() const
document KJS::HTMLElement::ElementDocument DontDelete|ReadOnly
# IE extension
children KJS::HTMLElement::ElementChildren DontDelete|ReadOnly
+ contentEditable KJS::HTMLElement::ElementContentEditable DontDelete
+ isContentEditable KJS::HTMLElement::ElementIsContentEditable DontDelete|ReadOnly
@end
@begin HTMLHtmlElementTable 1
version KJS::HTMLElement::HtmlVersion DontDelete
@@ -1794,6 +1802,10 @@ Value KJS::HTMLElement::getValueProperty(ExecState *exec, int token) const
return getDOMNode(exec,element.ownerDocument());
case ElementChildren:
return getHTMLCollection(exec,element.children());
+ case ElementContentEditable:
+ return String(element.contentEditable());
+ case ElementIsContentEditable:
+ return Boolean(element.isContentEditable());
// ### what about style? or is this used instead for DOM2 stylesheets?
}
kdWarning() << "HTMLElement::getValueProperty unhandled token " << token << endl;
@@ -2807,6 +2819,9 @@ void KJS::HTMLElement::putValue(ExecState *exec, int token, const Value& value,
case ElementInnerText:
element.setInnerText(str);
return;
+ case ElementContentEditable:
+ element.setContentEditable(str);
+ return;
default:
kdWarning() << "KJS::HTMLElement::putValue unhandled token " << token << " thisTag=" << element.tagName().string() << " str=" << str.string() << endl;
}
diff --git a/WebCore/khtml/ecma/kjs_html.h b/WebCore/khtml/ecma/kjs_html.h
index bfca951..7824176 100644
--- a/WebCore/khtml/ecma/kjs_html.h
+++ b/WebCore/khtml/ecma/kjs_html.h
@@ -49,7 +49,7 @@ namespace KJS {
enum { Title, Referrer, Domain, URL, Body, Location, Cookie,
Images, Applets, Links, Forms, Anchors, Scripts, All, Clear, Open, Close,
Write, WriteLn, GetElementsByName, CaptureEvents, ReleaseEvents,
- BgColor, FgColor, AlinkColor, LinkColor, VlinkColor, LastModified, Height, Width, Dir };
+ BgColor, FgColor, AlinkColor, LinkColor, VlinkColor, LastModified, Height, Width, Dir, DesignMode };
DOM::Document toDocument() const { return static_cast<DOM::Document>( node ); }
};
@@ -146,7 +146,8 @@ namespace KJS {
IFrameFrameBorder, IFrameSrc, IFrameName, IFrameHeight,
IFrameMarginHeight, IFrameMarginWidth, IFrameScrolling, IFrameWidth, IFrameContentDocument,
ElementInnerHTML, ElementTitle, ElementId, ElementDir, ElementLang,
- ElementClassName, ElementInnerText, ElementDocument, ElementChildren };
+ ElementClassName, ElementInnerText, ElementDocument, ElementChildren, ElementContentEditable,
+ ElementIsContentEditable};
DOM::HTMLElement toElement() const { return static_cast<DOM::HTMLElement>(node); }
};
diff --git a/WebCore/khtml/ecma/kjs_html.lut.h b/WebCore/khtml/ecma/kjs_html.lut.h
index 3c2a7b2..6622924 100644
--- a/WebCore/khtml/ecma/kjs_html.lut.h
+++ b/WebCore/khtml/ecma/kjs_html.lut.h
@@ -3,66 +3,77 @@
namespace KJS {
const struct HashEntry HTMLDocumentTableEntries[] = {
- { "open", HTMLDocument::Open, DontDelete|Function, 0, 0 },
- { "scripts", HTMLDocument::Scripts, DontDelete|ReadOnly, 0, 0 },
- { "releaseEvents", HTMLDocument::ReleaseEvents, DontDelete|Function, 0, 0 },
- { "all", HTMLDocument::All, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[32] },
- { 0, 0, 0, 0, 0 },
+ { "width", HTMLDocument::Width, DontDelete|ReadOnly, 0, 0 },
+ { "links", HTMLDocument::Links, DontDelete|ReadOnly, 0, 0 },
+ { "title", HTMLDocument::Title, DontDelete, 0, 0 },
{ "vlinkColor", HTMLDocument::VlinkColor, DontDelete, 0, 0 },
- { "anchors", HTMLDocument::Anchors, DontDelete|ReadOnly, 0, 0 },
- { "close", HTMLDocument::Close, DontDelete|Function, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "dir", HTMLDocument::Dir, DontDelete, 0, 0 },
- { "images", HTMLDocument::Images, DontDelete|ReadOnly, 0, 0 },
+ { "writeln", HTMLDocument::WriteLn, DontDelete|Function, 1, 0 },
+ { 0, 0, 0, 0, 0 },
+ { "forms", HTMLDocument::Forms, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[35] },
+ { "scripts", HTMLDocument::Scripts, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[39] },
+ { "captureEvents", HTMLDocument::CaptureEvents, DontDelete|Function, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { "write", HTMLDocument::Write, DontDelete|Function, 1, 0 },
+ { "fgColor", HTMLDocument::FgColor, DontDelete, 0, 0 },
{ "linkColor", HTMLDocument::LinkColor, DontDelete, 0, 0 },
+ { "body", HTMLDocument::Body, DontDelete, 0, &HTMLDocumentTableEntries[33] },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { "open", HTMLDocument::Open, DontDelete|Function, 0, 0 },
+ { "URL", HTMLDocument::URL, DontDelete|ReadOnly, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { "lastModified", HTMLDocument::LastModified, DontDelete|ReadOnly, 0, 0 },
+ { "images", HTMLDocument::Images, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[36] },
+ { 0, 0, 0, 0, 0 },
{ "domain", HTMLDocument::Domain, DontDelete, 0, 0 },
- { "height", HTMLDocument::Height, DontDelete|ReadOnly, 0, 0 },
+ { "location", HTMLDocument::Location, DontDelete, 0, &HTMLDocumentTableEntries[32] },
{ "cookie", HTMLDocument::Cookie, DontDelete, 0, 0 },
- { "alinkColor", HTMLDocument::AlinkColor, DontDelete, 0, 0 },
- { "getElementsByName", HTMLDocument::GetElementsByName, DontDelete|Function, 1, 0 },
- { "applets", HTMLDocument::Applets, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[34] },
- { "links", HTMLDocument::Links, DontDelete|ReadOnly, 0, 0 },
- { "title", HTMLDocument::Title, DontDelete, 0, 0 },
- { "location", HTMLDocument::Location, DontDelete, 0, 0 },
- { "captureEvents", HTMLDocument::CaptureEvents, DontDelete|Function, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "clear", HTMLDocument::Clear, DontDelete|Function, 0, 0 },
- { "referrer", HTMLDocument::Referrer, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[31] },
{ 0, 0, 0, 0, 0 },
- { "URL", HTMLDocument::URL, DontDelete|ReadOnly, 0, 0 },
- { "body", HTMLDocument::Body, DontDelete, 0, 0 },
- { "write", HTMLDocument::Write, DontDelete|Function, 1, &HTMLDocumentTableEntries[33] },
- { "writeln", HTMLDocument::WriteLn, DontDelete|Function, 1, 0 },
+ { "referrer", HTMLDocument::Referrer, DontDelete|ReadOnly, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { "dir", HTMLDocument::Dir, DontDelete, 0, &HTMLDocumentTableEntries[42] },
+ { "applets", HTMLDocument::Applets, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[34] },
+ { "anchors", HTMLDocument::Anchors, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[40] },
+ { "all", HTMLDocument::All, DontDelete|ReadOnly, 0, &HTMLDocumentTableEntries[37] },
+ { "clear", HTMLDocument::Clear, DontDelete|Function, 0, 0 },
+ { "close", HTMLDocument::Close, DontDelete|Function, 0, &HTMLDocumentTableEntries[38] },
+ { "getElementsByName", HTMLDocument::GetElementsByName, DontDelete|Function, 1, &HTMLDocumentTableEntries[41] },
+ { "releaseEvents", HTMLDocument::ReleaseEvents, DontDelete|Function, 0, 0 },
{ "bgColor", HTMLDocument::BgColor, DontDelete, 0, 0 },
- { "forms", HTMLDocument::Forms, DontDelete|ReadOnly, 0, 0 },
- { "fgColor", HTMLDocument::FgColor, DontDelete, 0, 0 },
- { "lastModified", HTMLDocument::LastModified, DontDelete|ReadOnly, 0, 0 },
- { "width", HTMLDocument::Width, DontDelete|ReadOnly, 0, 0 }
+ { "alinkColor", HTMLDocument::AlinkColor, DontDelete, 0, 0 },
+ { "height", HTMLDocument::Height, DontDelete|ReadOnly, 0, 0 },
+ { "designMode", HTMLDocument::DesignMode, DontDelete, 0, 0 }
};
-const struct HashTable HTMLDocumentTable = { 2, 35, HTMLDocumentTableEntries, 31 };
+const struct HashTable HTMLDocumentTable = { 2, 43, HTMLDocumentTableEntries, 32 };
} // namespace
namespace KJS {
const struct HashEntry HTMLElementTableEntries[] = {
+ { "lang", KJS::HTMLElement::ElementLang, DontDelete, 0, &HTMLElementTableEntries[12] },
+ { 0, 0, 0, 0, 0 },
+ { "innerHTML", KJS::HTMLElement::ElementInnerHTML, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "innerHTML", KJS::HTMLElement::ElementInnerHTML, DontDelete, 0, &HTMLElementTableEntries[10] },
- { "title", KJS::HTMLElement::ElementTitle, DontDelete, 0, &HTMLElementTableEntries[8] },
+ { "innerText", KJS::HTMLElement::ElementInnerText, DontDelete, 0, 0 },
+ { "document", KJS::HTMLElement::ElementDocument, DontDelete|ReadOnly, 0, &HTMLElementTableEntries[13] },
+ { "className", KJS::HTMLElement::ElementClassName, DontDelete, 0, &HTMLElementTableEntries[14] },
+ { "id", KJS::HTMLElement::ElementId, DontDelete, 0, &HTMLElementTableEntries[11] },
{ 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "id", KJS::HTMLElement::ElementId, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "dir", KJS::HTMLElement::ElementDir, DontDelete, 0, &HTMLElementTableEntries[9] },
- { "lang", KJS::HTMLElement::ElementLang, DontDelete, 0, 0 },
- { "className", KJS::HTMLElement::ElementClassName, DontDelete, 0, &HTMLElementTableEntries[11] },
- { "innerText", KJS::HTMLElement::ElementInnerText, DontDelete, 0, &HTMLElementTableEntries[12] },
- { "document", KJS::HTMLElement::ElementDocument, DontDelete|ReadOnly, 0, 0 },
- { "children", KJS::HTMLElement::ElementChildren, DontDelete|ReadOnly, 0, 0 }
+ { "title", KJS::HTMLElement::ElementTitle, DontDelete, 0, &HTMLElementTableEntries[15] },
+ { "dir", KJS::HTMLElement::ElementDir, DontDelete, 0, 0 },
+ { "children", KJS::HTMLElement::ElementChildren, DontDelete|ReadOnly, 0, 0 },
+ { "contentEditable", KJS::HTMLElement::ElementContentEditable, DontDelete, 0, 0 },
+ { "isContentEditable", KJS::HTMLElement::ElementIsContentEditable, DontDelete|ReadOnly, 0, 0 }
};
-const struct HashTable HTMLElementTable = { 2, 13, HTMLElementTableEntries, 8 };
+const struct HashTable HTMLElementTable = { 2, 16, HTMLElementTableEntries, 11 };
} // namespace
diff --git a/WebCore/khtml/html/html_documentimpl.cpp b/WebCore/khtml/html/html_documentimpl.cpp
index 89b7860..94a5497 100644
--- a/WebCore/khtml/html/html_documentimpl.cpp
+++ b/WebCore/khtml/html/html_documentimpl.cpp
@@ -262,6 +262,34 @@ Tokenizer *HTMLDocumentImpl::createTokenizer()
// not part of the DOM
// --------------------------------------------------------------------------
+DOMString HTMLDocumentImpl::designMode() const
+{
+ TristateFlag editMode = KWQ(view()->part())->editMode();
+ // Note: case for return values intentionally matches WinIE
+ switch (editMode) {
+ default:
+ case FlagNone:
+ return "Inherit";
+ case FlagEnabled:
+ return "On";
+ case FlagDisabled:
+ return "Off";
+ }
+}
+
+void HTMLDocumentImpl::setDesignMode(const DOMString &s)
+{
+ if ( strcasecmp( s, "on" ) == 0 ) {
+ KWQ(view()->part())->setEditMode(FlagEnabled);
+ }
+ else if (strcasecmp(s, "off") == 0) {
+ KWQ(view()->part())->setEditMode(FlagDisabled);
+ }
+ else if (strcasecmp(s, "inherit") == 0 || s.isNull()) {
+ KWQ(view()->part())->setEditMode(FlagNone);
+ }
+}
+
bool HTMLDocumentImpl::childAllowed( NodeImpl *newChild )
{
// ### support comments. etc as a child
diff --git a/WebCore/khtml/html/html_documentimpl.h b/WebCore/khtml/html/html_documentimpl.h
index 74aa59b..b21b6ba 100644
--- a/WebCore/khtml/html/html_documentimpl.h
+++ b/WebCore/khtml/html/html_documentimpl.h
@@ -65,6 +65,9 @@ public:
void setPolicyBaseURL(const DOMString &s) { m_policyBaseURL = s; }
#endif
+ DOMString designMode() const;
+ void setDesignMode(const DOMString &);
+
HTMLElementImpl *body();
void setBody(HTMLElementImpl *_body, int& exceptioncode);
diff --git a/WebCore/khtml/html/html_elementimpl.cpp b/WebCore/khtml/html/html_elementimpl.cpp
index 495e7d2..af8f156 100644
--- a/WebCore/khtml/html/html_elementimpl.cpp
+++ b/WebCore/khtml/html/html_elementimpl.cpp
@@ -53,7 +53,8 @@ using namespace DOM;
using namespace khtml;
HTMLElementImpl::HTMLElementImpl(DocumentPtr *doc)
- : ElementImpl(doc)
+ : ElementImpl(doc),
+ m_contentEditable(FlagNone)
{
}
@@ -129,6 +130,12 @@ void HTMLElementImpl::parseAttribute(AttributeImpl *attr)
setHasClass(attr->val());
setChanged();
break;
+ case ATTR_CONTENTEDITABLE:
+ {
+ setContentEditable(attr->value());
+ setChanged();
+ 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!
@@ -564,6 +571,43 @@ void HTMLElementImpl::addHTMLAlignment( DOMString alignment )
addCSSProperty( CSS_PROP_VERTICAL_ALIGN, propvalign );
}
+bool HTMLElementImpl::isContentEditable() const {
+ if (m_contentEditable == FlagEnabled)
+ return true;
+ if (m_contentEditable == FlagDisabled)
+ return false;
+
+ NodeImpl *node = parentNode();
+ while (node && node->isHTMLElement()) {
+ HTMLElementImpl *element = static_cast<HTMLElementImpl *>(node);
+ if (element->m_contentEditable == FlagEnabled)
+ return true;
+ if (element->m_contentEditable == FlagDisabled)
+ return false;
+ node = node->parentNode();
+ }
+ return false;
+}
+
+DOMString HTMLElementImpl::contentEditable() const {
+ if (m_contentEditable == FlagEnabled)
+ return "true";
+ if (m_contentEditable == FlagDisabled)
+ return "false";
+ return "inherit";
+}
+
+void HTMLElementImpl::setContentEditable(const DOMString &enabled) {
+ if ( strcasecmp ( enabled, "true" ) == 0 )
+ m_contentEditable = FlagEnabled;
+ else if ( enabled.isEmpty() ) // we want the "true" attribute
+ setAttribute(ATTR_CONTENTEDITABLE, "true");
+ else if ( strcasecmp ( enabled, "false" ) == 0 )
+ m_contentEditable = FlagDisabled;
+ else if ( strcasecmp ( enabled, "inherit" ) == 0 ) {
+ m_contentEditable = FlagNone;
+ }
+}
// -------------------------------------------------------------------------
HTMLGenericElementImpl::HTMLGenericElementImpl(DocumentPtr *doc, ushort i)
diff --git a/WebCore/khtml/html/html_elementimpl.h b/WebCore/khtml/html/html_elementimpl.h
index 331e86c..a0dc686 100644
--- a/WebCore/khtml/html/html_elementimpl.h
+++ b/WebCore/khtml/html/html_elementimpl.h
@@ -60,6 +60,10 @@ public:
bool setInnerText( const DOMString &text );
virtual DOMString namespaceURI() const;
+
+ virtual bool isContentEditable() const;
+ virtual DOMString contentEditable() const;
+ virtual void setContentEditable(const DOMString &enabled);
#if APPLE_CHANGES
virtual bool isGenericFormElement() const { return false; }
@@ -68,6 +72,11 @@ public:
protected:
// for IMG, OBJECT and APPLET
void addHTMLAlignment( DOMString alignment );
+
+private:
+ // FIXME: When the property for editing has been determined in CSS3, use that
+ // instead of this member variable.
+ TristateFlag m_contentEditable;
};
class HTMLGenericElementImpl : public HTMLElementImpl
diff --git a/WebCore/khtml/khtml_part.cpp b/WebCore/khtml/khtml_part.cpp
index ce0ecd2..c37b61c 100644
--- a/WebCore/khtml/khtml_part.cpp
+++ b/WebCore/khtml/khtml_part.cpp
@@ -2092,6 +2092,30 @@ void KHTMLPart::setOnlyLocalReferences(bool enable)
d->m_onlyLocalReferences = enable;
}
+void KHTMLPart::setEditMode(TristateFlag flag)
+{
+ d->m_inEditMode = flag;
+}
+
+TristateFlag KHTMLPart::editMode() const
+{
+ if (d->m_inEditMode != FlagNone)
+ return d->m_inEditMode == FlagEnabled ? FlagEnabled : FlagDisabled;
+
+ KHTMLPart *part = parentPart();
+ while (part) {
+ if (part->d->m_inEditMode != FlagNone)
+ return part->d->m_inEditMode == FlagEnabled ? FlagEnabled : FlagDisabled;
+ part = part->parentPart();
+ }
+ return FlagNone;
+}
+
+bool KHTMLPart::inEditMode() const
+{
+ return editMode() == FlagEnabled;
+}
+
void KHTMLPart::findTextBegin(NodeImpl *startNode, int startPos)
{
d->m_findPos = startPos;
@@ -3708,7 +3732,7 @@ bool KHTMLPart::frameExists( const QString &frameName )
return (!(*it).m_frame.isNull());
}
-KHTMLPart *KHTMLPart::parentPart()
+KHTMLPart *KHTMLPart::parentPart() const
{
if ( !parent() || !parent()->inherits( "KHTMLPart" ) )
return 0L;
diff --git a/WebCore/khtml/khtml_part.h b/WebCore/khtml/khtml_part.h
index d12f758..461271a 100644
--- a/WebCore/khtml/khtml_part.h
+++ b/WebCore/khtml/khtml_part.h
@@ -29,6 +29,7 @@
#include "dom/html_document.h"
#include "dom/dom2_range.h"
+#include "dom/dom_misc.h"
#include <kparts/part.h>
#include <kparts/browserextension.h>
@@ -61,6 +62,8 @@ namespace DOM
class EventListener;
};
+using DOM::TristateFlag;
+
namespace khtml
{
class DocLoader;
@@ -94,7 +97,7 @@ namespace KParts
* This class is khtml's main class. It features an almost complete
* web browser, and html renderer.
*
- * The easiest way to use this class (if you just want to display a an HTML
+ * The easiest way to use this class (if you just want to display an HTML
* page at some URL) is the following:
*
* <pre>
@@ -345,10 +348,14 @@ public:
void setOnlyLocalReferences(bool enable);
/**
- * Returnd whether references should be loaded ( default false )
+ * Returns whether references should be loaded ( default false )
**/
bool onlyLocalReferences() const;
+ void setEditMode(TristateFlag enable);
+ TristateFlag editMode() const;
+ bool inEditMode() const;
+
#ifndef KDE_NO_COMPAT
void enableJScript(bool e) { setJScriptEnabled(e); }
void enableJava(bool e) { setJavaEnabled(e); }
@@ -639,7 +646,7 @@ public:
*
* Returns 0L otherwise.
*/
- KHTMLPart *parentPart();
+ KHTMLPart *parentPart() const;
/**
* Returns a list of names of all frame (including iframe) objects of
diff --git a/WebCore/khtml/khtmlpart_p.h b/WebCore/khtml/khtmlpart_p.h
index b593754..0e019a0 100644
--- a/WebCore/khtml/khtmlpart_p.h
+++ b/WebCore/khtml/khtmlpart_p.h
@@ -42,6 +42,7 @@
#include "misc/decoder.h"
#include "java/kjavaappletcontext.h"
#include "ecma/kjs_proxy.h"
+#include "dom/dom_misc.h"
namespace KIO
{
@@ -151,6 +152,8 @@ public:
m_bPluginsOverride = false;
m_onlyLocalReferences = false;
+ m_inEditMode = DOM::FlagNone;
+
m_metaRefreshEnabled = true;
m_bHTTPRefresh = false;
@@ -181,6 +184,7 @@ public:
m_ssl_in_use = part->d->m_ssl_in_use;
#endif
m_onlyLocalReferences = part->d->m_onlyLocalReferences;
+ m_inEditMode = part->d->m_inEditMode;
m_zoomFactor = part->d->m_zoomFactor;
}
}
@@ -360,6 +364,8 @@ public:
bool m_bSecurityInQuestion:1;
bool m_focusNodeRestored:1;
+ TristateFlag m_inEditMode;
+
int m_focusNodeNumber;
QPoint m_dragStartPos;
diff --git a/WebCore/khtml/misc/htmlattrs.c b/WebCore/khtml/misc/htmlattrs.c
index 862ce32..a727a12 100644
--- a/WebCore/khtml/misc/htmlattrs.c
+++ b/WebCore/khtml/misc/htmlattrs.c
@@ -8,7 +8,7 @@ struct attrs {
const char *name;
int id;
};
-/* maximum key range = 914, duplicates = 1 */
+/* maximum key range = 1208, duplicates = 1 */
#ifdef __GNUC__
__inline
@@ -22,38 +22,40 @@ hash_attr (register const char *str, register unsigned int len)
{
static const unsigned short asso_values[] =
{
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 0, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 35, 25, 0,
- 75, 0, 45, 90, 135, 55, 0, 305, 0, 185,
- 0, 0, 50, 5, 115, 5, 15, 15, 40, 35,
- 70, 55, 5, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923, 923, 923, 923, 923,
- 923, 923, 923, 923, 923, 923
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 5, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 45, 65, 10,
+ 50, 0, 75, 60, 170, 200, 0, 45, 0, 175,
+ 0, 0, 0, 0, 25, 5, 0, 160, 160, 15,
+ 30, 170, 20, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1211, 1211, 1211
};
register int hval = len;
switch (hval)
{
default:
+ case 15:
+ hval += asso_values[(unsigned char)str[14]];
case 14:
hval += asso_values[(unsigned char)str[13]];
case 13:
@@ -95,255 +97,292 @@ findAttr (register const char *str, register unsigned int len)
{
enum
{
- TOTAL_KEYWORDS = 145,
+ TOTAL_KEYWORDS = 146,
MIN_WORD_LENGTH = 2,
- MAX_WORD_LENGTH = 14,
- MIN_HASH_VALUE = 9,
- MAX_HASH_VALUE = 922
+ MAX_WORD_LENGTH = 15,
+ MIN_HASH_VALUE = 3,
+ MAX_HASH_VALUE = 1210
};
static const struct attrs wordlist_attr[] =
{
+ {"top", ATTR_TOP},
+ {"content", ATTR_CONTENT},
{"cols", ATTR_COLS},
+ {"scope", ATTR_SCOPE},
{"onselect", ATTR_ONSELECT},
- {"content", ATTR_CONTENT},
- {"object", ATTR_OBJECT},
- {"class", ATTR_CLASS},
+ {"rel", ATTR_REL},
+ {"text", ATTR_TEXT},
+ {"onreset", ATTR_ONRESET},
+ {"color", ATTR_COLOR},
+ {"src", ATTR_SRC},
{"alt", ATTR_ALT},
- {"scope", ATTR_SCOPE},
- {"left", ATTR_LEFT},
- {"label", ATTR_LABEL},
- {"top", ATTR_TOP},
- {"size", ATTR_SIZE},
- {"onfocus", ATTR_ONFOCUS},
- {"cite", ATTR_CITE},
- {"code", ATTR_CODE},
- {"style", ATTR_STYLE},
- {"face", ATTR_FACE},
- {"nosave", ATTR_NOSAVE},
- {"title", ATTR_TITLE},
+ {"rows", ATTR_ROWS},
{"span", ATTR_SPAN},
- {"value", ATTR_VALUE},
+ {"code", ATTR_CODE},
{"colspan", ATTR_COLSPAN},
- {"selected", ATTR_SELECTED},
- {"text", ATTR_TEXT},
+ {"class", ATTR_CLASS},
{"accept", ATTR_ACCEPT},
- {"action", ATTR_ACTION},
- {"onload", ATTR_ONLOAD},
- {"rel", ATTR_REL},
- {"color", ATTR_COLOR},
- {"src", ATTR_SRC},
- {"type", ATTR_TYPE},
- {"enctype", ATTR_ENCTYPE},
- {"lang", ATTR_LANG},
- {"id", ATTR_ID},
- {"onunload", ATTR_ONUNLOAD},
- {"vspace", ATTR_VSPACE},
- {"rules", ATTR_RULES},
- {"onreset", ATTR_ONRESET},
- {"plain", ATTR_PLAIN},
- {"codebase", ATTR_CODEBASE},
+ {"selected", ATTR_SELECTED},
+ {"left", ATTR_LEFT},
+ {"start", ATTR_START},
+ {"object", ATTR_OBJECT},
+ {"onerror", ATTR_ONERROR},
{"clear", ATTR_CLEAR},
- {"rev", ATTR_REV},
- {"rows", ATTR_ROWS},
- {"onblur", ATTR_ONBLUR},
+ {"wrap", ATTR_WRAP},
+ {"nowrap", ATTR_NOWRAP},
+ {"coords", ATTR_COORDS},
+ {"rowspan", ATTR_ROWSPAN},
+ {"onload", ATTR_ONLOAD},
{"for", ATTR_FOR},
- {"data", ATTR_DATA},
- {"axis", ATTR_AXIS},
+ {"lang", ATTR_LANG},
+ {"label", ATTR_LABEL},
{"longdesc", ATTR_LONGDESC},
- {"classid", ATTR_CLASSID},
- {"align", ATTR_ALIGN},
- {"noresize", ATTR_NORESIZE},
- {"onresize", ATTR_ONRESIZE},
- {"start", ATTR_START},
+ {"face", ATTR_FACE},
+ {"target", ATTR_TARGET},
+ {"declare", ATTR_DECLARE},
+ {"pagex", ATTR_PAGEX},
{"onabort", ATTR_ONABORT},
- {"coords", ATTR_COORDS},
- {"codetype", ATTR_CODETYPE},
+ {"data", ATTR_DATA},
+ {"defer", ATTR_DEFER},
+ {"bgcolor", ATTR_BGCOLOR},
+ {"border", ATTR_BORDER},
+ {"type", ATTR_TYPE},
+ {"style", ATTR_STYLE},
+ {"codebase", ATTR_CODEBASE},
+ {"enctype", ATTR_ENCTYPE},
+ {"rev", ATTR_REV},
+ {"rules", ATTR_RULES},
{"abbr", ATTR_ABBR},
- {"z-index", ATTR_Z_INDEX},
- {"standby", ATTR_STANDBY},
- {"valuetype", ATTR_VALUETYPE},
- {"version", ATTR_VERSION},
+ {"title", ATTR_TITLE},
+ {"prompt", ATTR_PROMPT},
+ {"bordercolor", ATTR_BORDERCOLOR},
+ {"cite", ATTR_CITE},
+ {"nosave", ATTR_NOSAVE},
{"name", ATTR_NAME},
- {"valign", ATTR_VALIGN},
{"shape", ATTR_SHAPE},
+ {"vspace", ATTR_VSPACE},
+ {"unknown", ATTR_UNKNOWN},
+ {"size", ATTR_SIZE},
+ {"oversrc", ATTR_OVERSRC},
{"hspace", ATTR_HSPACE},
- {"declare", ATTR_DECLARE},
- {"pagey", ATTR_PAGEY},
- {"bgcolor", ATTR_BGCOLOR},
- {"wrap", ATTR_WRAP},
- {"defer", ATTR_DEFER},
- {"nowrap", ATTR_NOWRAP},
- {"onmouseout", ATTR_ONMOUSEOUT},
- {"cellspacing", ATTR_CELLSPACING},
- {"rowspan", ATTR_ROWSPAN},
- {"dir", ATTR_DIR},
- {"pagex", ATTR_PAGEX},
+ {"codetype", ATTR_CODETYPE},
+ {"compact", ATTR_COMPACT},
+ {"link", ATTR_LINK},
+ {"plain", ATTR_PLAIN},
+ {"id", ATTR_ID},
+ {"char", ATTR_CHAR},
+ {"onblur", ATTR_ONBLUR},
+ {"onfocus", ATTR_ONFOCUS},
+ {"noresize", ATTR_NORESIZE},
+ {"onresize", ATTR_ONRESIZE},
+ {"onkeypress", ATTR_ONKEYPRESS},
+ {"action", ATTR_ACTION},
+ {"charset", ATTR_CHARSET},
+ {"onunload", ATTR_ONUNLOAD},
+ {"onclick", ATTR_ONCLICK},
+ {"href", ATTR_HREF},
+ {"nohref", ATTR_NOHREF},
{"noshade", ATTR_NOSHADE},
+ {"dir", ATTR_DIR},
+ {"pagey", ATTR_PAGEY},
+ {"axis", ATTR_AXIS},
+ {"onkeydown", ATTR_ONKEYDOWN},
+ {"checked", ATTR_CHECKED},
{"onchange", ATTR_ONCHANGE},
{"challenge", ATTR_CHALLENGE},
+ {"alink", ATTR_ALINK},
+ {"readonly", ATTR_READONLY},
+ {"accesskey", ATTR_ACCESSKEY},
+ {"headers", ATTR_HEADERS},
{"profile", ATTR_PROFILE},
- {"language", ATTR_LANGUAGE},
{"scrolling", ATTR_SCROLLING},
- {"target", ATTR_TARGET},
- {"disabled", ATTR_DISABLED},
- {"onmouseup", ATTR_ONMOUSEUP},
- {"oversrc", ATTR_OVERSRC},
- {"tabindex", ATTR_TABINDEX},
- {"readonly", ATTR_READONLY},
- {"char", ATTR_CHAR},
- {"compact", ATTR_COMPACT},
- {"usemap", ATTR_USEMAP},
- {"href", ATTR_HREF},
- {"nohref", ATTR_NOHREF},
- {"onsubmit", ATTR_ONSUBMIT},
- {"charset", ATTR_CHARSET},
+ {"align", ATTR_ALIGN},
+ {"z-index", ATTR_Z_INDEX},
+ {"classid", ATTR_CLASSID},
+ {"frame", ATTR_FRAME},
+ {"accept-charset", ATTR_ACCEPT_CHARSET},
+ {"cellspacing", ATTR_CELLSPACING},
+ {"standby", ATTR_STANDBY},
+ {"html", ATTR_HTML},
+ {"scheme", ATTR_SCHEME},
+ {"value", ATTR_VALUE},
+ {"language", ATTR_LANGUAGE},
+ {"onkeyup", ATTR_ONKEYUP},
+ {"hreflang", ATTR_HREFLANG},
+ {"contenteditable", ATTR_CONTENTEDITABLE},
{"oncontextmenu", ATTR_ONCONTEXTMENU},
- {"width", ATTR_WIDTH},
- {"onmousedown", ATTR_ONMOUSEDOWN},
+ {"ondblclick", ATTR_ONDBLCLICK},
+ {"usemap", ATTR_USEMAP},
+ {"bgproperties", ATTR_BGPROPERTIES},
+ {"version", ATTR_VERSION},
+ {"tabindex", ATTR_TABINDEX},
+ {"method", ATTR_METHOD},
{"autocomplete", ATTR_AUTOCOMPLETE},
- {"multiple", ATTR_MULTIPLE},
- {"scheme", ATTR_SCHEME},
+ {"charoff", ATTR_CHAROFF},
+ {"vlink", ATTR_VLINK},
+ {"onmousedown", ATTR_ONMOUSEDOWN},
+ {"disabled", ATTR_DISABLED},
+ {"cellpadding", ATTR_CELLPADDING},
{"ismap", ATTR_ISMAP},
- {"border", ATTR_BORDER},
- {"html", ATTR_HTML},
- {"http-equiv", ATTR_HTTP_EQUIV},
- {"hidden", ATTR_HIDDEN},
- {"pluginurl", ATTR_PLUGINURL},
- {"onerror", ATTR_ONERROR},
+ {"width", ATTR_WIDTH},
+ {"background", ATTR_BACKGROUND},
+ {"valign", ATTR_VALIGN},
{"media", ATTR_MEDIA},
- {"unknown", ATTR_UNKNOWN},
- {"link", ATTR_LINK},
- {"onclick", ATTR_ONCLICK},
- {"visibility", ATTR_VISIBILITY},
- {"onmouseover", ATTR_ONMOUSEOVER},
- {"headers", ATTR_HEADERS},
- {"charoff", ATTR_CHAROFF},
- {"frame", ATTR_FRAME},
- {"archive", ATTR_ARCHIVE},
+ {"hidden", ATTR_HIDDEN},
{"datetime", ATTR_DATETIME},
- {"cellpadding", ATTR_CELLPADDING},
+ {"maxlength", ATTR_MAXLENGTH},
+ {"frameborder", ATTR_FRAMEBORDER},
+ {"onmouseup", ATTR_ONMOUSEUP},
+ {"onmouseout", ATTR_ONMOUSEOUT},
+ {"topmargin", ATTR_TOPMARGIN},
{"pluginpage", ATTR_PLUGINPAGE},
- {"alink", ATTR_ALINK},
+ {"onmouseover", ATTR_ONMOUSEOVER},
{"pluginspage", ATTR_PLUGINSPAGE},
- {"vlink", ATTR_VLINK},
- {"accesskey", ATTR_ACCESSKEY},
- {"method", ATTR_METHOD},
- {"accept-charset", ATTR_ACCEPT_CHARSET},
- {"prompt", ATTR_PROMPT},
- {"hreflang", ATTR_HREFLANG},
- {"onkeyup", ATTR_ONKEYUP},
+ {"multiple", ATTR_MULTIPLE},
+ {"valuetype", ATTR_VALUETYPE},
+ {"leftmargin", ATTR_LEFTMARGIN},
{"height", ATTR_HEIGHT},
+ {"onsubmit", ATTR_ONSUBMIT},
+ {"pluginurl", ATTR_PLUGINURL},
+ {"archive", ATTR_ARCHIVE},
{"onmousemove", ATTR_ONMOUSEMOVE},
- {"bordercolor", ATTR_BORDERCOLOR},
- {"ondblclick", ATTR_ONDBLCLICK},
- {"onkeydown", ATTR_ONKEYDOWN},
- {"checked", ATTR_CHECKED},
- {"bgproperties", ATTR_BGPROPERTIES},
- {"maxlength", ATTR_MAXLENGTH},
- {"onkeypress", ATTR_ONKEYPRESS},
- {"leftmargin", ATTR_LEFTMARGIN},
- {"topmargin", ATTR_TOPMARGIN},
+ {"http-equiv", ATTR_HTTP_EQUIV},
{"summary", ATTR_SUMMARY},
- {"background", ATTR_BACKGROUND},
- {"frameborder", ATTR_FRAMEBORDER},
{"marginwidth", ATTR_MARGINWIDTH},
- {"marginheight", ATTR_MARGINHEIGHT}
+ {"marginheight", ATTR_MARGINHEIGHT},
+ {"visibility", ATTR_VISIBILITY}
};
static const short lookup[] =
{
+ -1, -1, -1, 0, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 1, -1, 2, 3, -1, -1, 4,
+ -1, -1, -1, -1, 5, -1, -1, -1,
+ -1, -1, 6, -1, -1, 7, -1, -1,
+ 8, -1, -1, 9, -1, -1, -1, -1,
+ 10, 11, -1, -1, -1, -1, 12, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 13, -1, -1, 14, -1, -1, 15, 16,
+ -1, 17, -1, -1, -1, -1, -1, 18,
+ 19, 20, 21, -1, -1, 22, -1, -1,
+ -1, 23, -1, 24, -1, -1, -1, -1,
+ 25, 26, -1, -1, -1, 27, -1, 28,
+ -1, -1, -1, -1, -1, 29, -1, -1,
+ -1, -1, -1, 30, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 31, 32, -1,
+ 33, 34, -1, -1, 35, -1, 36, -1,
+ 37, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 38, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 39,
+ -1, -1, -1, 40, -1, -1, 41, -1,
+ -1, -1, -1, -1, 42, -1, -1, 43,
+ -1, -1, -1, 44, 45, -1, -1, -1,
+ -1, -1, -1, 46, -1, -1, -1, -1,
+ -1, -1, -1, -1, 47, 48, 49, -1,
+ -1, -1, -1, 50, -1, -1, 51, -1,
+ 52, -1, -1, -1, -1, -1, -1, -1,
+ 53, 54, 55, 56, -1, 57, -1, -1,
+ 58, -1, -1, -1, 59, -1, 60, -1,
+ -1, -1, -1, -1, -1, -1, -1, 61,
+ -1, 62, 63, -1, 64, -1, 65, -1,
+ 66, 67, -411, -1, 70, 71, 72, 73,
+ -78, -2, -1, -1, -1, -1, -1, -1,
+ 74, -1, 75, -1, 76, 77, 78, -1,
+ 79, -1, -1, -1, 80, -1, -1, -1,
+ -1, 81, -1, -1, 82, 83, 84, 85,
+ -1, -1, 86, 87, -1, -1, 88, -1,
+ -1, -1, -1, 89, -1, 90, 91, -1,
+ 92, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 93, -1, -1, 94, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 95, -1, 96, 97, -1,
+ -1, -1, -1, -1, -1, 98, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 99, -1,
+ -1, -1, 100, -1, -1, -1, -1, -1,
+ -1, -1, 101, -1, -1, -1, 102, 103,
+ -1, 104, -1, -1, 105, -1, 106, 107,
+ 108, -1, -1, -1, -1, 109, 110, -1,
+ -1, 111, 112, -1, -1, -1, -1, 113,
+ -1, -1, 114, -1, -1, -1, -1, -1,
+ 115, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, 117, -1, -1, -1, 118, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 119, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 120, 121,
+ -1, -1, -1, 122, 123, -1, 124, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 125, -1, -1, -1, -1, -1, -1,
+ 126, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 127, 128, -1,
+ -1, -1, 129, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 130,
+ 131, -1, -1, -1, -1, 132, -1, 133,
+ 134, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 136, -1,
+ -1, -1, -1, -1, -1, 137, 138, -1,
+ -1, 139, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 140, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 141, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 142, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 0, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 1, -1, -1, -1,
- -1, -1, -1, -1, -1, 2, -1, -1,
- -1, -1, -1, -1, -1, -1, 3, -1,
- -1, -1, 4, -1, -1, 5, -1, -1,
- -1, -1, -1, -1, 6, -1, -1, -1,
- 7, 8, -1, -1, 9, 10, -1, -1,
- 11, -1, 12, -1, -1, -1, -1, 13,
- 14, -1, -1, -1, 15, -1, 16, -1,
- -1, -1, 17, -1, -1, -1, 18, 19,
- -1, 20, -1, -1, -1, -1, -1, 21,
- 22, -1, 23, -1, -1, -1, -1, 24,
- -1, -1, -1, -1, 25, -1, 26, -1,
- 27, -1, -1, 28, 29, -1, -1, 30,
- -1, 31, -1, -1, 32, 33, -1, -1,
- 34, -1, -1, -1, 35, -1, 36, -1,
- -1, 37, -1, -1, 38, -1, -1, -1,
- -1, -1, -1, 39, -1, -1, 40, 41,
- -1, 42, -1, 43, 44, -1, -1, -1,
- -1, 45, -1, -1, -1, -1, -1, -1,
- -1, -1, 46, -1, -1, -1, 47, -1,
- -1, 48, -1, -1, -337, -1, 51, -96,
- -2, -1, -1, -1, -1, 52, -1, -1,
- -1, 53, -1, 54, 55, -1, -1, -1,
- -1, -1, -1, -1, 56, -1, -1, -1,
- -1, 57, -1, 58, -1, -1, 59, -1,
- 60, -1, 61, -1, -1, -1, 62, 63,
- 64, -1, -1, 65, -1, 66, -1, 67,
- 68, 69, -1, -1, -1, 70, 71, 72,
- 73, -1, 74, -1, -1, -1, -1, -1,
- -1, 75, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 76, 77, -1, -1,
- 78, 79, 80, -1, 81, -1, 82, 83,
- -1, -1, 84, 85, -1, -1, -1, -1,
- 86, 87, -1, -1, 88, -1, -1, -1,
- 89, -1, -1, 90, -1, 91, -1, -1,
- -1, -1, -1, -1, 92, -1, -1, -1,
- 93, 94, -1, -1, -1, -1, -1, -1,
- 95, -1, -1, -1, -1, -1, 96, 97,
- 98, -1, -1, 99, -1, -1, -1, 100,
- 101, -1, -1, 102, 103, -1, -1, -1,
- -1, -1, 104, -1, -1, 105, -1, -1,
- 106, -1, -1, 107, -1, -1, -1, -1,
- -1, -1, 108, -1, 109, -1, -1, 110,
- -1, -1, 111, 112, 113, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 114, -1,
- -1, 115, -1, 116, 117, -1, -1, 118,
- -1, -1, -1, 119, -1, -1, -1, -1,
- 120, 121, -1, -1, -1, 122, -1, -1,
- -1, -1, -1, -1, -1, -1, 123, -1,
- 124, -1, -1, 125, -1, 126, -1, -1,
- -1, -1, -1, -1, 127, -1, -1, -1,
- 128, -1, -1, -1, 129, -1, -1, -1,
- -1, 130, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- 131, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 132, -1,
- -1, -1, -1, -1, -1, -1, -1, 133,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 134, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 135, -1, -1, -1,
- -1, -1, -1, 136, -1, -1, -1, -1,
- -1, 137, -1, -1, -1, -1, 138, -1,
- -1, -1, 139, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 140, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 143,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 141, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 142, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
@@ -353,10 +392,10 @@ findAttr (register const char *str, register unsigned int len)
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 143, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
@@ -368,7 +407,7 @@ findAttr (register const char *str, register unsigned int len)
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 144
+ -1, -1, 145
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
@@ -443,6 +482,7 @@ static const char * const attrList[] = {
"COLSPAN",
"COMPACT",
"CONTENT",
+ "CONTENTEDITABLE",
"COORDS",
"DATA",
"DATETIME",
diff --git a/WebCore/khtml/misc/htmlattrs.h b/WebCore/khtml/misc/htmlattrs.h
index 770206f..e712afe 100644
--- a/WebCore/khtml/misc/htmlattrs.h
+++ b/WebCore/khtml/misc/htmlattrs.h
@@ -43,117 +43,118 @@ using namespace DOM;
#define ATTR_COLSPAN 33
#define ATTR_COMPACT 34
#define ATTR_CONTENT 35
-#define ATTR_COORDS 36
-#define ATTR_DATA 37
-#define ATTR_DATETIME 38
-#define ATTR_DECLARE 39
-#define ATTR_DEFER 40
-#define ATTR_DIR 41
-#define ATTR_DISABLED 42
-#define ATTR_ENCTYPE 43
-#define ATTR_FACE 44
-#define ATTR_FOR 45
-#define ATTR_FRAME 46
-#define ATTR_FRAMEBORDER 47
-#define ATTR_HEADERS 48
-#define ATTR_HEIGHT 49
-#define ATTR_HIDDEN 50
-#define ATTR_HREF 51
-#define ATTR_HREFLANG 52
-#define ATTR_HSPACE 53
-#define ATTR_HTML 54
-#define ATTR_HTTP_EQUIV 55
-#define ATTR_ID 56
-#define ATTR_ISMAP 57
-#define ATTR_LABEL 58
-#define ATTR_LANG 59
-#define ATTR_LANGUAGE 60
-#define ATTR_LEFT 61
-#define ATTR_LEFTMARGIN 62
-#define ATTR_LINK 63
-#define ATTR_LONGDESC 64
-#define ATTR_MARGINHEIGHT 65
-#define ATTR_MARGINWIDTH 66
-#define ATTR_MAXLENGTH 67
-#define ATTR_MEDIA 68
-#define ATTR_METHOD 69
-#define ATTR_MULTIPLE 70
-#define ATTR_NAME 71
-#define ATTR_NOHREF 72
-#define ATTR_NORESIZE 73
-#define ATTR_NOSAVE 74
-#define ATTR_NOSHADE 75
-#define ATTR_NOWRAP 76
-#define ATTR_OBJECT 77
-#define ATTR_ONABORT 78
-#define ATTR_ONBLUR 79
-#define ATTR_ONCHANGE 80
-#define ATTR_ONCLICK 81
-#define ATTR_ONCONTEXTMENU 82
-#define ATTR_ONDBLCLICK 83
-#define ATTR_ONERROR 84
-#define ATTR_ONFOCUS 85
-#define ATTR_ONKEYDOWN 86
-#define ATTR_ONKEYPRESS 87
-#define ATTR_ONKEYUP 88
-#define ATTR_ONLOAD 89
-#define ATTR_ONMOUSEDOWN 90
-#define ATTR_ONMOUSEMOVE 91
-#define ATTR_ONMOUSEOUT 92
-#define ATTR_ONMOUSEOVER 93
-#define ATTR_ONMOUSEUP 94
-#define ATTR_ONRESET 95
-#define ATTR_ONRESIZE 96
-#define ATTR_ONSELECT 97
-#define ATTR_ONSUBMIT 98
-#define ATTR_ONUNLOAD 99
-#define ATTR_OVERSRC 100
-#define ATTR_PAGEX 101
-#define ATTR_PAGEY 102
-#define ATTR_PLAIN 103
-#define ATTR_PLUGINPAGE 104
-#define ATTR_PLUGINSPAGE 105
-#define ATTR_PLUGINURL 106
-#define ATTR_PROFILE 107
-#define ATTR_PROMPT 108
-#define ATTR_READONLY 109
-#define ATTR_REL 110
-#define ATTR_REV 111
-#define ATTR_ROWS 112
-#define ATTR_ROWSPAN 113
-#define ATTR_RULES 114
-#define ATTR_SCHEME 115
-#define ATTR_SCOPE 116
-#define ATTR_SCROLLING 117
-#define ATTR_SELECTED 118
-#define ATTR_SHAPE 119
-#define ATTR_SIZE 120
-#define ATTR_SPAN 121
-#define ATTR_SRC 122
-#define ATTR_STANDBY 123
-#define ATTR_START 124
-#define ATTR_STYLE 125
-#define ATTR_SUMMARY 126
-#define ATTR_TABINDEX 127
-#define ATTR_TARGET 128
-#define ATTR_TEXT 129
-#define ATTR_TITLE 130
-#define ATTR_TOP 131
-#define ATTR_TOPMARGIN 132
-#define ATTR_TYPE 133
-#define ATTR_UNKNOWN 134
-#define ATTR_USEMAP 135
-#define ATTR_VALIGN 136
-#define ATTR_VALUE 137
-#define ATTR_VALUETYPE 138
-#define ATTR_VERSION 139
-#define ATTR_VISIBILITY 140
-#define ATTR_VLINK 141
-#define ATTR_VSPACE 142
-#define ATTR_WIDTH 143
-#define ATTR_WRAP 144
-#define ATTR_Z_INDEX 145
-#define ATTR_LAST_ATTR 145
+#define ATTR_CONTENTEDITABLE 36
+#define ATTR_COORDS 37
+#define ATTR_DATA 38
+#define ATTR_DATETIME 39
+#define ATTR_DECLARE 40
+#define ATTR_DEFER 41
+#define ATTR_DIR 42
+#define ATTR_DISABLED 43
+#define ATTR_ENCTYPE 44
+#define ATTR_FACE 45
+#define ATTR_FOR 46
+#define ATTR_FRAME 47
+#define ATTR_FRAMEBORDER 48
+#define ATTR_HEADERS 49
+#define ATTR_HEIGHT 50
+#define ATTR_HIDDEN 51
+#define ATTR_HREF 52
+#define ATTR_HREFLANG 53
+#define ATTR_HSPACE 54
+#define ATTR_HTML 55
+#define ATTR_HTTP_EQUIV 56
+#define ATTR_ID 57
+#define ATTR_ISMAP 58
+#define ATTR_LABEL 59
+#define ATTR_LANG 60
+#define ATTR_LANGUAGE 61
+#define ATTR_LEFT 62
+#define ATTR_LEFTMARGIN 63
+#define ATTR_LINK 64
+#define ATTR_LONGDESC 65
+#define ATTR_MARGINHEIGHT 66
+#define ATTR_MARGINWIDTH 67
+#define ATTR_MAXLENGTH 68
+#define ATTR_MEDIA 69
+#define ATTR_METHOD 70
+#define ATTR_MULTIPLE 71
+#define ATTR_NAME 72
+#define ATTR_NOHREF 73
+#define ATTR_NORESIZE 74
+#define ATTR_NOSAVE 75
+#define ATTR_NOSHADE 76
+#define ATTR_NOWRAP 77
+#define ATTR_OBJECT 78
+#define ATTR_ONABORT 79
+#define ATTR_ONBLUR 80
+#define ATTR_ONCHANGE 81
+#define ATTR_ONCLICK 82
+#define ATTR_ONCONTEXTMENU 83
+#define ATTR_ONDBLCLICK 84
+#define ATTR_ONERROR 85
+#define ATTR_ONFOCUS 86
+#define ATTR_ONKEYDOWN 87
+#define ATTR_ONKEYPRESS 88
+#define ATTR_ONKEYUP 89
+#define ATTR_ONLOAD 90
+#define ATTR_ONMOUSEDOWN 91
+#define ATTR_ONMOUSEMOVE 92
+#define ATTR_ONMOUSEOUT 93
+#define ATTR_ONMOUSEOVER 94
+#define ATTR_ONMOUSEUP 95
+#define ATTR_ONRESET 96
+#define ATTR_ONRESIZE 97
+#define ATTR_ONSELECT 98
+#define ATTR_ONSUBMIT 99
+#define ATTR_ONUNLOAD 100
+#define ATTR_OVERSRC 101
+#define ATTR_PAGEX 102
+#define ATTR_PAGEY 103
+#define ATTR_PLAIN 104
+#define ATTR_PLUGINPAGE 105
+#define ATTR_PLUGINSPAGE 106
+#define ATTR_PLUGINURL 107
+#define ATTR_PROFILE 108
+#define ATTR_PROMPT 109
+#define ATTR_READONLY 110
+#define ATTR_REL 111
+#define ATTR_REV 112
+#define ATTR_ROWS 113
+#define ATTR_ROWSPAN 114
+#define ATTR_RULES 115
+#define ATTR_SCHEME 116
+#define ATTR_SCOPE 117
+#define ATTR_SCROLLING 118
+#define ATTR_SELECTED 119
+#define ATTR_SHAPE 120
+#define ATTR_SIZE 121
+#define ATTR_SPAN 122
+#define ATTR_SRC 123
+#define ATTR_STANDBY 124
+#define ATTR_START 125
+#define ATTR_STYLE 126
+#define ATTR_SUMMARY 127
+#define ATTR_TABINDEX 128
+#define ATTR_TARGET 129
+#define ATTR_TEXT 130
+#define ATTR_TITLE 131
+#define ATTR_TOP 132
+#define ATTR_TOPMARGIN 133
+#define ATTR_TYPE 134
+#define ATTR_UNKNOWN 135
+#define ATTR_USEMAP 136
+#define ATTR_VALIGN 137
+#define ATTR_VALUE 138
+#define ATTR_VALUETYPE 139
+#define ATTR_VERSION 140
+#define ATTR_VISIBILITY 141
+#define ATTR_VLINK 142
+#define ATTR_VSPACE 143
+#define ATTR_WIDTH 144
+#define ATTR_WRAP 145
+#define ATTR_Z_INDEX 146
+#define ATTR_LAST_ATTR 146
DOMString getAttrName(unsigned short id);
#endif
diff --git a/WebCore/khtml/misc/htmlattrs.in b/WebCore/khtml/misc/htmlattrs.in
index 2238a0e..a63e538 100644
--- a/WebCore/khtml/misc/htmlattrs.in
+++ b/WebCore/khtml/misc/htmlattrs.in
@@ -33,6 +33,7 @@ cols
colspan
compact
content
+contenteditable
coords
data
datetime
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list