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

Unified Diff: chrome/browser/ui/apps/chrome_shell_window_delegate.cc

Issue 171593002: Rename ChromeShellWindowDelegate to ChromeAppWindowDelegate (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/apps/chrome_shell_window_delegate.cc
diff --git a/chrome/browser/ui/apps/chrome_shell_window_delegate.cc b/chrome/browser/ui/apps/chrome_shell_window_delegate.cc
deleted file mode 100644
index ee201d2c526c62d1d201998fed80c1373515ae1e..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/apps/chrome_shell_window_delegate.cc
+++ /dev/null
@@ -1,225 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/ui/apps/chrome_shell_window_delegate.h"
-
-#include "base/strings/stringprintf.h"
-#include "chrome/browser/favicon/favicon_tab_helper.h"
-#include "chrome/browser/file_select_helper.h"
-#include "chrome/browser/media/media_capture_devices_dispatcher.h"
-#include "chrome/browser/platform_util.h"
-#include "chrome/browser/profiles/profile.h"
-#include "chrome/browser/shell_integration.h"
-#include "chrome/browser/ui/browser.h"
-#include "chrome/browser/ui/browser_dialogs.h"
-#include "chrome/browser/ui/browser_tabstrip.h"
-#include "chrome/browser/ui/browser_window.h"
-#include "chrome/browser/ui/scoped_tabbed_browser_displayer.h"
-#include "chrome/common/render_messages.h"
-#include "content/public/browser/browser_context.h"
-#include "content/public/browser/render_view_host.h"
-#include "content/public/browser/web_contents.h"
-#include "content/public/browser/web_contents_view.h"
-
-#if defined(USE_ASH)
-#include "ash/shelf/shelf_constants.h"
-#endif
-
-#if defined(ENABLE_PRINTING)
-#if defined(ENABLE_FULL_PRINTING)
-#include "chrome/browser/printing/print_preview_message_handler.h"
-#include "chrome/browser/printing/print_view_manager.h"
-#else
-#include "chrome/browser/printing/print_view_manager_basic.h"
-#endif // defined(ENABLE_FULL_PRINTING)
-#endif // defined(ENABLE_PRINTING)
-
-namespace {
-
-bool disable_external_open_for_testing_ = false;
-
-// Opens a URL with Chromium (not external browser) with the right profile.
-content::WebContents* OpenURLFromTabInternal(
- content::BrowserContext* context,
- content::WebContents* source,
- const content::OpenURLParams& params) {
- // Force all links to open in a new tab, even if they were trying to open a
- // window.
- chrome::NavigateParams new_tab_params(
- static_cast<Browser*>(NULL), params.url, params.transition);
- new_tab_params.disposition = params.disposition == NEW_BACKGROUND_TAB
- ? params.disposition
- : NEW_FOREGROUND_TAB;
- new_tab_params.initiating_profile = Profile::FromBrowserContext(context);
- chrome::Navigate(&new_tab_params);
-
- return new_tab_params.target_contents;
-}
-
-// Helper class that opens a URL based on if this browser instance is the
-// default system browser. If it is the default, open the URL directly instead
-// of asking the system to open it.
-class OpenURLFromTabBasedOnBrowserDefault
- : public ShellIntegration::DefaultWebClientObserver {
- public:
- OpenURLFromTabBasedOnBrowserDefault(content::WebContents* source,
- const content::OpenURLParams& params)
- : source_(source), params_(params) {}
-
- // Opens a URL when called with the result of if this is the default system
- // browser or not.
- virtual void SetDefaultWebClientUIState(
- ShellIntegration::DefaultWebClientUIState state) OVERRIDE {
- Profile* profile =
- Profile::FromBrowserContext(source_->GetBrowserContext());
- DCHECK(profile);
- if (!profile)
- return;
- switch (state) {
- case ShellIntegration::STATE_PROCESSING:
- break;
- case ShellIntegration::STATE_IS_DEFAULT:
- OpenURLFromTabInternal(profile, source_, params_);
- break;
- case ShellIntegration::STATE_NOT_DEFAULT:
- case ShellIntegration::STATE_UNKNOWN:
- platform_util::OpenExternal(profile, params_.url);
- break;
- }
- }
-
- virtual bool IsOwnedByWorker() OVERRIDE { return true; }
-
- private:
- content::WebContents* source_;
- const content::OpenURLParams params_;
-};
-
-} // namespace
-
-ShellWindowLinkDelegate::ShellWindowLinkDelegate() {}
-
-ShellWindowLinkDelegate::~ShellWindowLinkDelegate() {}
-
-// TODO(rockot): Add a test that exercises this code. See
-// http://crbug.com/254260.
-content::WebContents* ShellWindowLinkDelegate::OpenURLFromTab(
- content::WebContents* source,
- const content::OpenURLParams& params) {
- if (source) {
- scoped_refptr<ShellIntegration::DefaultWebClientWorker>
- check_if_default_browser_worker =
- new ShellIntegration::DefaultBrowserWorker(
- new OpenURLFromTabBasedOnBrowserDefault(source, params));
- // Object lifetime notes: The OpenURLFromTabBasedOnBrowserDefault is owned
- // by check_if_default_browser_worker. StartCheckIsDefault() takes lifetime
- // ownership of check_if_default_browser_worker and will clean up after
- // the asynchronous tasks.
- check_if_default_browser_worker->StartCheckIsDefault();
- }
- return NULL;
-}
-
-ChromeShellWindowDelegate::ChromeShellWindowDelegate() {}
-
-ChromeShellWindowDelegate::~ChromeShellWindowDelegate() {}
-
-void ChromeShellWindowDelegate::DisableExternalOpenForTesting() {
- disable_external_open_for_testing_ = true;
-}
-
-void ChromeShellWindowDelegate::InitWebContents(
- content::WebContents* web_contents) {
- FaviconTabHelper::CreateForWebContents(web_contents);
-
-#if defined(ENABLE_PRINTING)
-#if defined(ENABLE_FULL_PRINTING)
- printing::PrintViewManager::CreateForWebContents(web_contents);
- printing::PrintPreviewMessageHandler::CreateForWebContents(web_contents);
-#else
- printing::PrintViewManagerBasic::CreateForWebContents(web_contents);
-#endif // defined(ENABLE_FULL_PRINTING)
-#endif // defined(ENABLE_PRINTING)
-}
-
-apps::NativeAppWindow* ChromeShellWindowDelegate::CreateNativeAppWindow(
- apps::AppWindow* window,
- const apps::AppWindow::CreateParams& params) {
- return CreateNativeAppWindowImpl(window, params);
-}
-
-content::WebContents* ChromeShellWindowDelegate::OpenURLFromTab(
- content::BrowserContext* context,
- content::WebContents* source,
- const content::OpenURLParams& params) {
- return OpenURLFromTabInternal(context, source, params);
-}
-
-void ChromeShellWindowDelegate::AddNewContents(
- content::BrowserContext* context,
- content::WebContents* new_contents,
- WindowOpenDisposition disposition,
- const gfx::Rect& initial_pos,
- bool user_gesture,
- bool* was_blocked) {
- if (!disable_external_open_for_testing_) {
- if (!shell_window_link_delegate_.get())
- shell_window_link_delegate_.reset(new ShellWindowLinkDelegate());
- new_contents->SetDelegate(shell_window_link_delegate_.get());
- return;
- }
- chrome::ScopedTabbedBrowserDisplayer displayer(
- Profile::FromBrowserContext(context), chrome::GetActiveDesktop());
- // Force all links to open in a new tab, even if they were trying to open a
- // new window.
- disposition =
- disposition == NEW_BACKGROUND_TAB ? disposition : NEW_FOREGROUND_TAB;
- chrome::AddWebContents(displayer.browser(), NULL, new_contents, disposition,
- initial_pos, user_gesture, was_blocked);
-}
-
-content::ColorChooser* ChromeShellWindowDelegate::ShowColorChooser(
- content::WebContents* web_contents,
- SkColor initial_color) {
- return chrome::ShowColorChooser(web_contents, initial_color);
-}
-
-void ChromeShellWindowDelegate::RunFileChooser(
- content::WebContents* tab,
- const content::FileChooserParams& params) {
- FileSelectHelper::RunFileChooser(tab, params);
-}
-
-void ChromeShellWindowDelegate::RequestMediaAccessPermission(
- content::WebContents* web_contents,
- const content::MediaStreamRequest& request,
- const content::MediaResponseCallback& callback,
- const extensions::Extension* extension) {
- MediaCaptureDevicesDispatcher::GetInstance()->ProcessMediaAccessRequest(
- web_contents, request, callback, extension);
-}
-
-int ChromeShellWindowDelegate::PreferredIconSize() {
-#if defined(USE_ASH)
- return ash::kShelfPreferredSize;
-#else
- return extension_misc::EXTENSION_ICON_SMALL;
-#endif
-}
-
-void ChromeShellWindowDelegate::SetWebContentsBlocked(
- content::WebContents* web_contents,
- bool blocked) {
- // RenderViewHost may be NULL during shutdown.
- content::RenderViewHost* host = web_contents->GetRenderViewHost();
- if (host) {
- host->Send(new ChromeViewMsg_SetVisuallyDeemphasized(
- host->GetRoutingID(), blocked));
- }
-}
-
-bool ChromeShellWindowDelegate::IsWebContentsVisible(
- content::WebContents* web_contents) {
- return platform_util::IsVisible(web_contents->GetView()->GetNativeView());
-}

Powered by Google App Engine
This is Rietveld 408576698