summaryrefslogtreecommitdiff
path: root/javascript/jsapi/htmldocument.bnd
diff options
context:
space:
mode:
authorOle Loots <ole@monochrom.net>2013-01-31 19:28:26 +0100
committerOle Loots <ole@monochrom.net>2013-01-31 19:28:26 +0100
commit0703404654d2a40cacae2d94c6e0e22ca28b4acf (patch)
treebfdbe1e8952814f73a6b0e190ae0a77fd0cfc7bd /javascript/jsapi/htmldocument.bnd
parent54f719aa960159c5b1978846223732c9669ca7fa (diff)
parent89856f55929907642013e45435b9d18cd1fafe36 (diff)
downloadnetsurf-mono/removing-windom-dependency.tar.gz
netsurf-mono/removing-windom-dependency.tar.bz2
Merge branch 'master' into mono/removing-windom-dependencymono/removing-windom-dependency
Conflicts: atari/toolbar.c
Diffstat (limited to 'javascript/jsapi/htmldocument.bnd')
-rw-r--r--javascript/jsapi/htmldocument.bnd50
1 files changed, 40 insertions, 10 deletions
diff --git a/javascript/jsapi/htmldocument.bnd b/javascript/jsapi/htmldocument.bnd
index 8d5c69eb5..4aacccf4e 100644
--- a/javascript/jsapi/htmldocument.bnd
+++ b/javascript/jsapi/htmldocument.bnd
@@ -52,6 +52,9 @@ binding document {
/** location instantiated on first use */
property unshared location;
+ /* compatability mode instantiated on first use */
+ property unshared compatMode;
+
/* events through a single interface */
property unshared type EventHandler;
}
@@ -66,7 +69,7 @@ api finalise %{
getter location %{
- if (!JSVAL_IS_VOID(JSAPI_PROP_RVAL(cx,vp))) {
+ if (!JSVAL_IS_VOID(JSAPI_PROP_RVAL(cx, vp))) {
/* already created - return it */
return JS_TRUE;
}
@@ -95,6 +98,32 @@ getter documentURI %{
jsret = JSVAL_TO_STRING(jsstr);
%}
+
+getter compatMode %{
+ /* Returns the string "CSS1Compat" if document is in no-quirks
+ * mode or limited-quirks mode, and "BackCompat", if document
+ * is in quirks mode.
+ */
+ if (!JSVAL_IS_VOID(JSAPI_PROP_RVAL(cx, vp))) {
+ /* already created, just use it */
+ return JS_TRUE;
+ }
+ if (private->htmlc->quirks == DOM_DOCUMENT_QUIRKS_MODE_FULL) {
+ jsret = JS_NewStringCopyN(cx, "BackCompat", SLEN("BackCompat"));
+ } else {
+ jsret = JS_NewStringCopyN(cx, "CSS1Compat", SLEN("CSS1Compat"));
+ }
+
+%}
+
+/*
+getter characterSet %{
+%}
+
+getter contentType %{
+%}
+*/
+
getter cookie %{
char *cookie_str;
cookie_str = urldb_get_cookie(llcache_handle_get_url(private->htmlc->base.llcache), false);
@@ -144,7 +173,7 @@ getter body %{
dom_node *body;
dom_exception exc;
- JSLOG("Getting your body");
+ JSDBG("Getting your body");
/* document (html) element */
exc = dom_document_get_document_element(private->node, &element);
@@ -160,7 +189,7 @@ getter body %{
dom_node_unref(element);
}
- JSLOG("returning jsobject %p",jsret);
+ JSDBG("returning jsobject %p",jsret);
%}
@@ -190,6 +219,7 @@ operation getElementById %{
* Dom 4 says this should return a htmlcollection, libdom currently
* returns DOM 3 spec of a nodelist
*/
+/* HTMLCollection Document::getElementsByTagName(DOMString localName); */
operation getElementsByTagName %{
dom_string *localName_dom;
/* dom_html_collection *collection;*/
@@ -236,7 +266,7 @@ operation createTextNode %{
if (data != NULL) {
- JSLOG("Creating text node for string \"%s\"", data);
+ JSDBG("Creating text node for string \"%s\"", data);
exc = dom_string_create((unsigned char*)data, data_len, &data_dom);
if (exc != DOM_NO_ERR) {
return JS_FALSE;
@@ -251,7 +281,7 @@ operation createTextNode %{
jsret = jsapi_new_Text(cx, NULL, NULL, text, private->htmlc);
}
- JSLOG("returning jsobject %p",jsret);
+ JSDBG("returning jsobject %p",jsret);
%}
@@ -263,7 +293,7 @@ operation createComment %{
if (data != NULL) {
- JSLOG("Creating string \"%s\"", data);
+ JSDBG("Creating string \"%s\"", data);
exc = dom_string_create((unsigned char*)data,
data_len,
&data_dom);
@@ -271,7 +301,7 @@ operation createComment %{
return JS_FALSE;
}
- JSLOG("Creating comment object for dom string \"%s\"",
+ JSDBG("Creating comment object for dom string \"%s\"",
dom_string_data(data_dom));
exc = dom_document_create_comment(private->node,
data_dom,
@@ -284,7 +314,7 @@ operation createComment %{
jsret = jsapi_new_Comment(cx, NULL, NULL, comment, private->htmlc);
}
- JSLOG("returning jsobject %p", jsret);
+ JSDBG("returning jsobject %p", jsret);
%}
@@ -295,7 +325,7 @@ operation createElement %{
dom_element *element;
if (localName != NULL) {
- JSLOG("Creating text node for string \"%s\"", localName);
+ JSDBG("Creating text node for string \"%s\"", localName);
exc = dom_string_create((unsigned char*)localName, localName_len, &localName_dom);
if (exc != DOM_NO_ERR) {
return JS_FALSE;
@@ -310,7 +340,7 @@ operation createElement %{
jsret = jsapi_new_HTMLElement(cx, NULL, NULL, element, private->htmlc);
}
- JSLOG("returning jsobject %p",jsret);
+ JSDBG("returning jsobject %p",jsret);
%}