| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 var exceptionHandler = require('uncaught_exception_handler'); | 5 var exceptionHandler = require('uncaught_exception_handler'); |
| 6 var eventNatives = requireNative('event_natives'); | 6 var eventNatives = requireNative('event_natives'); |
| 7 var logging = requireNative('logging'); | 7 var logging = requireNative('logging'); |
| 8 var schemaRegistry = requireNative('schema_registry'); | 8 var schemaRegistry = requireNative('schema_registry'); |
| 9 var sendRequest = require('sendRequest').sendRequest; | 9 var sendRequest = require('sendRequest').sendRequest; |
| 10 var utils = require('utils'); | 10 var utils = require('utils'); |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 | 66 |
| 67 // Handles adding/removing/dispatching listeners for unfiltered events. | 67 // Handles adding/removing/dispatching listeners for unfiltered events. |
| 68 var UnfilteredAttachmentStrategy = function(event) { | 68 var UnfilteredAttachmentStrategy = function(event) { |
| 69 this.event_ = event; | 69 this.event_ = event; |
| 70 }; | 70 }; |
| 71 | 71 |
| 72 UnfilteredAttachmentStrategy.prototype.onAddedListener = | 72 UnfilteredAttachmentStrategy.prototype.onAddedListener = |
| 73 function(listener) { | 73 function(listener) { |
| 74 // Only attach / detach on the first / last listener removed. | 74 // Only attach / detach on the first / last listener removed. |
| 75 if (this.event_.listeners.length == 0) | 75 if (this.event_.listeners.length == 0) |
| 76 eventNatives.AttachEvent(this.event_.eventName); | 76 eventNatives.AttachEvent( |
| 77 this.event_.eventName, this.event_.webViewInstanceId); |
| 77 }; | 78 }; |
| 78 | 79 |
| 79 UnfilteredAttachmentStrategy.prototype.onRemovedListener = | 80 UnfilteredAttachmentStrategy.prototype.onRemovedListener = |
| 80 function(listener) { | 81 function(listener) { |
| 81 if (this.event_.listeners.length == 0) | 82 if (this.event_.listeners.length == 0) |
| 82 this.detach(true); | 83 this.detach(true); |
| 83 }; | 84 }; |
| 84 | 85 |
| 85 UnfilteredAttachmentStrategy.prototype.detach = function(manual) { | 86 UnfilteredAttachmentStrategy.prototype.detach = function(manual) { |
| 86 eventNatives.DetachEvent(this.event_.eventName, manual); | 87 eventNatives.DetachEvent(this.event_.eventName, manual); |
| (...skipping 430 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 517 'removeRules', | 518 'removeRules', |
| 518 'getRules' | 519 'getRules' |
| 519 ] }); | 520 ] }); |
| 520 | 521 |
| 521 // NOTE: Event is (lazily) exposed as chrome.Event from dispatcher.cc. | 522 // NOTE: Event is (lazily) exposed as chrome.Event from dispatcher.cc. |
| 522 exports.Event = Event; | 523 exports.Event = Event; |
| 523 | 524 |
| 524 exports.dispatchEvent = dispatchEvent; | 525 exports.dispatchEvent = dispatchEvent; |
| 525 exports.parseEventOptions = parseEventOptions; | 526 exports.parseEventOptions = parseEventOptions; |
| 526 exports.registerArgumentMassager = registerArgumentMassager; | 527 exports.registerArgumentMassager = registerArgumentMassager; |
| OLD | NEW |