Gitweb links:

...log 
http://git.netsurf-browser.org/netsurf.git/shortlog/4f9a373960a7bfdcc586d1b90bc75a8aea282aa7
...commit 
http://git.netsurf-browser.org/netsurf.git/commit/4f9a373960a7bfdcc586d1b90bc75a8aea282aa7
...tree 
http://git.netsurf-browser.org/netsurf.git/tree/4f9a373960a7bfdcc586d1b90bc75a8aea282aa7

The branch, master has been updated
       via  4f9a373960a7bfdcc586d1b90bc75a8aea282aa7 (commit)
      from  2739a47d83c44ae3aac13d11f17ce5fbefc4c5a2 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commitdiff 
http://git.netsurf-browser.org/netsurf.git/commit/?id=4f9a373960a7bfdcc586d1b90bc75a8aea282aa7
commit 4f9a373960a7bfdcc586d1b90bc75a8aea282aa7
Author: Daniel Silverstone <[email protected]>
Commit: Daniel Silverstone <[email protected]>

    Support Document::createEvent()
    
    Signed-off-by: Daniel Silverstone <[email protected]>

diff --git a/content/handlers/javascript/duktape/Document.bnd 
b/content/handlers/javascript/duktape/Document.bnd
index f94a4e4..23e0425 100644
--- a/content/handlers/javascript/duktape/Document.bnd
+++ b/content/handlers/javascript/duktape/Document.bnd
@@ -320,6 +320,23 @@ getter Document::cookie()
        return 0;
 %}
 
+method Document::createEvent ()
+%{
+       /* Create a new event, mark it untrusted since it's new from JS */
+       dom_event *evt = NULL;
+       dom_exception exc;
+
+       exc = dom_event_create(&evt);
+       if (exc != DOM_NO_ERR) return 0;
+       exc = dom_event_set_is_trusted(evt, false);
+       if (exc != DOM_NO_ERR) { dom_event_unref(evt); return 0; }
+
+       dukky_push_event(ctx, evt);
+
+       dom_event_unref(evt);
+       return 1;
+%}
+
 getter Document::onabort();
 setter Document::onabort();
 getter Document::onautocompleteerror();
diff --git a/content/handlers/javascript/duktape/dukky.c 
b/content/handlers/javascript/duktape/dukky.c
index 750d14b..5b3c12b 100644
--- a/content/handlers/javascript/duktape/dukky.c
+++ b/content/handlers/javascript/duktape/dukky.c
@@ -736,7 +736,7 @@ handle_error:
 
 /*** New style event handling ***/
 
-static void dukky_push_event(duk_context *ctx, dom_event *evt)
+void dukky_push_event(duk_context *ctx, dom_event *evt)
 {
        /* ... */
        duk_get_global_string(ctx, EVENT_MAGIC);
diff --git a/content/handlers/javascript/duktape/dukky.h 
b/content/handlers/javascript/duktape/dukky.h
index 7e8a786..ee9f474 100644
--- a/content/handlers/javascript/duktape/dukky.h
+++ b/content/handlers/javascript/duktape/dukky.h
@@ -36,6 +36,7 @@ void dukky_register_event_listener_for(duk_context *ctx,
 bool dukky_get_current_value_of_event_handler(duk_context *ctx,
                                              dom_string *name,
                                              dom_event_target *et);
+void dukky_push_event(duk_context *ctx, dom_event *evt);
 bool dukky_event_target_push_listeners(duk_context *ctx, bool dont_create);
 
 typedef enum {


-----------------------------------------------------------------------

Summary of changes:
 content/handlers/javascript/duktape/Document.bnd |   17 +++++++++++++++++
 content/handlers/javascript/duktape/dukky.c      |    2 +-
 content/handlers/javascript/duktape/dukky.h      |    1 +
 3 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/content/handlers/javascript/duktape/Document.bnd 
b/content/handlers/javascript/duktape/Document.bnd
index f94a4e4..23e0425 100644
--- a/content/handlers/javascript/duktape/Document.bnd
+++ b/content/handlers/javascript/duktape/Document.bnd
@@ -320,6 +320,23 @@ getter Document::cookie()
        return 0;
 %}
 
+method Document::createEvent ()
+%{
+       /* Create a new event, mark it untrusted since it's new from JS */
+       dom_event *evt = NULL;
+       dom_exception exc;
+
+       exc = dom_event_create(&evt);
+       if (exc != DOM_NO_ERR) return 0;
+       exc = dom_event_set_is_trusted(evt, false);
+       if (exc != DOM_NO_ERR) { dom_event_unref(evt); return 0; }
+
+       dukky_push_event(ctx, evt);
+
+       dom_event_unref(evt);
+       return 1;
+%}
+
 getter Document::onabort();
 setter Document::onabort();
 getter Document::onautocompleteerror();
diff --git a/content/handlers/javascript/duktape/dukky.c 
b/content/handlers/javascript/duktape/dukky.c
index 750d14b..5b3c12b 100644
--- a/content/handlers/javascript/duktape/dukky.c
+++ b/content/handlers/javascript/duktape/dukky.c
@@ -736,7 +736,7 @@ handle_error:
 
 /*** New style event handling ***/
 
-static void dukky_push_event(duk_context *ctx, dom_event *evt)
+void dukky_push_event(duk_context *ctx, dom_event *evt)
 {
        /* ... */
        duk_get_global_string(ctx, EVENT_MAGIC);
diff --git a/content/handlers/javascript/duktape/dukky.h 
b/content/handlers/javascript/duktape/dukky.h
index 7e8a786..ee9f474 100644
--- a/content/handlers/javascript/duktape/dukky.h
+++ b/content/handlers/javascript/duktape/dukky.h
@@ -36,6 +36,7 @@ void dukky_register_event_listener_for(duk_context *ctx,
 bool dukky_get_current_value_of_event_handler(duk_context *ctx,
                                              dom_string *name,
                                              dom_event_target *et);
+void dukky_push_event(duk_context *ctx, dom_event *evt);
 bool dukky_event_target_push_listeners(duk_context *ctx, bool dont_create);
 
 typedef enum {


-- 
NetSurf Browser

_______________________________________________
netsurf-commits mailing list
[email protected]
http://listmaster.pepperfish.net/cgi-bin/mailman/listinfo/netsurf-commits-netsurf-browser.org

Reply via email to