1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "ui/views_content_client/views_content_browser_client.h"
6
7#include "content/shell/browser/shell_browser_context.h"
8#include "ui/views_content_client/views_content_client_main_parts.h"
9
10namespace ui {
11
12ViewsContentBrowserClient::ViewsContentBrowserClient(
13    ViewsContentClient* views_content_client)
14    : views_content_main_parts_(NULL),
15      views_content_client_(views_content_client) {
16}
17
18ViewsContentBrowserClient::~ViewsContentBrowserClient() {
19}
20
21content::BrowserMainParts* ViewsContentBrowserClient::CreateBrowserMainParts(
22    const content::MainFunctionParams& parameters) {
23  views_content_main_parts_ =
24      ViewsContentClientMainParts::Create(parameters, views_content_client_);
25  return views_content_main_parts_;
26}
27
28net::URLRequestContextGetter*
29ViewsContentBrowserClient::CreateRequestContext(
30    content::BrowserContext* content_browser_context,
31    content::ProtocolHandlerMap* protocol_handlers,
32    content::URLRequestInterceptorScopedVector request_interceptors) {
33  content::ShellBrowserContext* shell_context =
34      views_content_main_parts_->browser_context();
35  return shell_context->CreateRequestContext(protocol_handlers,
36                                             request_interceptors.Pass());
37}
38
39}  // namespace ui
40