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 |