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

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

Issue 257056: Resubmit http://codereview.chromium.org/243096 with gcc compile error (Closed)
Patch Set: testing Created 11 years, 2 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
« no previous file with comments | « chrome/browser/extensions/extension_host.h ('k') | chrome/browser/views/browser_bubble_win.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #include "chrome/browser/extensions/extension_host.h" 5 #include "chrome/browser/extensions/extension_host.h"
6 6
7 #include <list> 7 #include <list>
8 8
9 #include "app/resource_bundle.h" 9 #include "app/resource_bundle.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 13 matching lines...) Expand all
24 #include "chrome/browser/renderer_host/render_widget_host_view.h" 24 #include "chrome/browser/renderer_host/render_widget_host_view.h"
25 #include "chrome/browser/renderer_host/site_instance.h" 25 #include "chrome/browser/renderer_host/site_instance.h"
26 #include "chrome/common/bindings_policy.h" 26 #include "chrome/common/bindings_policy.h"
27 #include "chrome/common/extensions/extension.h" 27 #include "chrome/common/extensions/extension.h"
28 #include "chrome/common/notification_service.h" 28 #include "chrome/common/notification_service.h"
29 #include "chrome/common/pref_names.h" 29 #include "chrome/common/pref_names.h"
30 #include "chrome/common/pref_service.h" 30 #include "chrome/common/pref_service.h"
31 #include "chrome/common/view_types.h" 31 #include "chrome/common/view_types.h"
32 #include "chrome/common/render_messages.h" 32 #include "chrome/common/render_messages.h"
33 #include "chrome/common/url_constants.h" 33 #include "chrome/common/url_constants.h"
34
35 #include "grit/browser_resources.h" 34 #include "grit/browser_resources.h"
36 35 #include "views/widget/widget.h"
37 #include "webkit/glue/context_menu.h" 36 #include "webkit/glue/context_menu.h"
38 37
39 using WebKit::WebDragOperation; 38 using WebKit::WebDragOperation;
40 using WebKit::WebDragOperationsMask; 39 using WebKit::WebDragOperationsMask;
41 40
42 // static 41 // static
43 bool ExtensionHost::enable_dom_automation_ = false; 42 bool ExtensionHost::enable_dom_automation_ = false;
44 43
45 static const char* kToolstripTextColorSubstitution = "$TEXT_COLOR$"; 44 static const char* kToolstripTextColorSubstitution = "$TEXT_COLOR$";
46 45
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 const GURL& frame_url, 331 const GURL& frame_url,
333 const int flags, 332 const int flags,
334 IPC::Message* reply_msg, 333 IPC::Message* reply_msg,
335 bool* did_suppress_message) { 334 bool* did_suppress_message) {
336 // Automatically cancel the javascript alert (otherwise the renderer hangs 335 // Automatically cancel the javascript alert (otherwise the renderer hangs
337 // indefinitely). 336 // indefinitely).
338 *did_suppress_message = true; 337 *did_suppress_message = true;
339 render_view_host()->JavaScriptMessageBoxClosed(reply_msg, true, L""); 338 render_view_host()->JavaScriptMessageBoxClosed(reply_msg, true, L"");
340 } 339 }
341 340
341 void ExtensionHost::Close(RenderViewHost* render_view_host) {
342 if (extension_host_type_ == ViewType::EXTENSION_POPUP) {
343 #if defined(TOOLKIT_VIEWS)
344 // TODO(erikkay) This is a bit of a hack. By hiding the widget, we trigger
345 // a deactivation which will then bubble into ExtensionPopup and actually
346 // close the popup. Perhaps we should have a more explicit delegate to
347 // ExtensionHost.
348 view_->GetWidget()->Hide();
349 #endif
350 }
351 }
352
342 WebPreferences ExtensionHost::GetWebkitPrefs() { 353 WebPreferences ExtensionHost::GetWebkitPrefs() {
343 PrefService* prefs = render_view_host()->process()->profile()->GetPrefs(); 354 PrefService* prefs = render_view_host()->process()->profile()->GetPrefs();
344 const bool kIsDomUI = true; 355 const bool kIsDomUI = true;
345 return RenderViewHostDelegateHelper::GetWebkitPrefs(prefs, kIsDomUI); 356 WebPreferences webkit_prefs =
357 RenderViewHostDelegateHelper::GetWebkitPrefs(prefs, kIsDomUI);
358 if (extension_host_type_ == ViewType::EXTENSION_POPUP)
359 webkit_prefs.allow_scripts_to_close_windows = true;
360 return webkit_prefs;
346 } 361 }
347 362
348 void ExtensionHost::ProcessDOMUIMessage(const std::string& message, 363 void ExtensionHost::ProcessDOMUIMessage(const std::string& message,
349 const std::string& content, 364 const std::string& content,
350 int request_id, 365 int request_id,
351 bool has_callback) { 366 bool has_callback) {
352 if (extension_function_dispatcher_.get()) { 367 if (extension_function_dispatcher_.get()) {
353 extension_function_dispatcher_->HandleRequest(message, content, request_id, 368 extension_function_dispatcher_->HandleRequest(message, content, request_id,
354 has_callback); 369 has_callback);
355 } 370 }
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
496 window_id = ExtensionTabUtil::GetWindowId( 511 window_id = ExtensionTabUtil::GetWindowId(
497 const_cast<ExtensionHost* >(this)->GetBrowser()); 512 const_cast<ExtensionHost* >(this)->GetBrowser());
498 } else if (extension_host_type_ == ViewType::EXTENSION_BACKGROUND_PAGE) { 513 } else if (extension_host_type_ == ViewType::EXTENSION_BACKGROUND_PAGE) {
499 // Background page is not attached to any browser window, so pass -1. 514 // Background page is not attached to any browser window, so pass -1.
500 window_id = -1; 515 window_id = -1;
501 } else { 516 } else {
502 NOTREACHED(); 517 NOTREACHED();
503 } 518 }
504 return window_id; 519 return window_id;
505 } 520 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_host.h ('k') | chrome/browser/views/browser_bubble_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698