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 = {} | |
8 | |
9 /** | |
10 * @return {string} | |
11 */ | |
12 WebInspector.FrameworksSupport.eventListenersSetupFunction = function() | |
13 { | |
yurys
2015/08/13 23:49:07
functionString = [...].join("\n");
kozy
2015/08/14 17:07:03
Done.
| |
14 var functionString = "(function(){\n"; | |
15 functionString += WebInspector.FrameworksSupport.setupFrameworksEventListene rs.toString() + "\nsetupFrameworksEventListeners();\n"; | |
16 functionString += WebInspector.FrameworksSupport.setupFrameworksEventHandler s.toString() + "\nsetupFrameworksEventHandlers();\n"; | |
17 functionString += "})();"; | |
18 return functionString; | |
19 } | |
20 | |
21 WebInspector.FrameworksSupport.setupFrameworksEventListeners = function setupFra meworksEventListeners() | |
22 { | |
23 self.devtoolsFrameworksEventListeners = self.devtoolsFrameworksEventListener s || []; | |
24 if (self.devtoolsFrameworksEventListeners._hasDevtoolsWrapper) | |
yurys
2015/08/13 23:49:07
Can we make front-end control that we evaluate thi
kozy
2015/08/14 17:07:03
Done.
| |
25 return; | |
26 | |
27 self.devtoolsFrameworksEventListeners.push(jQueryEventListeners); | |
28 self.devtoolsFrameworksEventListeners._hasDevtoolsWrapper = true; | |
29 | |
30 /** | |
31 * @param {!Object} node | |
32 * @return {!Array<!{type: string, listener: function(), useCapture: boolean }>} | |
33 */ | |
34 function jQueryEventListeners(node) | |
35 { | |
36 if (!(node instanceof Node)) | |
37 return []; | |
38 var hasJQuery = (typeof jQuery !== 'undefined') && jQuery.fn; | |
39 if (!hasJQuery) | |
40 return []; | |
41 var listeners = []; | |
42 var data = jQuery._data || jQuery.data; | |
43 if (typeof data === "function") { | |
44 var events = data(node, "events"); | |
45 for (var type in events) { | |
46 for (var key in events[type]) { | |
47 var frameworkListener = events[type][key]; | |
48 if (typeof frameworkListener === "object" || typeof framewor kListener === "function") { | |
49 var listener = { | |
50 handler: frameworkListener.handler || frameworkListe ner, | |
51 useCapture: true, | |
52 type: type | |
53 }; | |
54 listeners.push(listener); | |
55 } | |
56 } | |
57 } | |
58 } | |
59 var entry = jQuery(node)[0]; | |
60 if (entry) { | |
61 var entryEvents = entry["$events"]; | |
62 for (var type in entryEvents) { | |
63 var events = entryEvents[type]; | |
64 for (var key in events) { | |
65 if (typeof events[key] === "function") { | |
66 var listener = { | |
67 handler: events[key], | |
68 useCapture: true, | |
69 type: type | |
70 }; | |
71 listeners.push(listener); | |
72 } | |
73 } | |
74 } | |
75 } | |
76 return listeners; | |
77 } | |
78 } | |
79 | |
80 WebInspector.FrameworksSupport.setupFrameworksEventHandlers = function setupFram eworksEventHandlers() | |
81 { | |
82 self.devtoolsFrameworksEventHandlers = self.devtoolsFrameworksEventHandlers || []; | |
83 if (self.devtoolsFrameworksEventHandlers._hasDevtoolsWrapper) | |
84 return; | |
85 | |
86 self.devtoolsFrameworksEventHandlers.push(jQueryEventHandlers); | |
87 self.devtoolsFrameworksEventHandlers._hasDevtoolsWrapper = true; | |
88 | |
89 /** | |
90 * @param {!Object} node | |
91 * @return {!Array<function()>} | |
92 */ | |
93 function jQueryEventHandlers(node) | |
94 { | |
95 if (!(node instanceof Node)) | |
96 return []; | |
97 var hasJQuery = (typeof jQuery !== 'undefined') && jQuery.fn; | |
98 if (!hasJQuery) | |
99 return []; | |
100 var handlers = []; | |
101 var data = jQuery._data || jQuery.data; | |
102 if (typeof data === "function") { | |
103 var nodeData = data(node); | |
104 if (typeof nodeData.handle === "function") | |
105 handlers.push(nodeData.handle); | |
106 } | |
107 var entry = jQuery(node)[0]; | |
108 if (entry && entry["$handle"]) | |
109 handlers.push(entry["$handle"]); | |
110 return handlers; | |
111 } | |
112 } | |
OLD | NEW |