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

Side by Side Diff: chrome/browser/extensions/extension_host.h

Issue 434046: Support for chrome.experimental.popup API in ExternalTabContainer views (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years 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 // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2009 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 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_ 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_ 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/perftimer.h" 10 #include "base/perftimer.h"
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 ExtensionView* view() const { return view_.get(); } 58 ExtensionView* view() const { return view_.get(); }
59 #elif defined(OS_LINUX) 59 #elif defined(OS_LINUX)
60 ExtensionViewGtk* view() const { return view_.get(); } 60 ExtensionViewGtk* view() const { return view_.get(); }
61 #elif defined(OS_MACOSX) 61 #elif defined(OS_MACOSX)
62 ExtensionViewMac* view() const { return view_.get(); } 62 ExtensionViewMac* view() const { return view_.get(); }
63 #else 63 #else
64 // TODO(port): implement 64 // TODO(port): implement
65 void* view() const { return NULL; } 65 void* view() const { return NULL; }
66 #endif 66 #endif
67 67
68 // Create an ExtensionView and tie it to this host and |browser|. 68 // Create an ExtensionView and tie it to this host and |browser|. Note NULL
69 // is a valid argument for |browser|. Extension views may be bound to
70 // tab-contents hosted in ExternalTabContainer objects, which do not
71 // instantiate Browser objects.
69 void CreateView(Browser* browser); 72 void CreateView(Browser* browser);
70 73
71 Extension* extension() { return extension_; } 74 Extension* extension() { return extension_; }
72 RenderViewHost* render_view_host() const { return render_view_host_; } 75 RenderViewHost* render_view_host() const { return render_view_host_; }
73 RenderProcessHost* render_process_host() const; 76 RenderProcessHost* render_process_host() const;
74 SiteInstance* site_instance() const; 77 SiteInstance* site_instance() const;
75 bool did_stop_loading() const { return did_stop_loading_; } 78 bool did_stop_loading() const { return did_stop_loading_; }
76 bool document_element_available() const { 79 bool document_element_available() const {
77 return document_element_available_; 80 return document_element_available_;
78 } 81 }
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 // for testing. 169 // for testing.
167 static bool enable_dom_automation_; 170 static bool enable_dom_automation_;
168 171
169 // Actually create the RenderView for this host. See CreateRenderViewSoon. 172 // Actually create the RenderView for this host. See CreateRenderViewSoon.
170 void CreateRenderViewNow(); 173 void CreateRenderViewNow();
171 174
172 // ExtensionFunctionDispatcher::Delegate 175 // ExtensionFunctionDispatcher::Delegate
173 // If this ExtensionHost has a view, this returns the Browser that view is a 176 // If this ExtensionHost has a view, this returns the Browser that view is a
174 // part of. If this is a global background page, we use the active Browser 177 // part of. If this is a global background page, we use the active Browser
175 // instead. 178 // instead.
176 virtual Browser* GetBrowser(); 179 virtual Browser* GetBrowser() const;
177 virtual ExtensionHost* GetExtensionHost() { return this; } 180 virtual ExtensionHost* GetExtensionHost() { return this; }
178 181
179 // ExtensionPopupHost::Delegate 182 // ExtensionPopupHost::Delegate
180 virtual RenderViewHost* GetRenderViewHost() { return render_view_host(); } 183 virtual RenderViewHost* GetRenderViewHost() { return render_view_host(); }
181 184
182 // Returns true if we're hosting a background page. 185 // Returns true if we're hosting a background page.
183 // This isn't valid until CreateRenderView is called. 186 // This isn't valid until CreateRenderView is called.
184 bool is_background_page() const { return !view(); } 187 bool is_background_page() const { return !view(); }
185 188
186 // The extension that we're hosting in this view. 189 // The extension that we're hosting in this view.
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
221 // are used here, others are not hosted by ExtensionHost. 224 // are used here, others are not hosted by ExtensionHost.
222 ViewType::Type extension_host_type_; 225 ViewType::Type extension_host_type_;
223 226
224 // Used to measure how long it's been since the host was created. 227 // Used to measure how long it's been since the host was created.
225 PerfTimer since_created_; 228 PerfTimer since_created_;
226 229
227 DISALLOW_COPY_AND_ASSIGN(ExtensionHost); 230 DISALLOW_COPY_AND_ASSIGN(ExtensionHost);
228 }; 231 };
229 232
230 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_ 233 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698