summaryrefslogtreecommitdiff
path: root/chromium/ash/shell/content_client/shell_main_delegate.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/ash/shell/content_client/shell_main_delegate.cc')
-rw-r--r--chromium/ash/shell/content_client/shell_main_delegate.cc45
1 files changed, 45 insertions, 0 deletions
diff --git a/chromium/ash/shell/content_client/shell_main_delegate.cc b/chromium/ash/shell/content_client/shell_main_delegate.cc
new file mode 100644
index 00000000000..014fae1a2b8
--- /dev/null
+++ b/chromium/ash/shell/content_client/shell_main_delegate.cc
@@ -0,0 +1,45 @@
+// Copyright (c) 2012 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 "ash/shell/content_client/shell_main_delegate.h"
+
+#include "ash/shell/content_client/shell_content_browser_client.h"
+#include "base/command_line.h"
+#include "content/public/common/content_switches.h"
+#include "ui/base/resource/resource_bundle.h"
+
+namespace ash {
+namespace shell {
+
+ShellMainDelegate::ShellMainDelegate() {
+}
+
+ShellMainDelegate::~ShellMainDelegate() {
+}
+
+bool ShellMainDelegate::BasicStartupComplete(int* exit_code) {
+ const CommandLine& command_line = *CommandLine::ForCurrentProcess();
+ std::string process_type =
+ command_line.GetSwitchValueASCII(switches::kProcessType);
+
+ content::SetContentClient(&content_client_);
+
+ return false;
+}
+
+void ShellMainDelegate::PreSandboxStartup() {
+ InitializeResourceBundle();
+}
+
+content::ContentBrowserClient* ShellMainDelegate::CreateContentBrowserClient() {
+ browser_client_.reset(new ShellContentBrowserClient);
+ return browser_client_.get();
+}
+
+void ShellMainDelegate::InitializeResourceBundle() {
+ ui::ResourceBundle::InitSharedInstanceWithLocale("en-US", NULL);
+}
+
+} // namespace shell
+} // namespace ash