Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(196)

Side by Side Diff: Source/core/inspector/InspectorDOMAgent.cpp

Issue 842323005: DevTools: Clean up the Event Listeners pane data representation (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Remove listenerBody from the protocol Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Apple Inc. All rights reserved. 2 * Copyright (C) 2009 Apple Inc. All rights reserved.
3 * Copyright (C) 2011 Google Inc. All rights reserved. 3 * Copyright (C) 2011 Google Inc. All rights reserved.
4 * Copyright (C) 2009 Joseph Pecoraro 4 * Copyright (C) 2009 Joseph Pecoraro
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 9 *
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
(...skipping 1779 matching lines...) Expand 10 before | Expand all | Expand 10 after
1790 while (child) { 1790 while (child) {
1791 children->addItem(buildObjectForNode(child, depth, nodesMap)); 1791 children->addItem(buildObjectForNode(child, depth, nodesMap));
1792 child = innerNextSibling(child); 1792 child = innerNextSibling(child);
1793 } 1793 }
1794 return children.release(); 1794 return children.release();
1795 } 1795 }
1796 1796
1797 PassRefPtr<TypeBuilder::DOM::EventListener> InspectorDOMAgent::buildObjectForEve ntListener(const RegisteredEventListener& registeredEventListener, const AtomicS tring& eventType, Node* node, const String* objectGroupId) 1797 PassRefPtr<TypeBuilder::DOM::EventListener> InspectorDOMAgent::buildObjectForEve ntListener(const RegisteredEventListener& registeredEventListener, const AtomicS tring& eventType, Node* node, const String* objectGroupId)
1798 { 1798 {
1799 RefPtr<EventListener> eventListener = registeredEventListener.listener; 1799 RefPtr<EventListener> eventListener = registeredEventListener.listener;
1800 String sourceName;
1801 String scriptId; 1800 String scriptId;
1802 int lineNumber; 1801 int lineNumber;
1803 int columnNumber; 1802 int columnNumber;
1804 if (!eventListenerHandlerLocation(&node->document(), eventListener.get(), so urceName, scriptId, lineNumber, columnNumber)) 1803 if (!eventListenerHandlerLocation(&node->document(), eventListener.get(), sc riptId, lineNumber, columnNumber))
1805 return nullptr; 1804 return nullptr;
1806 1805
1807 Document& document = node->document(); 1806 Document& document = node->document();
1808 RefPtr<TypeBuilder::Debugger::Location> location = TypeBuilder::Debugger::Lo cation::create() 1807 RefPtr<TypeBuilder::Debugger::Location> location = TypeBuilder::Debugger::Lo cation::create()
1809 .setScriptId(scriptId) 1808 .setScriptId(scriptId)
1810 .setLineNumber(lineNumber); 1809 .setLineNumber(lineNumber);
1811 location->setColumnNumber(columnNumber); 1810 location->setColumnNumber(columnNumber);
1812 RefPtr<TypeBuilder::DOM::EventListener> value = TypeBuilder::DOM::EventListe ner::create() 1811 RefPtr<TypeBuilder::DOM::EventListener> value = TypeBuilder::DOM::EventListe ner::create()
1813 .setType(eventType) 1812 .setType(eventType)
1814 .setUseCapture(registeredEventListener.useCapture) 1813 .setUseCapture(registeredEventListener.useCapture)
1815 .setIsAttribute(eventListener->isAttribute()) 1814 .setIsAttribute(eventListener->isAttribute())
1816 .setNodeId(pushNodePathToFrontend(node)) 1815 .setNodeId(pushNodePathToFrontend(node))
1817 .setHandlerBody(eventListenerHandlerBody(&document, eventListener.get()) )
1818 .setLocation(location); 1816 .setLocation(location);
1819 if (objectGroupId) { 1817 if (objectGroupId) {
1820 ScriptValue functionValue = eventListenerHandler(&document, eventListene r.get()); 1818 ScriptValue functionValue = eventListenerHandler(&document, eventListene r.get());
1821 if (!functionValue.isEmpty()) { 1819 if (!functionValue.isEmpty()) {
1822 LocalFrame* frame = document.frame(); 1820 LocalFrame* frame = document.frame();
1823 if (frame) { 1821 if (frame) {
1824 ScriptState* scriptState = eventListenerHandlerScriptState(frame , eventListener.get()); 1822 ScriptState* scriptState = eventListenerHandlerScriptState(frame , eventListener.get());
1825 if (scriptState) { 1823 if (scriptState) {
1826 InjectedScript injectedScript = m_injectedScriptManager->inj ectedScriptFor(scriptState); 1824 InjectedScript injectedScript = m_injectedScriptManager->inj ectedScriptFor(scriptState);
1827 if (!injectedScript.isEmpty()) { 1825 if (!injectedScript.isEmpty()) {
1828 RefPtr<TypeBuilder::Runtime::RemoteObject> valueJson = i njectedScript.wrapObject(functionValue, *objectGroupId); 1826 RefPtr<TypeBuilder::Runtime::RemoteObject> valueJson = i njectedScript.wrapObject(functionValue, *objectGroupId);
1829 value->setHandler(valueJson); 1827 value->setHandler(valueJson);
1830 } 1828 }
1831 } 1829 }
1832 } 1830 }
1833 } 1831 }
1834 } 1832 }
1835 if (!sourceName.isEmpty())
1836 value->setSourceName(sourceName);
1837 return value.release(); 1833 return value.release();
1838 } 1834 }
1839 1835
1840 PassRefPtr<TypeBuilder::Array<TypeBuilder::DOM::Node> > InspectorDOMAgent::build ArrayForPseudoElements(Element* element, NodeToIdMap* nodesMap) 1836 PassRefPtr<TypeBuilder::Array<TypeBuilder::DOM::Node> > InspectorDOMAgent::build ArrayForPseudoElements(Element* element, NodeToIdMap* nodesMap)
1841 { 1837 {
1842 if (!element->pseudoElement(BEFORE) && !element->pseudoElement(AFTER)) 1838 if (!element->pseudoElement(BEFORE) && !element->pseudoElement(AFTER))
1843 return nullptr; 1839 return nullptr;
1844 1840
1845 RefPtr<TypeBuilder::Array<TypeBuilder::DOM::Node> > pseudoElements = TypeBui lder::Array<TypeBuilder::DOM::Node>::create(); 1841 RefPtr<TypeBuilder::Array<TypeBuilder::DOM::Node> > pseudoElements = TypeBui lder::Array<TypeBuilder::DOM::Node>::create();
1846 if (element->pseudoElement(BEFORE)) 1842 if (element->pseudoElement(BEFORE))
(...skipping 460 matching lines...) Expand 10 before | Expand all | Expand 10 after
2307 visitor->trace(m_revalidateTask); 2303 visitor->trace(m_revalidateTask);
2308 visitor->trace(m_searchResults); 2304 visitor->trace(m_searchResults);
2309 #endif 2305 #endif
2310 visitor->trace(m_history); 2306 visitor->trace(m_history);
2311 visitor->trace(m_domEditor); 2307 visitor->trace(m_domEditor);
2312 visitor->trace(m_listener); 2308 visitor->trace(m_listener);
2313 InspectorBaseAgent::trace(visitor); 2309 InspectorBaseAgent::trace(visitor);
2314 } 2310 }
2315 2311
2316 } // namespace blink 2312 } // namespace blink
OLDNEW
« no previous file with comments | « Source/bindings/core/v8/ScriptEventListener.cpp ('k') | Source/devtools/front_end/elements/EventListenersSidebarPane.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698