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

Side by Side Diff: webkit/api/src/WebViewImpl.cpp

Issue 342092: Eliminate WebViewImpl's dependency on WebDevToolsAgentImpl.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 1 month 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
« no previous file with comments | « webkit/api/src/WebViewImpl.h ('k') | webkit/glue/webdevtoolsagent_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 #include "PluginInfoStore.h" 70 #include "PluginInfoStore.h"
71 #include "PopupMenuChromium.h" 71 #include "PopupMenuChromium.h"
72 #include "PopupMenuClient.h" 72 #include "PopupMenuClient.h"
73 #include "RenderView.h" 73 #include "RenderView.h"
74 #include "ResourceHandle.h" 74 #include "ResourceHandle.h"
75 #include "SecurityOrigin.h" 75 #include "SecurityOrigin.h"
76 #include "SelectionController.h" 76 #include "SelectionController.h"
77 #include "Settings.h" 77 #include "Settings.h"
78 #include "TypingCommand.h" 78 #include "TypingCommand.h"
79 #include "WebAccessibilityObject.h" 79 #include "WebAccessibilityObject.h"
80 #include "WebDevToolsAgentPrivate.h"
80 #include "WebDragData.h" 81 #include "WebDragData.h"
81 #include "WebFrameImpl.h" 82 #include "WebFrameImpl.h"
82 #include "WebInputEvent.h" 83 #include "WebInputEvent.h"
83 #include "WebInputEventConversion.h" 84 #include "WebInputEventConversion.h"
84 #include "WebMediaPlayerAction.h" 85 #include "WebMediaPlayerAction.h"
85 #include "WebNode.h" 86 #include "WebNode.h"
86 #include "WebPoint.h" 87 #include "WebPoint.h"
87 #include "WebPopupMenuImpl.h" 88 #include "WebPopupMenuImpl.h"
88 #include "WebRect.h" 89 #include "WebRect.h"
89 #include "WebSettingsImpl.h" 90 #include "WebSettingsImpl.h"
90 #include "WebString.h" 91 #include "WebString.h"
91 #include "WebVector.h" 92 #include "WebVector.h"
92 #include "WebViewClient.h" 93 #include "WebViewClient.h"
93 94
94 #if PLATFORM(WIN_OS) 95 #if PLATFORM(WIN_OS)
95 #include "KeyboardCodesWin.h" 96 #include "KeyboardCodesWin.h"
96 #include "RenderThemeChromiumWin.h" 97 #include "RenderThemeChromiumWin.h"
97 #else 98 #else
98 #include "KeyboardCodesPosix.h" 99 #include "KeyboardCodesPosix.h"
99 #include "RenderTheme.h" 100 #include "RenderTheme.h"
100 #endif 101 #endif
101 102
102 // FIXME
103 #include "webkit/glue/webdevtoolsagent_impl.h"
104
105 // Get rid of WTF's pow define so we can use std::pow. 103 // Get rid of WTF's pow define so we can use std::pow.
106 #undef pow 104 #undef pow
107 #include <cmath> // for std::pow 105 #include <cmath> // for std::pow
108 106
109 using namespace WebCore; 107 using namespace WebCore;
110 108
111 namespace WebKit { 109 namespace WebKit {
112 110
113 // Change the text zoom level by kTextSizeMultiplierRatio each time the user 111 // Change the text zoom level by kTextSizeMultiplierRatio each time the user
114 // zooms text in or out (ie., change by 20%). The min and max values limit 112 // zooms text in or out (ie., change by 20%). The min and max values limit
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 Page::allVisitedStateChanged(PageGroup::pageGroup(pageGroupName)); 167 Page::allVisitedStateChanged(PageGroup::pageGroup(pageGroupName));
170 } 168 }
171 169
172 void WebViewImpl::initializeMainFrame(WebFrameClient* frameClient) { 170 void WebViewImpl::initializeMainFrame(WebFrameClient* frameClient) {
173 // NOTE: The WebFrameImpl takes a reference to itself within InitMainFrame 171 // NOTE: The WebFrameImpl takes a reference to itself within InitMainFrame
174 // and releases that reference once the corresponding Frame is destroyed. 172 // and releases that reference once the corresponding Frame is destroyed.
175 RefPtr<WebFrameImpl> frame = WebFrameImpl::create(frameClient); 173 RefPtr<WebFrameImpl> frame = WebFrameImpl::create(frameClient);
176 174
177 frame->initializeAsMainFrame(this); 175 frame->initializeAsMainFrame(this);
178 176
179 if (m_client) {
180 WebDevToolsAgentClient* toolsClient = m_client->devToolsAgentClient();
181 if (toolsClient)
182 m_devToolsAgent.set(new WebDevToolsAgentImpl(this, toolsClient));
183 }
184
185 // Restrict the access to the local file system 177 // Restrict the access to the local file system
186 // (see WebView.mm WebView::_commonInitializationWithFrameName). 178 // (see WebView.mm WebView::_commonInitializationWithFrameName).
187 SecurityOrigin::setLocalLoadPolicy(SecurityOrigin::AllowLocalLoadsForLocalOnly); 179 SecurityOrigin::setLocalLoadPolicy(SecurityOrigin::AllowLocalLoadsForLocalOnly);
188 } 180 }
189 181
190 WebViewImpl::WebViewImpl(WebViewClient* client) 182 WebViewImpl::WebViewImpl(WebViewClient* client)
191 : m_client(client) 183 : m_client(client)
192 , m_backForwardListClientImpl(this) 184 , m_backForwardListClientImpl(this)
193 , m_chromeClientImpl(this) 185 , m_chromeClientImpl(this)
194 , m_contextMenuClientImpl(this) 186 , m_contextMenuClientImpl(this)
(...skipping 575 matching lines...) Expand 10 before | Expand all | Expand 10 after
770 if (m_page.get()) { 762 if (m_page.get()) {
771 // Initiate shutdown for the entire frameset. This will cause a lot of 763 // Initiate shutdown for the entire frameset. This will cause a lot of
772 // notifications to be sent. 764 // notifications to be sent.
773 if (m_page->mainFrame()) { 765 if (m_page->mainFrame()) {
774 mainFrameImpl = WebFrameImpl::fromFrame(m_page->mainFrame()); 766 mainFrameImpl = WebFrameImpl::fromFrame(m_page->mainFrame());
775 m_page->mainFrame()->loader()->frameDetached(); 767 m_page->mainFrame()->loader()->frameDetached();
776 } 768 }
777 m_page.clear(); 769 m_page.clear();
778 } 770 }
779 771
780 // Should happen after m_page.reset(). 772 // Should happen after m_page.clear().
781 if (m_devToolsAgent.get()) 773 if (m_devToolsAgent.get())
782 m_devToolsAgent.clear(); 774 m_devToolsAgent.clear();
783 775
784 // We drop the client after the page has been destroyed to support the 776 // We drop the client after the page has been destroyed to support the
785 // WebFrameClient::didDestroyScriptContext method. 777 // WebFrameClient::didDestroyScriptContext method.
786 if (mainFrameImpl) 778 if (mainFrameImpl)
787 mainFrameImpl->dropClient(); 779 mainFrameImpl->dropClient();
788 780
789 // Reset the delegate to prevent notifications being sent as we're being 781 // Reset the delegate to prevent notifications being sent as we're being
790 // deleted. 782 // deleted.
(...skipping 700 matching lines...) Expand 10 before | Expand all | Expand 10 after
1491 void WebViewImpl::setInspectorSettings(const WebString& settings) 1483 void WebViewImpl::setInspectorSettings(const WebString& settings)
1492 { 1484 {
1493 m_inspectorSettings = settings; 1485 m_inspectorSettings = settings;
1494 } 1486 }
1495 1487
1496 WebDevToolsAgent* WebViewImpl::devToolsAgent() 1488 WebDevToolsAgent* WebViewImpl::devToolsAgent()
1497 { 1489 {
1498 return m_devToolsAgent.get(); 1490 return m_devToolsAgent.get();
1499 } 1491 }
1500 1492
1493 void WebViewImpl::setDevToolsAgent(WebDevToolsAgent* devToolsAgent)
1494 {
1495 ASSERT(!m_devToolsAgent.get()); // May only set once!
1496 m_devToolsAgent.set(static_cast<WebDevToolsAgentPrivate*>(devToolsAgent));
1497 }
1498
1501 WebAccessibilityObject WebViewImpl::accessibilityObject() 1499 WebAccessibilityObject WebViewImpl::accessibilityObject()
1502 { 1500 {
1503 if (!mainFrameImpl()) 1501 if (!mainFrameImpl())
1504 return WebAccessibilityObject(); 1502 return WebAccessibilityObject();
1505 1503
1506 Document* document = mainFrameImpl()->frame()->document(); 1504 Document* document = mainFrameImpl()->frame()->document();
1507 return WebAccessibilityObject( 1505 return WebAccessibilityObject(
1508 document->axObjectCache()->getOrCreate(document->renderer())); 1506 document->axObjectCache()->getOrCreate(document->renderer()));
1509 } 1507 }
1510 1508
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
1576 // WebView -------------------------------------------------------------------- 1574 // WebView --------------------------------------------------------------------
1577 1575
1578 bool WebViewImpl::setDropEffect(bool accept) { 1576 bool WebViewImpl::setDropEffect(bool accept) {
1579 if (m_dragTargetDispatch) { 1577 if (m_dragTargetDispatch) {
1580 m_dropEffect = accept ? DropEffectCopy : DropEffectNone; 1578 m_dropEffect = accept ? DropEffectCopy : DropEffectNone;
1581 return true; 1579 return true;
1582 } 1580 }
1583 return false; 1581 return false;
1584 } 1582 }
1585 1583
1586 WebDevToolsAgentImpl* WebViewImpl::devToolsAgentImpl()
1587 {
1588 return m_devToolsAgent.get();
1589 }
1590
1591 void WebViewImpl::setIsTransparent(bool isTransparent) 1584 void WebViewImpl::setIsTransparent(bool isTransparent)
1592 { 1585 {
1593 // Set any existing frames to be transparent. 1586 // Set any existing frames to be transparent.
1594 Frame* frame = m_page->mainFrame(); 1587 Frame* frame = m_page->mainFrame();
1595 while (frame) { 1588 while (frame) {
1596 frame->view()->setTransparent(isTransparent); 1589 frame->view()->setTransparent(isTransparent);
1597 frame = frame->tree()->traverseNext(); 1590 frame = frame->tree()->traverseNext();
1598 } 1591 }
1599 1592
1600 // Future frames check this to know whether to be transparent. 1593 // Future frames check this to know whether to be transparent.
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
1758 { 1751 {
1759 m_tabsToLinks = enable; 1752 m_tabsToLinks = enable;
1760 } 1753 }
1761 1754
1762 bool WebViewImpl::tabsToLinks() const 1755 bool WebViewImpl::tabsToLinks() const
1763 { 1756 {
1764 return m_tabsToLinks; 1757 return m_tabsToLinks;
1765 } 1758 }
1766 1759
1767 } // namespace WebKit 1760 } // namespace WebKit
OLDNEW
« no previous file with comments | « webkit/api/src/WebViewImpl.h ('k') | webkit/glue/webdevtoolsagent_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698