| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 /** | 5 /** |
| 6 * @fileoverview This is a simple pure JS event class that can be used with | 6 * @fileoverview This provides a nicer way to create events than what DOM |
| 7 * {@code cr.ui.EventTarget}. It should not be used with DOM EventTargets. | 7 * provides. These events can be used with DOM EventTarget interfaces as well |
| 8 * as with {@code cr.EventTarget}. |
| 8 */ | 9 */ |
| 9 | 10 |
| 10 cr.define('cr', function() { | 11 cr.define('cr', function() { |
| 11 | 12 |
| 12 // cr.Event is called CustomEvent in here to prevent naming conflicts. We | 13 // cr.Event is called CrEvent in here to prevent naming conflicts. We also |
| 13 // alse store the original Event in case someone does a global alias of | 14 // store the original Event in case someone does a global alias of cr.Event. |
| 14 // cr.Event. | |
| 15 | 15 |
| 16 const DomEvent = Event; | 16 const DomEvent = Event; |
| 17 | 17 |
| 18 /** | 18 /** |
| 19 * Creates a new event to be used with cr.EventTarget or DOM EventTarget | 19 * Creates a new event to be used with cr.EventTarget or DOM EventTarget |
| 20 * objects. | 20 * objects. |
| 21 * @param {string} type The name of the event. | 21 * @param {string} type The name of the event. |
| 22 * @param {boolean=} | 22 * @param {boolean=} opt_bubbles Whether the event bubbles. Default is false. |
| 23 * @param {boolean=} opt_preventable Whether the default action of the event |
| 24 * can be prevented. |
| 23 * @constructor | 25 * @constructor |
| 26 * @extends {DomEvent} |
| 24 */ | 27 */ |
| 25 function CustomEvent(type, opt_bubbles, opt_capture) { | 28 function CrEvent(type, opt_bubbles, opt_preventable) { |
| 26 var e = cr.doc.createEvent('Event'); | 29 var e = cr.doc.createEvent('Event'); |
| 27 e.initEvent(type, !!opt_bubbles, !!opt_capture); | 30 e.initEvent(type, !!opt_bubbles, !!opt_preventable); |
| 28 e.__proto__ = CustomEvent.prototype; | 31 e.__proto__ = CrEvent.prototype; |
| 29 return e; | 32 return e; |
| 30 } | 33 } |
| 31 | 34 |
| 32 CustomEvent.prototype = { | 35 CrEvent.prototype = { |
| 33 __proto__: DomEvent.prototype | 36 __proto__: DomEvent.prototype |
| 34 }; | 37 }; |
| 35 | 38 |
| 36 // Export | 39 // Export |
| 37 return { | 40 return { |
| 38 Event: CustomEvent | 41 Event: CrEvent |
| 39 }; | 42 }; |
| 40 }); | 43 }); |
| OLD | NEW |