[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
mjs
mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:46:34 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit c0911dcb11f941b70247c608880de88fd978f7bd
Author: mjs <mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Jun 15 09:44:45 2004 +0000
Reviewed by Darin.
<rdar://problem/3685236>: (Safari does not support onselectstart event handler)
* khtml/ecma/kjs_dom.cpp:
(DOMNode::getValueProperty):
(DOMNode::putValue):
* khtml/ecma/kjs_dom.h:
(KJS::DOMNode::):
* khtml/ecma/kjs_dom.lut.h:
(KJS::):
* khtml/html/html_elementimpl.cpp:
(HTMLElementImpl::parseHTMLAttribute):
* khtml/misc/htmlattrs.c:
(hash_attr):
(findAttr):
* khtml/misc/htmlattrs.h:
* khtml/misc/htmlattrs.in:
* khtml/rendering/render_object.cpp:
(RenderObject::shouldSelect):
* khtml/xml/dom2_eventsimpl.cpp:
(EventImpl::typeToId):
(EventImpl::idToType):
* khtml/xml/dom2_eventsimpl.h:
(DOM::EventImpl::):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6854 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 61ff892..417ea10 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -2,6 +2,34 @@
Reviewed by Darin.
+ <rdar://problem/3685236>: (Safari does not support onselectstart event handler)
+
+ * khtml/ecma/kjs_dom.cpp:
+ (DOMNode::getValueProperty):
+ (DOMNode::putValue):
+ * khtml/ecma/kjs_dom.h:
+ (KJS::DOMNode::):
+ * khtml/ecma/kjs_dom.lut.h:
+ (KJS::):
+ * khtml/html/html_elementimpl.cpp:
+ (HTMLElementImpl::parseHTMLAttribute):
+ * khtml/misc/htmlattrs.c:
+ (hash_attr):
+ (findAttr):
+ * khtml/misc/htmlattrs.h:
+ * khtml/misc/htmlattrs.in:
+ * khtml/rendering/render_object.cpp:
+ (RenderObject::shouldSelect):
+ * khtml/xml/dom2_eventsimpl.cpp:
+ (EventImpl::typeToId):
+ (EventImpl::idToType):
+ * khtml/xml/dom2_eventsimpl.h:
+ (DOM::EventImpl::):
+
+2004-06-15 Maciej Stachowiak <mjs at apple.com>
+
+ Reviewed by Darin.
+
Fix crash with last checkin.
* khtml/ecma/kjs_binding.cpp:
diff --git a/WebCore/khtml/ecma/kjs_dom.cpp b/WebCore/khtml/ecma/kjs_dom.cpp
index 02b7ad9..13f93b6 100644
--- a/WebCore/khtml/ecma/kjs_dom.cpp
+++ b/WebCore/khtml/ecma/kjs_dom.cpp
@@ -94,7 +94,7 @@ bool DOMNode::toBoolean(ExecState *) const
}
/* Source for DOMNodeTable. Use "make hashtables" to regenerate.
- at begin DOMNodeTable 66
+ at begin DOMNodeTable 67
nodeName DOMNode::NodeName DontDelete|ReadOnly
nodeValue DOMNode::NodeValue DontDelete
nodeType DOMNode::NodeType DontDelete|ReadOnly
@@ -150,6 +150,7 @@ bool DOMNode::toBoolean(ExecState *) const
onscroll DOMNode::OnScroll DontDelete
onsearch DOMNode::OnSearch DontDelete
onselect DOMNode::OnSelect DontDelete
+ onselectstart DOMNode::OnSelectStart DontDelete
onsubmit DOMNode::OnSubmit DontDelete
onunload DOMNode::OnUnload DontDelete
# IE extensions
@@ -285,6 +286,8 @@ Value DOMNode::getValueProperty(ExecState *exec, int token) const
#endif
case OnSelect:
return getListener(DOM::EventImpl::SELECT_EVENT);
+ case OnSelectStart:
+ return getListener(DOM::EventImpl::SELECTSTART_EVENT);
case OnSubmit:
return getListener(DOM::EventImpl::SUBMIT_EVENT);
case OnUnload:
@@ -467,6 +470,9 @@ void DOMNode::putValue(ExecState *exec, int token, const Value& value, int /*att
case OnSelect:
setListener(exec,DOM::EventImpl::SELECT_EVENT,value);
break;
+ case OnSelectStart:
+ setListener(exec,DOM::EventImpl::SELECTSTART_EVENT,value);
+ break;
case OnSubmit:
setListener(exec,DOM::EventImpl::SUBMIT_EVENT,value);
break;
diff --git a/WebCore/khtml/ecma/kjs_dom.h b/WebCore/khtml/ecma/kjs_dom.h
index 0572dde..fe768a4 100644
--- a/WebCore/khtml/ecma/kjs_dom.h
+++ b/WebCore/khtml/ecma/kjs_dom.h
@@ -61,7 +61,7 @@ namespace KJS {
DispatchEvent, Contains,
OnAbort, OnBlur, OnChange, OnClick, OnContextMenu, OnDblClick, OnDragDrop, OnError,
OnDragEnter, OnDragOver, OnDragLeave, OnDrop, OnDragStart, OnDrag, OnDragEnd,
- OnBeforeCut, OnCut, OnBeforeCopy, OnCopy, OnBeforePaste, OnPaste,
+ OnBeforeCut, OnCut, OnBeforeCopy, OnCopy, OnBeforePaste, OnPaste, OnSelectStart,
OnFocus, OnInput, OnKeyDown, OnKeyPress, OnKeyUp, OnLoad, OnMouseDown,
OnMouseMove, OnMouseOut, OnMouseOver, OnMouseUp, OnMove, OnReset,
OnResize, OnScroll, OnSearch, OnSelect, OnSubmit, OnUnload,
diff --git a/WebCore/khtml/ecma/kjs_dom.lut.h b/WebCore/khtml/ecma/kjs_dom.lut.h
index 6621342..48c7235 100644
--- a/WebCore/khtml/ecma/kjs_dom.lut.h
+++ b/WebCore/khtml/ecma/kjs_dom.lut.h
@@ -29,99 +29,100 @@ const struct HashTable DOMNodeProtoTable = { 2, 17, DOMNodeProtoTableEntries, 13
namespace KJS {
const struct HashEntry DOMNodeTableEntries[] = {
- { "ownerDocument", DOMNode::OwnerDocument, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[73] },
+ { "ondragdrop", DOMNode::OnDragDrop, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "scrollHeight", DOMNode::ScrollHeight, DontDelete|ReadOnly, 0, 0 },
- { "onbeforepaste", DOMNode::OnBeforePaste, DontDelete, 0, &DOMNodeTableEntries[81] },
- { "oncopy", DOMNode::OnCopy, DontDelete, 0, 0 },
- { "ondragstart", DOMNode::OnDragStart, DontDelete, 0, 0 },
- { "onunload", DOMNode::OnUnload, DontDelete, 0, 0 },
- { "nodeValue", DOMNode::NodeValue, DontDelete, 0, 0 },
+ { "onclick", DOMNode::OnClick, DontDelete, 0, 0 },
+ { "nodeName", DOMNode::NodeName, DontDelete|ReadOnly, 0, 0 },
{ 0, 0, 0, 0, 0 },
+ { "onscroll", DOMNode::OnScroll, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
+ { "ondragover", DOMNode::OnDragOver, DontDelete, 0, &DOMNodeTableEntries[76] },
+ { "ondragend", DOMNode::OnDragEnd, DontDelete, 0, &DOMNodeTableEntries[75] },
{ 0, 0, 0, 0, 0 },
- { "offsetParent", DOMNode::OffsetParent, DontDelete|ReadOnly, 0, 0 },
+ { "onsubmit", DOMNode::OnSubmit, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "onclick", DOMNode::OnClick, DontDelete, 0, &DOMNodeTableEntries[77] },
+ { "onmouseover", DOMNode::OnMouseOver, DontDelete, 0, &DOMNodeTableEntries[81] },
{ 0, 0, 0, 0, 0 },
- { "nodeName", DOMNode::NodeName, DontDelete|ReadOnly, 0, 0 },
- { "ondragdrop", DOMNode::OnDragDrop, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "onscroll", DOMNode::OnScroll, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
+ { "childNodes", DOMNode::ChildNodes, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[84] },
+ { "oncut", DOMNode::OnCut, DontDelete, 0, 0 },
+ { "onbeforecopy", DOMNode::OnBeforeCopy, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "previousSibling", DOMNode::PreviousSibling, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[79] },
- { "ondragend", DOMNode::OnDragEnd, DontDelete, 0, 0 },
- { "ondragover", DOMNode::OnDragOver, DontDelete, 0, &DOMNodeTableEntries[82] },
+ { "nextSibling", DOMNode::NextSibling, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[67] },
+ { "ondragleave", DOMNode::OnDragLeave, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "oncut", DOMNode::OnCut, DontDelete, 0, &DOMNodeTableEntries[75] },
- { "onmousedown", DOMNode::OnMouseDown, DontDelete, 0, 0 },
+ { "attributes", DOMNode::Attributes, DontDelete|ReadOnly, 0, 0 },
+ { "parentElement", DOMNode::ParentElement, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[69] },
+ { "onpaste", DOMNode::OnPaste, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "clientWidth", DOMNode::ClientWidth, DontDelete|ReadOnly, 0, 0 },
- { "onmouseover", DOMNode::OnMouseOver, DontDelete, 0, &DOMNodeTableEntries[83] },
- { "childNodes", DOMNode::ChildNodes, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[67] },
+ { "onfocus", DOMNode::OnFocus, DontDelete, 0, &DOMNodeTableEntries[90] },
{ 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0 },
+ { "firstChild", DOMNode::FirstChild, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[68] },
+ { "ondrag", DOMNode::OnDrag, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
+ { "onload", DOMNode::OnLoad, DontDelete, 0, &DOMNodeTableEntries[88] },
+ { "parentNode", DOMNode::ParentNode, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[73] },
+ { "nodeType", DOMNode::NodeType, DontDelete|ReadOnly, 0, 0 },
+ { "localName", DOMNode::LocalName, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[83] },
+ { "ondragenter", DOMNode::OnDragEnter, DontDelete, 0, &DOMNodeTableEntries[72] },
{ 0, 0, 0, 0, 0 },
- { "onpaste", DOMNode::OnPaste, DontDelete, 0, 0 },
- { "nextSibling", DOMNode::NextSibling, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[68] },
- { "ondragleave", DOMNode::OnDragLeave, DontDelete, 0, &DOMNodeTableEntries[88] },
- { "attributes", DOMNode::Attributes, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[71] },
+ { "ondblclick", DOMNode::OnDblClick, DontDelete, 0, 0 },
+ { "onbeforecut", DOMNode::OnBeforeCut, DontDelete, 0, 0 },
+ { "namespaceURI", DOMNode::NamespaceURI, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[74] },
{ 0, 0, 0, 0, 0 },
- { "ondrag", DOMNode::OnDrag, DontDelete, 0, 0 },
- { "onreset", DOMNode::OnReset, DontDelete, 0, 0 },
- { "onchange", DOMNode::OnChange, DontDelete, 0, &DOMNodeTableEntries[74] },
- { "parentElement", DOMNode::ParentElement, DontDelete|ReadOnly, 0, 0 },
- { "oncontextmenu", DOMNode::OnContextMenu, DontDelete, 0, &DOMNodeTableEntries[89] },
- { "firstChild", DOMNode::FirstChild, DontDelete|ReadOnly, 0, 0 },
+ { "oninput", DOMNode::OnInput, DontDelete, 0, 0 },
+ { "scrollLeft", DOMNode::ScrollLeft, DontDelete, 0, 0 },
+ { "ownerDocument", DOMNode::OwnerDocument, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[77] },
+ { "onsearch", DOMNode::OnSearch, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "nodeType", DOMNode::NodeType, DontDelete|ReadOnly, 0, 0 },
- { "onerror", DOMNode::OnError, DontDelete, 0, 0 },
- { "parentNode", DOMNode::ParentNode, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[66] },
- { "onkeypress", DOMNode::OnKeyPress, DontDelete, 0, 0 },
- { "offsetLeft", DOMNode::OffsetLeft, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[86] },
- { "onkeyup", DOMNode::OnKeyUp, DontDelete, 0, 0 },
+ { "lastChild", DOMNode::LastChild, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[70] },
+ { "scrollHeight", DOMNode::ScrollHeight, DontDelete|ReadOnly, 0, 0 },
+ { "prefix", DOMNode::Prefix, DontDelete, 0, 0 },
+ { "onkeydown", DOMNode::OnKeyDown, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "ondblclick", DOMNode::OnDblClick, DontDelete, 0, &DOMNodeTableEntries[69] },
+ { "ondragstart", DOMNode::OnDragStart, DontDelete, 0, 0 },
+ { "onblur", DOMNode::OnBlur, DontDelete, 0, &DOMNodeTableEntries[71] },
{ 0, 0, 0, 0, 0 },
+ { "onmove", DOMNode::OnMove, DontDelete, 0, &DOMNodeTableEntries[80] },
{ 0, 0, 0, 0, 0 },
- { "onbeforecut", DOMNode::OnBeforeCut, DontDelete, 0, 0 },
- { "namespaceURI", DOMNode::NamespaceURI, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[80] },
- { "prefix", DOMNode::Prefix, DontDelete, 0, &DOMNodeTableEntries[85] },
+ { "offsetParent", DOMNode::OffsetParent, DontDelete|ReadOnly, 0, 0 },
+ { "nodeValue", DOMNode::NodeValue, DontDelete, 0, &DOMNodeTableEntries[82] },
+ { "oncopy", DOMNode::OnCopy, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "lastChild", DOMNode::LastChild, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[76] },
{ 0, 0, 0, 0, 0 },
- { "onblur", DOMNode::OnBlur, DontDelete, 0, &DOMNodeTableEntries[70] },
+ { "previousSibling", DOMNode::PreviousSibling, DontDelete|ReadOnly, 0, 0 },
+ { "onmouseup", DOMNode::OnMouseUp, DontDelete, 0, 0 },
{ 0, 0, 0, 0, 0 },
- { "localName", DOMNode::LocalName, DontDelete|ReadOnly, 0, 0 },
- { "onabort", DOMNode::OnAbort, DontDelete, 0, 0 },
- { "onbeforecopy", DOMNode::OnBeforeCopy, DontDelete, 0, &DOMNodeTableEntries[84] },
- { "ondragenter", DOMNode::OnDragEnter, DontDelete, 0, &DOMNodeTableEntries[72] },
+ { "onabort", DOMNode::OnAbort, DontDelete, 0, &DOMNodeTableEntries[85] },
+ { "onchange", DOMNode::OnChange, DontDelete, 0, &DOMNodeTableEntries[78] },
+ { "oncontextmenu", DOMNode::OnContextMenu, DontDelete, 0, &DOMNodeTableEntries[89] },
+ { "onbeforepaste", DOMNode::OnBeforePaste, DontDelete, 0, 0 },
{ "ondrop", DOMNode::OnDrop, DontDelete, 0, 0 },
- { "onfocus", DOMNode::OnFocus, DontDelete, 0, 0 },
- { "oninput", DOMNode::OnInput, DontDelete, 0, 0 },
- { "onkeydown", DOMNode::OnKeyDown, DontDelete, 0, &DOMNodeTableEntries[78] },
- { "onload", DOMNode::OnLoad, DontDelete, 0, 0 },
+ { "onerror", DOMNode::OnError, DontDelete, 0, 0 },
+ { "onkeypress", DOMNode::OnKeyPress, DontDelete, 0, 0 },
+ { "onkeyup", DOMNode::OnKeyUp, DontDelete, 0, &DOMNodeTableEntries[86] },
+ { "onmousedown", DOMNode::OnMouseDown, DontDelete, 0, &DOMNodeTableEntries[79] },
{ "onmousemove", DOMNode::OnMouseMove, DontDelete, 0, 0 },
{ "onmouseout", DOMNode::OnMouseOut, DontDelete, 0, 0 },
- { "onmouseup", DOMNode::OnMouseUp, DontDelete, 0, 0 },
- { "onmove", DOMNode::OnMove, DontDelete, 0, 0 },
+ { "onreset", DOMNode::OnReset, DontDelete, 0, 0 },
{ "onresize", DOMNode::OnResize, DontDelete, 0, 0 },
- { "onsearch", DOMNode::OnSearch, DontDelete, 0, 0 },
{ "onselect", DOMNode::OnSelect, DontDelete, 0, 0 },
- { "onsubmit", DOMNode::OnSubmit, DontDelete, 0, 0 },
+ { "onselectstart", DOMNode::OnSelectStart, DontDelete, 0, &DOMNodeTableEntries[87] },
+ { "onunload", DOMNode::OnUnload, DontDelete, 0, 0 },
+ { "offsetLeft", DOMNode::OffsetLeft, DontDelete|ReadOnly, 0, 0 },
{ "offsetTop", DOMNode::OffsetTop, DontDelete|ReadOnly, 0, 0 },
{ "offsetWidth", DOMNode::OffsetWidth, DontDelete|ReadOnly, 0, 0 },
- { "offsetHeight", DOMNode::OffsetHeight, DontDelete|ReadOnly, 0, &DOMNodeTableEntries[87] },
+ { "offsetHeight", DOMNode::OffsetHeight, DontDelete|ReadOnly, 0, 0 },
+ { "clientWidth", DOMNode::ClientWidth, DontDelete|ReadOnly, 0, 0 },
{ "clientHeight", DOMNode::ClientHeight, DontDelete|ReadOnly, 0, 0 },
- { "scrollLeft", DOMNode::ScrollLeft, DontDelete, 0, 0 },
{ "scrollTop", DOMNode::ScrollTop, DontDelete, 0, 0 },
{ "scrollWidth", DOMNode::ScrollWidth, DontDelete|ReadOnly, 0, 0 }
};
-const struct HashTable DOMNodeTable = { 2, 90, DOMNodeTableEntries, 66 };
+const struct HashTable DOMNodeTable = { 2, 91, DOMNodeTableEntries, 67 };
} // namespace
diff --git a/WebCore/khtml/html/html_elementimpl.cpp b/WebCore/khtml/html/html_elementimpl.cpp
index 5d2b794..8010059 100644
--- a/WebCore/khtml/html/html_elementimpl.cpp
+++ b/WebCore/khtml/html/html_elementimpl.cpp
@@ -499,6 +499,10 @@ void HTMLElementImpl::parseHTMLAttribute(HTMLAttributeImpl *attr)
setHTMLEventListener(EventImpl::DRAGEND_EVENT,
getDocument()->createHTMLEventListener(attr->value().string()));
break;
+ case ATTR_ONSELECTSTART:
+ setHTMLEventListener(EventImpl::SELECTSTART_EVENT,
+ getDocument()->createHTMLEventListener(attr->value().string()));
+ break;
// other misc attributes
default:
#ifdef UNSUPPORTED_ATTR
diff --git a/WebCore/khtml/misc/htmlattrs.c b/WebCore/khtml/misc/htmlattrs.c
index 92f01a3..9f07241 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 = 1396, duplicates = 1 */
+/* maximum key range = 1379, duplicates = 1 */
#ifdef __GNUC__
__inline
@@ -22,32 +22,32 @@ hash_attr (register const char *str, register unsigned int len)
{
static const unsigned short asso_values[] =
{
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 0, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 15, 115, 10,
- 45, 0, 130, 120, 10, 15, 0, 20, 15, 170,
- 0, 0, 365, 0, 175, 70, 0, 25, 280, 45,
- 15, 20, 5, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
- 1413, 1413, 1413, 1413, 1413, 1413
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 10, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 30, 170, 10,
+ 45, 0, 120, 55, 100, 0, 0, 90, 30, 360,
+ 0, 0, 0, 0, 215, 5, 0, 65, 20, 35,
+ 25, 15, 0, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382,
+ 1382, 1382, 1382, 1382, 1382, 1382
};
register int hval = len;
@@ -97,316 +97,316 @@ findAttr (register const char *str, register unsigned int len)
{
enum
{
- TOTAL_KEYWORDS = 180,
+ TOTAL_KEYWORDS = 181,
MIN_WORD_LENGTH = 2,
MAX_WORD_LENGTH = 15,
- MIN_HASH_VALUE = 17,
- MAX_HASH_VALUE = 1412
+ MIN_HASH_VALUE = 3,
+ MAX_HASH_VALUE = 1381
};
static const struct attrs wordlist_attr[] =
{
+ {"top", ATTR_TOP},
+ {"size", ATTR_SIZE},
+ {"cite", ATTR_CITE},
{"content", ATTR_CONTENT},
+ {"type", ATTR_TYPE},
+ {"scope", ATTR_SCOPE},
{"text", ATTR_TEXT},
- {"cite", ATTR_CITE},
- {"alt", ATTR_ALT},
+ {"oncopy", ATTR_ONCOPY},
+ {"enctype", ATTR_ENCTYPE},
+ {"loop", ATTR_LOOP},
{"title", ATTR_TITLE},
- {"oncut", ATTR_ONCUT},
+ {"span", ATTR_SPAN},
+ {"onpaste", ATTR_ONPASTE},
{"action", ATTR_ACTION},
- {"link", ATTR_LINK},
- {"code", ATTR_CODE},
{"id", ATTR_ID},
- {"alink", ATTR_ALINK},
- {"onclick", ATTR_ONCLICK},
- {"data", ATTR_DATA},
- {"onload", ATTR_ONLOAD},
- {"z-index", ATTR_Z_INDEX},
- {"size", ATTR_SIZE},
- {"unknown", ATTR_UNKNOWN},
{"cols", ATTR_COLS},
- {"checked", ATTR_CHECKED},
{"onselect", ATTR_ONSELECT},
- {"onunload", ATTR_ONUNLOAD},
{"style", ATTR_STYLE},
+ {"accept", ATTR_ACCEPT},
+ {"code", ATTR_CODE},
+ {"nosave", ATTR_NOSAVE},
+ {"alt", ATTR_ALT},
{"axis", ATTR_AXIS},
- {"width", ATTR_WIDTH},
- {"hidden", ATTR_HIDDEN},
- {"object", ATTR_OBJECT},
- {"onkeydown", ATTR_ONKEYDOWN},
- {"noshade", ATTR_NOSHADE},
+ {"plain", ATTR_PLAIN},
+ {"vspace", ATTR_VSPACE},
+ {"oninput", ATTR_ONINPUT},
+ {"codetype", ATTR_CODETYPE},
+ {"oncut", ATTR_ONCUT},
+ {"colspan", ATTR_COLSPAN},
+ {"class", ATTR_CLASS},
+ {"z-index", ATTR_Z_INDEX},
{"selected", ATTR_SELECTED},
- {"left", ATTR_LEFT},
+ {"pagey", ATTR_PAGEY},
+ {"data", ATTR_DATA},
+ {"onload", ATTR_ONLOAD},
+ {"pagex", ATTR_PAGEX},
{"lang", ATTR_LANG},
+ {"align", ATTR_ALIGN},
+ {"link", ATTR_LINK},
+ {"keytype", ATTR_KEYTYPE},
+ {"classid", ATTR_CLASSID},
+ {"shape", ATTR_SHAPE},
+ {"valign", ATTR_VALIGN},
+ {"vlink", ATTR_VLINK},
+ {"onclick", ATTR_ONCLICK},
+ {"value", ATTR_VALUE},
+ {"hspace", ATTR_HSPACE},
+ {"longdesc", ATTR_LONGDESC},
+ {"left", ATTR_LEFT},
+ {"alink", ATTR_ALINK},
+ {"autosave", ATTR_AUTOSAVE},
{"face", ATTR_FACE},
- {"height", ATTR_HEIGHT},
+ {"valuetype", ATTR_VALUETYPE},
+ {"accesskey", ATTR_ACCESSKEY},
+ {"onkeyup", ATTR_ONKEYUP},
+ {"onunload", ATTR_ONUNLOAD},
+ {"cellspacing", ATTR_CELLSPACING},
+ {"width", ATTR_WIDTH},
+ {"object", ATTR_OBJECT},
+ {"noshade", ATTR_NOSHADE},
+ {"onkeydown", ATTR_ONKEYDOWN},
+ {"hidden", ATTR_HIDDEN},
+ {"unknown", ATTR_UNKNOWN},
{"onchange", ATTR_ONCHANGE},
- {"label", ATTR_LABEL},
- {"align", ATTR_ALIGN},
- {"class", ATTR_CLASS},
- {"min", ATTR_MIN},
- {"name", ATTR_NAME},
+ {"http-equiv", ATTR_HTTP_EQUIV},
+ {"onfocus", ATTR_ONFOCUS},
+ {"onreset", ATTR_ONRESET},
+ {"noresize", ATTR_NORESIZE},
+ {"onresize", ATTR_ONRESIZE},
+ {"src", ATTR_SRC},
+ {"rev", ATTR_REV},
+ {"precision", ATTR_PRECISION},
+ {"pluginpage", ATTR_PLUGINPAGE},
+ {"version", ATTR_VERSION},
{"rel", ATTR_REL},
- {"challenge", ATTR_CHALLENGE},
- {"html", ATTR_HTML},
- {"max", ATTR_MAX},
+ {"visibility", ATTR_VISIBILITY},
+ {"pluginspage", ATTR_PLUGINSPAGE},
+ {"start", ATTR_START},
+ {"cellpadding", ATTR_CELLPADDING},
+ {"rows", ATTR_ROWS},
{"color", ATTR_COLOR},
+ {"height", ATTR_HEIGHT},
+ {"checked", ATTR_CHECKED},
+ {"dir", ATTR_DIR},
+ {"challenge", ATTR_CHALLENGE},
+ {"label", ATTR_LABEL},
+ {"ondrop", ATTR_ONDROP},
+ {"codebase", ATTR_CODEBASE},
+ {"standby", ATTR_STANDBY},
+ {"language", ATTR_LANGUAGE},
{"tabindex", ATTR_TABINDEX},
- {"char", ATTR_CHAR},
+ {"direction", ATTR_DIRECTION},
+ {"coords", ATTR_COORDS},
+ {"wrap", ATTR_WRAP},
+ {"nowrap", ATTR_NOWRAP},
{"clear", ATTR_CLEAR},
- {"accesskey", ATTR_ACCESSKEY},
+ {"rowspan", ATTR_ROWSPAN},
+ {"onscroll", ATTR_ONSCROLL},
{"contenteditable", ATTR_CONTENTEDITABLE},
- {"method", ATTR_METHOD},
- {"oncontextmenu", ATTR_ONCONTEXTMENU},
- {"dir", ATTR_DIR},
- {"onfocus", ATTR_ONFOCUS},
- {"classid", ATTR_CLASSID},
- {"media", ATTR_MEDIA},
- {"onreset", ATTR_ONRESET},
- {"datetime", ATTR_DATETIME},
- {"ondblclick", ATTR_ONDBLCLICK},
- {"src", ATTR_SRC},
- {"codebase", ATTR_CODEBASE},
- {"start", ATTR_START},
- {"scheme", ATTR_SCHEME},
+ {"target", ATTR_TARGET},
+ {"onselectstart", ATTR_ONSELECTSTART},
+ {"rules", ATTR_RULES},
+ {"results", ATTR_RESULTS},
+ {"disabled", ATTR_DISABLED},
{"declare", ATTR_DECLARE},
- {"longdesc", ATTR_LONGDESC},
- {"direction", ATTR_DIRECTION},
- {"standby", ATTR_STANDBY},
- {"noresize", ATTR_NORESIZE},
- {"onresize", ATTR_ONRESIZE},
+ {"for", ATTR_FOR},
+ {"truespeed", ATTR_TRUESPEED},
+ {"onkeypress", ATTR_ONKEYPRESS},
{"readonly", ATTR_READONLY},
+ {"ondrag", ATTR_ONDRAG},
+ {"scrolling", ATTR_SCROLLING},
+ {"char", ATTR_CHAR},
+ {"min", ATTR_MIN},
{"charset", ATTR_CHARSET},
{"onsearch", ATTR_ONSEARCH},
- {"rules", ATTR_RULES},
- {"onscroll", ATTR_ONSCROLL},
- {"rows", ATTR_ROWS},
- {"onmouseout", ATTR_ONMOUSEOUT},
- {"coords", ATTR_COORDS},
- {"for", ATTR_FOR},
+ {"profile", ATTR_PROFILE},
+ {"archive", ATTR_ARCHIVE},
+ {"composite", ATTR_COMPOSITE},
+ {"defer", ATTR_DEFER},
+ {"name", ATTR_NAME},
+ {"ondblclick", ATTR_ONDBLCLICK},
+ {"ondragend", ATTR_ONDRAGEND},
+ {"ismap", ATTR_ISMAP},
+ {"headers", ATTR_HEADERS},
+ {"compact", ATTR_COMPACT},
+ {"max", ATTR_MAX},
+ {"scrolldelay", ATTR_SCROLLDELAY},
{"onabort", ATTR_ONABORT},
- {"target", ATTR_TARGET},
- {"language", ATTR_LANGUAGE},
+ {"accept-charset", ATTR_ACCEPT_CHARSET},
+ {"ondragleave", ATTR_ONDRAGLEAVE},
{"href", ATTR_HREF},
+ {"media", ATTR_MEDIA},
{"nohref", ATTR_NOHREF},
- {"headers", ATTR_HEADERS},
- {"disabled", ATTR_DISABLED},
- {"vlink", ATTR_VLINK},
+ {"datetime", ATTR_DATETIME},
+ {"usemap", ATTR_USEMAP},
+ {"pluginurl", ATTR_PLUGINURL},
+ {"placeholder", ATTR_PLACEHOLDER},
+ {"oversrc", ATTR_OVERSRC},
+ {"oncontextmenu", ATTR_ONCONTEXTMENU},
+ {"scheme", ATTR_SCHEME},
{"onblur", ATTR_ONBLUR},
- {"value", ATTR_VALUE},
- {"maxlength", ATTR_MAXLENGTH},
- {"defer", ATTR_DEFER},
- {"ondrag", ATTR_ONDRAG},
- {"results", ATTR_RESULTS},
+ {"bgcolor", ATTR_BGCOLOR},
+ {"multiple", ATTR_MULTIPLE},
+ {"html", ATTR_HTML},
+ {"onmouseup", ATTR_ONMOUSEUP},
+ {"onmouseout", ATTR_ONMOUSEOUT},
+ {"autocomplete", ATTR_AUTOCOMPLETE},
+ {"method", ATTR_METHOD},
{"onmousedown", ATTR_ONMOUSEDOWN},
- {"top", ATTR_TOP},
- {"nosave", ATTR_NOSAVE},
- {"loop", ATTR_LOOP},
- {"type", ATTR_TYPE},
- {"scrolldelay", ATTR_SCROLLDELAY},
- {"oncopy", ATTR_ONCOPY},
- {"enctype", ATTR_ENCTYPE},
- {"onsubmit", ATTR_ONSUBMIT},
- {"accept", ATTR_ACCEPT},
- {"ondragend", ATTR_ONDRAGEND},
- {"incremental", ATTR_INCREMENTAL},
- {"oninput", ATTR_ONINPUT},
- {"autosave", ATTR_AUTOSAVE},
- {"plain", ATTR_PLAIN},
+ {"onbeforecopy", ATTR_ONBEFORECOPY},
+ {"behavior", ATTR_BEHAVIOR},
+ {"onbeforepaste", ATTR_ONBEFOREPASTE},
+ {"hreflang", ATTR_HREFLANG},
+ {"ondragenter", ATTR_ONDRAGENTER},
+ {"prompt", ATTR_PROMPT},
{"abbr", ATTR_ABBR},
- {"scrolling", ATTR_SCROLLING},
- {"keytype", ATTR_KEYTYPE},
- {"onkeyup", ATTR_ONKEYUP},
- {"bgcolor", ATTR_BGCOLOR},
- {"codetype", ATTR_CODETYPE},
- {"scope", ATTR_SCOPE},
- {"valign", ATTR_VALIGN},
- {"span", ATTR_SPAN},
- {"onpaste", ATTR_ONPASTE},
- {"rev", ATTR_REV},
- {"shape", ATTR_SHAPE},
+ {"ondragover", ATTR_ONDRAGOVER},
{"onbeforecut", ATTR_ONBEFORECUT},
- {"hreflang", ATTR_HREFLANG},
- {"hspace", ATTR_HSPACE},
{"charoff", ATTR_CHAROFF},
- {"colspan", ATTR_COLSPAN},
- {"frame", ATTR_FRAME},
- {"scrollamount", ATTR_SCROLLAMOUNT},
- {"archive", ATTR_ARCHIVE},
+ {"ondragstart", ATTR_ONDRAGSTART},
+ {"onsubmit", ATTR_ONSUBMIT},
+ {"maxlength", ATTR_MAXLENGTH},
+ {"mayscript", ATTR_MAYSCRIPT},
{"border", ATTR_BORDER},
- {"pagex", ATTR_PAGEX},
- {"pagey", ATTR_PAGEY},
{"onerror", ATTR_ONERROR},
+ {"incremental", ATTR_INCREMENTAL},
+ {"topmargin", ATTR_TOPMARGIN},
+ {"bgproperties", ATTR_BGPROPERTIES},
+ {"onmouseover", ATTR_ONMOUSEOVER},
{"background", ATTR_BACKGROUND},
- {"ondragenter", ATTR_ONDRAGENTER},
- {"version", ATTR_VERSION},
{"cellborder", ATTR_CELLBORDER},
- {"visibility", ATTR_VISIBILITY},
- {"compact", ATTR_COMPACT},
- {"ondrop", ATTR_ONDROP},
- {"wrap", ATTR_WRAP},
- {"nowrap", ATTR_NOWRAP},
- {"autocomplete", ATTR_AUTOCOMPLETE},
- {"multiple", ATTR_MULTIPLE},
- {"behavior", ATTR_BEHAVIOR},
- {"marginwidth", ATTR_MARGINWIDTH},
- {"ondragstart", ATTR_ONDRAGSTART},
- {"composite", ATTR_COMPOSITE},
- {"ismap", ATTR_ISMAP},
- {"cellspacing", ATTR_CELLSPACING},
+ {"frame", ATTR_FRAME},
+ {"scrollamount", ATTR_SCROLLAMOUNT},
{"leftmargin", ATTR_LEFTMARGIN},
- {"usemap", ATTR_USEMAP},
- {"summary", ATTR_SUMMARY},
- {"cellpadding", ATTR_CELLPADDING},
- {"precision", ATTR_PRECISION},
- {"placeholder", ATTR_PLACEHOLDER},
- {"marginheight", ATTR_MARGINHEIGHT},
- {"onmouseup", ATTR_ONMOUSEUP},
+ {"onmousemove", ATTR_ONMOUSEMOVE},
+ {"marginwidth", ATTR_MARGINWIDTH},
{"tableborder", ATTR_TABLEBORDER},
- {"ondragleave", ATTR_ONDRAGLEAVE},
- {"rowspan", ATTR_ROWSPAN},
- {"truespeed", ATTR_TRUESPEED},
- {"accept-charset", ATTR_ACCEPT_CHARSET},
- {"http-equiv", ATTR_HTTP_EQUIV},
- {"profile", ATTR_PROFILE},
- {"oversrc", ATTR_OVERSRC},
{"bordercolor", ATTR_BORDERCOLOR},
- {"onmousemove", ATTR_ONMOUSEMOVE},
- {"valuetype", ATTR_VALUETYPE},
- {"onkeypress", ATTR_ONKEYPRESS},
- {"onmouseover", ATTR_ONMOUSEOVER},
- {"vspace", ATTR_VSPACE},
- {"pluginurl", ATTR_PLUGINURL},
- {"ondragover", ATTR_ONDRAGOVER},
- {"onbeforecopy", ATTR_ONBEFORECOPY},
- {"mayscript", ATTR_MAYSCRIPT},
- {"topmargin", ATTR_TOPMARGIN},
- {"onbeforepaste", ATTR_ONBEFOREPASTE},
- {"frameborder", ATTR_FRAMEBORDER},
- {"pluginpage", ATTR_PLUGINPAGE},
- {"prompt", ATTR_PROMPT},
- {"pluginspage", ATTR_PLUGINSPAGE},
- {"bgproperties", ATTR_BGPROPERTIES}
+ {"marginheight", ATTR_MARGINHEIGHT},
+ {"summary", ATTR_SUMMARY},
+ {"frameborder", ATTR_FRAMEBORDER}
};
static const short lookup[] =
{
+ -1, -1, -1, 0, -1, -1, -1, -1,
+ -1, 1, -1, -1, -1, -1, 2, -1,
+ -1, 3, -1, 4, 5, -1, -1, -1,
+ -1, -1, -1, -1, -1, 6, -1, 7,
+ 8, -1, 9, 10, -1, -1, -1, 11,
+ -1, -1, 12, -1, -1, -1, 13, 14,
+ -1, 15, -1, -1, -1, 16, -1, 17,
+ 18, -1, -1, 19, -1, 20, -1, 21,
+ 22, 23, -1, -1, -1, -1, -1, 24,
+ 25, -1, -1, -1, -1, -1, 26, -1,
+ 27, -1, 28, -1, -1, 29, -1, 30,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 31, -1, -1, -1, -1, -1,
+ -1, 32, -1, -1, -1, 33, -1, 34,
+ -1, -1, -1, 35, -1, -1, -1, 36,
+ 37, -1, -1, -1, 38, -1, -1, 39,
+ -1, -1, -1, -1, 40, -1, -1, -1,
+ -1, -1, -1, -1, 41, 42, -1, -1,
+ -1, 43, -1, 44, -1, -1, 45, 46,
+ -1, 47, 48, 49, -1, -1, 50, -1,
+ -1, -1, -1, -1, 51, -1, -1, -1,
+ -1, 52, -1, -1, -1, -1, 53, -1,
+ -1, 54, 55, -1, -1, 56, -1, -1,
+ -1, 57, 58, 59, -1, -1, -1, -1,
+ -1, -1, 60, -1, 61, 62, -1, -1,
+ -1, -1, -1, 63, -1, 64, -1, 65,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 0, -1, 1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 2, -1, -1,
- -1, 3, -1, 4, -1, -1, -1, -1,
- 5, -1, -1, -1, -1, -1, 6, -1,
- -1, -1, -1, -1, -1, -1, 7, -1,
- -1, -1, -1, 8, -1, -1, 9, -1,
- -1, -1, -1, -1, -1, -1, 10, -1,
- -1, -1, -1, -1, -1, 11, -1, 12,
- -1, 13, -1, -1, -1, -1, -1, 14,
- -1, -1, -1, -1, -1, -1, 15, -1,
- -1, 16, -1, 17, -1, -1, 18, 19,
- -1, -1, -1, -1, 20, -1, 21, -1,
- -1, -1, -1, -1, -1, -1, -1, 22,
- 23, 24, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 25, -1, -1, -1, -1,
- -1, -1, -1, 26, -1, -1, -1, -1,
- -1, -1, -1, 27, 28, 29, -1, -1,
- -1, -1, 30, -1, -1, -1, -1, 31,
- -1, 32, -1, 33, -1, 34, -1, -1,
- -1, -1, 35, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 36, -1, -1, 37, 38, -1, -1,
- -1, 39, 40, -1, -1, -1, -1, 41,
- -1, -1, -1, 42, -1, 43, -1, -1,
- -1, -1, -1, -1, -1, 44, 45, -1,
- -1, -1, -1, -1, 46, -1, -1, -1,
- 47, -1, -1, -1, -1, -1, 48, 49,
- -1, 50, -1, -1, -1, -1, 51, -1,
- -1, -1, 52, -1, -1, -1, -1, 53,
- -1, -1, 54, -1, 55, 56, -1, 57,
- -1, -1, 58, -1, -1, -1, -1, 59,
- -1, 60, 61, 62, 63, 64, -1, -1,
- 65, -455, -114, -2, -1, -1, 68, -1,
- -1, -1, -1, -1, -1, -1, -1, 69,
- 70, -1, 71, -1, -1, 72, 73, -1,
- -1, -1, -1, -1, 74, -1, -1, -1,
- -1, -1, 75, -1, 76, -1, -1, -1,
- 77, -1, -1, -1, 78, -1, 79, 80,
- -1, 81, 82, -1, -1, -1, -1, -1,
- 83, -1, -1, -1, -1, -1, -1, 84,
- 85, -1, -1, -1, 86, -1, -1, -1,
+ -1, -1, -1, 66, -411, -114, -2, -1,
+ -1, 69, -1, -1, -1, -1, 70, 71,
+ -1, -1, -1, -1, -1, 72, -1, 73,
+ 74, -1, 75, 76, -1, -1, -1, 77,
+ 78, -1, -1, 79, 80, 81, 82, 83,
+ 84, 85, 86, -1, 87, -1, -1, -1,
+ 88, 89, -1, -1, -1, -1, 90, 91,
+ -1, 92, -1, -1, 93, -1, 94, -1,
+ -1, -1, 95, -1, 96, -1, -1, -1,
+ -1, -1, 97, -1, 98, -1, -1, -1,
+ -1, -1, 99, -1, 100, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 87, 88, -1, -1, -1, -1,
- -1, 89, 90, -1, -1, -1, 91, -1,
- 92, -1, -1, 93, -1, -1, -1, -1,
+ 101, -1, -1, -1, -1, -1, -1, 102,
+ -1, -1, -1, -1, -1, 103, -1, -1,
+ -1, 104, 105, 106, 107, -1, -1, 108,
+ -1, -1, -1, -1, -1, -1, -1, 109,
+ -1, -1, 110, -1, -1, -1, -1, 111,
+ -1, -1, -1, 112, -1, -1, -1, 113,
+ 114, -1, -1, -1, 115, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1,
+ 117, 118, -1, -1, -1, -1, -1, -1,
+ -1, -1, 119, 120, -1, -1, -1, 121,
+ 122, -1, 123, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- 94, -1, -1, -1, -1, 95, -1, 96,
+ -1, 124, 125, -1, -1, 126, 127, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 97, 98, 99, -1, -1, 100, -1,
- -1, 101, -1, 102, 103, 104, -1, 105,
+ -1, -1, 128, -1, 129, -1, -1, 130,
+ 131, 132, -1, 133, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- 106, -1, -1, -1, -1, 107, -1, -1,
- 108, -1, -1, -1, -1, 109, -1, -1,
- -1, -1, 110, -1, -1, -1, -1, -1,
- 111, -1, 112, 113, -1, -1, 114, -1,
- -1, 115, 116, -1, -1, -1, -1, -1,
- -1, 117, 118, -1, -1, -1, -1, -1,
- -1, 119, -1, -1, 120, 121, -1, -1,
- -1, -1, 122, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 123,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 124, -1, -1, -1, -1,
- 125, -1, -1, -1, 126, -1, -1, -1,
- 127, -1, -1, -1, -1, 128, -1, -1,
- -1, -1, -1, -1, 129, -1, -1, 130,
- -1, -1, -1, -1, -1, 131, -1, -1,
- -1, -1, -1, 132, -1, -1, -1, -1,
+ -1, -1, 134, -1, -1, 135, -1, 136,
+ 137, 138, -1, -1, -1, -1, -1, -1,
+ -1, 139, -1, -1, -1, -1, 140, 141,
+ -1, -1, -1, -1, -1, 142, 143, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- 133, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 134, -1, -1, -1, -1, -1,
- -1, 135, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 136,
+ 144, 145, -1, 146, -1, -1, -1, 147,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 137, -1, 138, -1,
- -1, -1, -1, -1, 139, 140, -1, -1,
- -1, -1, 141, -1, -1, 142, -1, -1,
- -1, -1, 143, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 144,
- 145, -1, -1, -1, -1, -1, 146, -1,
- -1, -1, 147, 148, 149, -1, -1, -1,
- 150, -1, -1, 151, -1, 152, 153, -1,
- 154, -1, 155, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 156, 157, -1, -1,
+ -1, 148, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 158, -1, -1, -1, -1, 159, -1,
+ -1, -1, -1, -1, -1, -1, 149, 150,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 160, -1, 161, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 162, -1, -1,
- -1, 163, -1, -1, -1, -1, 164, -1,
- -1, 165, 166, 167, -1, -1, -1, -1,
+ -1, 151, -1, -1, -1, -1, 152, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 168, -1, -1, -1, -1, -1,
+ -1, -1, -1, 153, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 154, -1, -1,
+ -1, -1, -1, -1, -1, 155, 156, 157,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 169, -1, -1, -1,
+ -1, -1, 158, -1, -1, -1, 159, -1,
+ 160, 161, -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, 162, -1, -1, -1,
+ -1, -1, -1, 163, 164, -1, -1, -1,
+ 165, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 166, -1, -1,
+ 167, -1, -1, -1, 168, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 169, -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, 170, -1, -1, -1,
- -1, -1, -1, 171, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 170, -1, -1,
+ -1, -1, 171, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 172, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 173, -1, -1,
+ -1, -1, -1, -1, -1, 172, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 174, -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, 173, 174, -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, 175, -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, 176, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 177,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 178,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
@@ -416,21 +416,18 @@ 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, 175, -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, 176, -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, 177, -1, -1, -1, -1, -1, -1,
+ -1, 179, -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, 178, -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,
@@ -466,7 +463,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, -1, -1, 179
+ -1, -1, -1, -1, -1, 180
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
@@ -631,6 +628,7 @@ static const char * const attrList[] = {
"ONSCROLL",
"ONSEARCH",
"ONSELECT",
+ "ONSELECTSTART",
"ONSUBMIT",
"ONUNLOAD",
"OVERSRC",
diff --git a/WebCore/khtml/misc/htmlattrs.h b/WebCore/khtml/misc/htmlattrs.h
index 9500624..313acf4 100644
--- a/WebCore/khtml/misc/htmlattrs.h
+++ b/WebCore/khtml/misc/htmlattrs.h
@@ -132,62 +132,63 @@ htmlattrs.in by makeattrs, do not edit */
#define ATTR_ONSCROLL 123
#define ATTR_ONSEARCH 124
#define ATTR_ONSELECT 125
-#define ATTR_ONSUBMIT 126
-#define ATTR_ONUNLOAD 127
-#define ATTR_OVERSRC 128
-#define ATTR_PAGEX 129
-#define ATTR_PAGEY 130
-#define ATTR_PLACEHOLDER 131
-#define ATTR_PLAIN 132
-#define ATTR_PLUGINPAGE 133
-#define ATTR_PLUGINSPAGE 134
-#define ATTR_PLUGINURL 135
-#define ATTR_PRECISION 136
-#define ATTR_PROFILE 137
-#define ATTR_PROMPT 138
-#define ATTR_READONLY 139
-#define ATTR_REL 140
-#define ATTR_RESULTS 141
-#define ATTR_REV 142
-#define ATTR_ROWS 143
-#define ATTR_ROWSPAN 144
-#define ATTR_RULES 145
-#define ATTR_SCHEME 146
-#define ATTR_SCOPE 147
-#define ATTR_SCROLLAMOUNT 148
-#define ATTR_SCROLLDELAY 149
-#define ATTR_SCROLLING 150
-#define ATTR_SELECTED 151
-#define ATTR_SHAPE 152
-#define ATTR_SIZE 153
-#define ATTR_SPAN 154
-#define ATTR_SRC 155
-#define ATTR_STANDBY 156
-#define ATTR_START 157
-#define ATTR_STYLE 158
-#define ATTR_SUMMARY 159
-#define ATTR_TABINDEX 160
-#define ATTR_TABLEBORDER 161
-#define ATTR_TARGET 162
-#define ATTR_TEXT 163
-#define ATTR_TITLE 164
-#define ATTR_TOP 165
-#define ATTR_TOPMARGIN 166
-#define ATTR_TRUESPEED 167
-#define ATTR_TYPE 168
-#define ATTR_UNKNOWN 169
-#define ATTR_USEMAP 170
-#define ATTR_VALIGN 171
-#define ATTR_VALUE 172
-#define ATTR_VALUETYPE 173
-#define ATTR_VERSION 174
-#define ATTR_VISIBILITY 175
-#define ATTR_VLINK 176
-#define ATTR_VSPACE 177
-#define ATTR_WIDTH 178
-#define ATTR_WRAP 179
-#define ATTR_Z_INDEX 180
-#define ATTR_LAST_ATTR 180
+#define ATTR_ONSELECTSTART 126
+#define ATTR_ONSUBMIT 127
+#define ATTR_ONUNLOAD 128
+#define ATTR_OVERSRC 129
+#define ATTR_PAGEX 130
+#define ATTR_PAGEY 131
+#define ATTR_PLACEHOLDER 132
+#define ATTR_PLAIN 133
+#define ATTR_PLUGINPAGE 134
+#define ATTR_PLUGINSPAGE 135
+#define ATTR_PLUGINURL 136
+#define ATTR_PRECISION 137
+#define ATTR_PROFILE 138
+#define ATTR_PROMPT 139
+#define ATTR_READONLY 140
+#define ATTR_REL 141
+#define ATTR_RESULTS 142
+#define ATTR_REV 143
+#define ATTR_ROWS 144
+#define ATTR_ROWSPAN 145
+#define ATTR_RULES 146
+#define ATTR_SCHEME 147
+#define ATTR_SCOPE 148
+#define ATTR_SCROLLAMOUNT 149
+#define ATTR_SCROLLDELAY 150
+#define ATTR_SCROLLING 151
+#define ATTR_SELECTED 152
+#define ATTR_SHAPE 153
+#define ATTR_SIZE 154
+#define ATTR_SPAN 155
+#define ATTR_SRC 156
+#define ATTR_STANDBY 157
+#define ATTR_START 158
+#define ATTR_STYLE 159
+#define ATTR_SUMMARY 160
+#define ATTR_TABINDEX 161
+#define ATTR_TABLEBORDER 162
+#define ATTR_TARGET 163
+#define ATTR_TEXT 164
+#define ATTR_TITLE 165
+#define ATTR_TOP 166
+#define ATTR_TOPMARGIN 167
+#define ATTR_TRUESPEED 168
+#define ATTR_TYPE 169
+#define ATTR_UNKNOWN 170
+#define ATTR_USEMAP 171
+#define ATTR_VALIGN 172
+#define ATTR_VALUE 173
+#define ATTR_VALUETYPE 174
+#define ATTR_VERSION 175
+#define ATTR_VISIBILITY 176
+#define ATTR_VLINK 177
+#define ATTR_VSPACE 178
+#define ATTR_WIDTH 179
+#define ATTR_WRAP 180
+#define ATTR_Z_INDEX 181
+#define ATTR_LAST_ATTR 181
DOM::DOMString getAttrName(unsigned short id);
#endif
diff --git a/WebCore/khtml/misc/htmlattrs.in b/WebCore/khtml/misc/htmlattrs.in
index 38f6417..657489c 100644
--- a/WebCore/khtml/misc/htmlattrs.in
+++ b/WebCore/khtml/misc/htmlattrs.in
@@ -123,6 +123,7 @@ onresize
onscroll
onsearch
onselect
+onselectstart
onsubmit
onunload
oversrc
diff --git a/WebCore/khtml/rendering/render_object.cpp b/WebCore/khtml/rendering/render_object.cpp
index 0258b4a..6d460bf 100644
--- a/WebCore/khtml/rendering/render_object.cpp
+++ b/WebCore/khtml/rendering/render_object.cpp
@@ -30,6 +30,7 @@
#include "rendering/render_list.h"
#include "rendering/render_canvas.h"
#include "xml/dom_elementimpl.h"
+#include "xml/dom2_eventsimpl.h"
#include "xml/dom_docimpl.h"
#include "xml/dom_position.h"
#include "css/cssstyleselector.h"
@@ -1370,12 +1371,20 @@ void RenderObject::dump(QTextStream *stream, QString ind) const
bool RenderObject::shouldSelect() const
{
const RenderObject* curr = this;
+ DOM::NodeImpl *node = 0;
+
while (curr) {
if (!curr->style()->userSelect())
return false;
+ if (!node)
+ node = curr->element();
curr = curr->parent();
}
- return true;
+
+ // somewhere up the render tree there must be an element!
+ assert(node);
+
+ return node->dispatchHTMLEvent(DOM::EventImpl::SELECTSTART_EVENT, true, true);
}
DOM::NodeImpl* RenderObject::draggableNode(bool dhtmlOK, bool uaOK, bool& dhtmlWillDrag) const
diff --git a/WebCore/khtml/xml/dom2_eventsimpl.cpp b/WebCore/khtml/xml/dom2_eventsimpl.cpp
index 66b895f..bb9fb19 100644
--- a/WebCore/khtml/xml/dom2_eventsimpl.cpp
+++ b/WebCore/khtml/xml/dom2_eventsimpl.cpp
@@ -209,6 +209,8 @@ EventImpl::EventId EventImpl::typeToId(DOMString type)
return DRAG_EVENT;
else if (type == "dragend")
return DRAGEND_EVENT;
+ else if (type == "selectstart")
+ return SELECTSTART_EVENT;
else if (type == "DOMSubtreeModified")
return DOMSUBTREEMODIFIED_EVENT;
else if (type == "DOMNodeInserted")
@@ -315,6 +317,8 @@ DOMString EventImpl::idToType(EventImpl::EventId id)
return "drag";
case DRAGEND_EVENT:
return "dragend";
+ case SELECTSTART_EVENT:
+ return "selectstart";
case DOMSUBTREEMODIFIED_EVENT:
return "DOMSubtreeModified";
case DOMNODEINSERTED_EVENT:
diff --git a/WebCore/khtml/xml/dom2_eventsimpl.h b/WebCore/khtml/xml/dom2_eventsimpl.h
index 22880d4..a620476 100644
--- a/WebCore/khtml/xml/dom2_eventsimpl.h
+++ b/WebCore/khtml/xml/dom2_eventsimpl.h
@@ -75,6 +75,8 @@ public:
DRAGSTART_EVENT,
DRAG_EVENT,
DRAGEND_EVENT,
+ // IE selection events
+ SELECTSTART_EVENT,
// Mutation events
DOMSUBTREEMODIFIED_EVENT,
DOMNODEINSERTED_EVENT,
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list