diff options
author | Daniel Silverstone <dsilvers@netsurf-browser.org> | 2012-03-24 22:16:06 +0000 |
---|---|---|
committer | Daniel Silverstone <dsilvers@netsurf-browser.org> | 2012-03-24 22:16:06 +0000 |
commit | c7ee7cbfa7a2afebda4748e4dbebfb6f7a21e1b3 (patch) | |
tree | 5a446f28caf1180294359fa8500ffe5612d6f2f7 /src/core | |
parent | 96bcea6686d76ec85c05589417000b653dd6d9dd (diff) | |
download | libdom-c7ee7cbfa7a2afebda4748e4dbebfb6f7a21e1b3.tar.gz libdom-c7ee7cbfa7a2afebda4748e4dbebfb6f7a21e1b3.tar.bz2 |
Migrate quirks from html_document to document
svn path=/trunk/libdom/; revision=13633
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/document.c | 17 | ||||
-rw-r--r-- | src/core/document.h | 14 |
2 files changed, 29 insertions, 2 deletions
diff --git a/src/core/document.c b/src/core/document.c index fbdaa7a..ef2a54e 100644 --- a/src/core/document.c +++ b/src/core/document.c @@ -131,6 +131,7 @@ dom_exception _dom_document_initialise(dom_document *doc, list_init(&doc->pending_nodes); doc->id_name = NULL; + doc->quirks = DOM_DOCUMENT_QUIRKS_MODE_NONE; err = dom_string_create_interned((const uint8_t *) "class", SLEN("class"), &doc->class_string); @@ -1374,3 +1375,19 @@ void _dom_document_set_id_name(dom_document *doc, dom_string *name) doc->id_name = dom_string_ref(name); } +/*-----------------------------------------------------------------------*/ +/* Semi-internal API extensions for NetSurf */ + +dom_exception _dom_document_get_quirks_mode(dom_document *doc, + dom_document_quirks_mode *result) +{ + *result = doc->quirks; + return DOM_NO_ERR; +} + +dom_exception _dom_document_set_quirks_mode(dom_document *doc, + dom_document_quirks_mode quirks) +{ + doc->quirks = quirks; + return DOM_NO_ERR; +} diff --git a/src/core/document.h b/src/core/document.h index a53c358..d8e6945 100644 --- a/src/core/document.h +++ b/src/core/document.h @@ -55,7 +55,9 @@ struct dom_document { dom_string *class_string; /**< The string "class". */ dom_document_event_internal dei; - /**< The DocumentEVent interface */ + /**< The DocumentEvent interface */ + dom_document_quirks_mode quirks; + /**< Document is in quirks mode */ }; /* Create a DOM document */ @@ -139,6 +141,11 @@ dom_exception _dom_document_rename_node(dom_document *doc, dom_node *node, dom_string *namespace, dom_string *qname, dom_node **result); +dom_exception _dom_document_get_quirks_mode(dom_document *doc, + dom_document_quirks_mode *result); +dom_exception _dom_document_set_quirks_mode(dom_document *doc, + dom_document_quirks_mode result); + dom_exception _dom_document_get_text_content(dom_node_internal *node, dom_string **result); @@ -176,7 +183,10 @@ dom_exception _dom_document_set_text_content(dom_node_internal *node, _dom_document_adopt_node, \ _dom_document_get_dom_config, \ _dom_document_normalize, \ - _dom_document_rename_node + _dom_document_rename_node, \ + _dom_document_get_quirks_mode, \ + _dom_document_set_quirks_mode + /* End of vtable */ #define DOM_NODE_VTABLE_DOCUMENT \ |