| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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 "chromecast/shell/browser/cast_browser_main_parts.h" | 5 #include "chromecast/shell/browser/cast_browser_main_parts.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "chromecast/net/network_change_notifier_cast.h" | 8 #include "chromecast/net/network_change_notifier_cast.h" |
| 9 #include "chromecast/net/network_change_notifier_factory_cast.h" | 9 #include "chromecast/net/network_change_notifier_factory_cast.h" |
| 10 #include "chromecast/service/cast_service.h" | 10 #include "chromecast/service/cast_service.h" |
| 11 #include "chromecast/shell/browser/cast_browser_context.h" | 11 #include "chromecast/shell/browser/cast_browser_context.h" |
| 12 #include "chromecast/shell/browser/url_request_context_factory.h" | 12 #include "chromecast/shell/browser/url_request_context_factory.h" |
| 13 | 13 |
| 14 namespace chromecast { | 14 namespace chromecast { |
| 15 namespace shell { | 15 namespace shell { |
| 16 | 16 |
| 17 // static | |
| 18 CastBrowserMainParts* CastBrowserMainParts::instance_ = NULL; | |
| 19 | |
| 20 namespace { | 17 namespace { |
| 21 | 18 |
| 22 struct DefaultCommandLineSwitch { | 19 struct DefaultCommandLineSwitch { |
| 23 const char* const switch_name; | 20 const char* const switch_name; |
| 24 const char* const switch_value; | 21 const char* const switch_value; |
| 25 }; | 22 }; |
| 26 | 23 |
| 27 DefaultCommandLineSwitch g_default_switches[] = { | 24 DefaultCommandLineSwitch g_default_switches[] = { |
| 28 { "enable-webrtc-hw-decoding", "" }, | 25 { "enable-webrtc-hw-decoding", "" }, |
| 29 { "disable-plugins", "" }, | 26 { "disable-plugins", "" }, |
| (...skipping 13 matching lines...) Expand all Loading... |
| 43 | 40 |
| 44 } // namespace | 41 } // namespace |
| 45 | 42 |
| 46 CastBrowserMainParts::CastBrowserMainParts( | 43 CastBrowserMainParts::CastBrowserMainParts( |
| 47 const content::MainFunctionParams& parameters, | 44 const content::MainFunctionParams& parameters, |
| 48 URLRequestContextFactory* url_request_context_factory) | 45 URLRequestContextFactory* url_request_context_factory) |
| 49 : BrowserMainParts(), | 46 : BrowserMainParts(), |
| 50 url_request_context_factory_(url_request_context_factory) { | 47 url_request_context_factory_(url_request_context_factory) { |
| 51 CommandLine* command_line = CommandLine::ForCurrentProcess(); | 48 CommandLine* command_line = CommandLine::ForCurrentProcess(); |
| 52 AddDefaultCommandLineSwitches(command_line); | 49 AddDefaultCommandLineSwitches(command_line); |
| 53 DCHECK(instance_ == NULL); | |
| 54 instance_ = this; | |
| 55 } | 50 } |
| 56 | 51 |
| 57 CastBrowserMainParts::~CastBrowserMainParts() { | 52 CastBrowserMainParts::~CastBrowserMainParts() { |
| 58 DCHECK(instance_ == this); | |
| 59 instance_ = NULL; | |
| 60 } | 53 } |
| 61 | 54 |
| 62 void CastBrowserMainParts::PreMainMessageLoopStart() { | 55 void CastBrowserMainParts::PreMainMessageLoopStart() { |
| 63 net::NetworkChangeNotifier::SetFactory( | 56 net::NetworkChangeNotifier::SetFactory( |
| 64 new NetworkChangeNotifierFactoryCast()); | 57 new NetworkChangeNotifierFactoryCast()); |
| 65 } | 58 } |
| 66 | 59 |
| 67 void CastBrowserMainParts::PostMainMessageLoopStart() { | 60 void CastBrowserMainParts::PostMainMessageLoopStart() { |
| 68 NOTIMPLEMENTED(); | 61 NOTIMPLEMENTED(); |
| 69 } | 62 } |
| (...skipping 14 matching lines...) Expand all Loading... |
| 84 bool CastBrowserMainParts::MainMessageLoopRun(int* result_code) { | 77 bool CastBrowserMainParts::MainMessageLoopRun(int* result_code) { |
| 85 base::MessageLoopForUI::current()->Run(); | 78 base::MessageLoopForUI::current()->Run(); |
| 86 return true; | 79 return true; |
| 87 } | 80 } |
| 88 | 81 |
| 89 void CastBrowserMainParts::PostMainMessageLoopRun() { | 82 void CastBrowserMainParts::PostMainMessageLoopRun() { |
| 90 cast_service_->Stop(); | 83 cast_service_->Stop(); |
| 91 browser_context_.reset(); | 84 browser_context_.reset(); |
| 92 } | 85 } |
| 93 | 86 |
| 94 // static | |
| 95 CastBrowserMainParts* CastBrowserMainParts::GetInstance() { | |
| 96 DCHECK(instance_ != NULL); | |
| 97 return instance_; | |
| 98 } | |
| 99 | |
| 100 } // namespace shell | 87 } // namespace shell |
| 101 } // namespace chromecast | 88 } // namespace chromecast |
| OLD | NEW |