1 // Copyright (c) 2012 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.
5 #include "content/browser/net/browser_online_state_observer.h"
7 #include "content/common/view_messages.h"
8 #include "content/browser/renderer_host/render_process_host_impl.h"
12 BrowserOnlineStateObserver::BrowserOnlineStateObserver() {
13 net::NetworkChangeNotifier::AddConnectionTypeObserver(this);
16 BrowserOnlineStateObserver::~BrowserOnlineStateObserver() {
17 net::NetworkChangeNotifier::RemoveConnectionTypeObserver(this);
20 void BrowserOnlineStateObserver::OnConnectionTypeChanged(
21 net::NetworkChangeNotifier::ConnectionType type
) {
22 for (RenderProcessHost::iterator
it(RenderProcessHost::AllHostsIterator());
23 !it
.IsAtEnd(); it
.Advance()) {
24 it
.GetCurrentValue()->Send(new ViewMsg_NetworkStateChanged(
25 type
!= net::NetworkChangeNotifier::CONNECTION_NONE
));
29 } // namespace content