incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Patrick Mueller (Created) (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CB-514) Do we need to monkey patch addEventListener()?
Date Sat, 14 Apr 2012 21:17:18 GMT
Do we need to monkey patch addEventListener()?
----------------------------------------------

                 Key: CB-514
                 URL: https://issues.apache.org/jira/browse/CB-514
             Project: Apache Callback
          Issue Type: Bug
          Components: CordovaJS
            Reporter: Patrick Mueller
            Assignee: Filip Maj


discussion here: http://markmail.org/message/mghdkbumdyjhmaye

I noticed in cordova.js we override the following messages on window/document:

{noformat}
document.addEventListener = function(evt, handler, capture) {...}
window.addEventListener = function(evt, handler, capture) {...}
document.removeEventListener = function(evt, handler, capture) {...}
window.removeEventListener = function(evt, handler, capture) {...}
{noformat}

aka as "monkey patching".  

Apparently, we aren't sure why we're doing this.  My guess is that we've done this in the
past when dispatching user-land events wasn't possible, and so trapping listeners was the
only way to get the listeners so you could send them events.

It would be nice to remove this monkey patching, if we can, by using:

{noformat}
event = document.createEvent('Events')
event.initEvent(blah)

window.dispatchEvent(event)
// or document.dispatchEvent(event)
{noformat}

We'll need to figure out if this works on all our platforms.  Even if it doesn't work on all
of them, I think we should only use monkey patching on platforms that we have to.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message