OLD | NEW |
---|---|
(Empty) | |
1 /* | |
2 * Copyright 2015 The Chromium Authors. All rights reserved. | |
3 * Use of this source code is governed by a BSD-style license that can be | |
4 * found in the LICENSE file. | |
5 */ | |
6 | |
7 WebInspector.FrameworksSupport = {} | |
dgozman
2015/08/14 19:02:25
EventListenersFrameworkSupport
kozy
2015/08/14 20:20:38
Done.
| |
8 | |
9 /** | |
10 * @return {string} | |
11 */ | |
12 WebInspector.FrameworksSupport.eventListenersInitializeFunction = function() | |
dgozman
2015/08/14 19:02:25
Let's make this |initializeOnExecutionContext(cont
kozy
2015/08/14 20:20:38
Done.
| |
13 { | |
14 return ["(function(){", | |
15 WebInspector.FrameworksSupport.initializeFrameworkUserEventListeners.toS tring(), | |
16 "initializeFrameworkUserEventListeners();", | |
17 WebInspector.FrameworksSupport.initializeFrameworkInternalEventHandlers. toString(), | |
18 "initializeFrameworkInternalEventHandlers();", | |
19 "})();"].join("\n"); | |
20 } | |
21 | |
22 WebInspector.FrameworksSupport.initializeFrameworkUserEventListeners = function initializeFrameworkUserEventListeners() | |
23 { | |
24 // We should call this function once per context. | |
25 self.devtoolsFrameworkUserEventListeners = self.devtoolsFrameworkUserEventLi steners || []; | |
26 self.devtoolsFrameworkUserEventListeners.push(jQueryUserEventListeners); | |
27 | |
28 /** | |
29 * @param {!Object} node | |
30 * @return {!Array<!{type: string, listener: function(), useCapture: boolean }>} | |
31 */ | |
32 function jQueryUserEventListeners(node) | |
33 { | |
34 if (!(node instanceof Node)) | |
35 return []; | |
36 var hasJQuery = (typeof jQuery !== 'undefined') && jQuery.fn; | |
37 if (!hasJQuery) | |
38 return []; | |
39 var listeners = []; | |
40 var data = jQuery._data || jQuery.data; | |
41 if (typeof data === "function") { | |
42 var events = data(node, "events"); | |
43 for (var type in events) { | |
44 for (var key in events[type]) { | |
45 var frameworkListener = events[type][key]; | |
46 if (typeof frameworkListener === "object" || typeof framewor kListener === "function") { | |
47 var listener = { | |
48 handler: frameworkListener.handler || frameworkListe ner, | |
49 useCapture: true, | |
50 type: type | |
51 }; | |
52 listeners.push(listener); | |
53 } | |
54 } | |
55 } | |
56 } | |
57 var entry = jQuery(node)[0]; | |
58 if (entry) { | |
59 var entryEvents = entry["$events"]; | |
60 for (var type in entryEvents) { | |
61 var events = entryEvents[type]; | |
62 for (var key in events) { | |
63 if (typeof events[key] === "function") { | |
64 var listener = { | |
65 handler: events[key], | |
66 useCapture: true, | |
67 type: type | |
68 }; | |
69 listeners.push(listener); | |
70 } | |
71 } | |
72 } | |
73 } | |
74 return listeners; | |
75 } | |
76 } | |
77 | |
78 WebInspector.FrameworksSupport.initializeFrameworkInternalEventHandlers = functi on initializeFrameworkInternalEventHandlers() | |
79 { | |
80 // We should call this function once per context. | |
81 self.devtoolsFrameworkInternalEventHandlers = self.devtoolsFrameworkInternal EventHandlers || []; | |
82 self.devtoolsFrameworkInternalEventHandlers.push(jQueryInternalEventHandlers ); | |
83 | |
84 /** | |
85 * @param {!Object} node | |
86 * @return {!Array<function()>} | |
87 */ | |
88 function jQueryInternalEventHandlers(node) | |
89 { | |
90 if (!(node instanceof Node)) | |
91 return []; | |
92 var hasJQuery = (typeof jQuery !== 'undefined') && jQuery.fn; | |
93 if (!hasJQuery) | |
94 return []; | |
95 var handlers = []; | |
96 var data = jQuery._data || jQuery.data; | |
97 if (typeof data === "function") { | |
98 var nodeData = data(node); | |
99 if (typeof nodeData.handle === "function") | |
100 handlers.push(nodeData.handle); | |
101 } | |
102 var entry = jQuery(node)[0]; | |
103 if (entry && entry["$handle"]) | |
104 handlers.push(entry["$handle"]); | |
105 return handlers; | |
106 } | |
107 } | |
OLD | NEW |