OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 "chrome/browser/ui/webui/chromeos/login/network_dropdown.h" | 5 #include "chrome/browser/ui/webui/chromeos/login/network_dropdown.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/time.h" | 9 #include "base/time.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
11 #include "chrome/browser/chromeos/cros/cros_library.h" | |
12 #include "chrome/browser/chromeos/login/base_login_display_host.h" | 11 #include "chrome/browser/chromeos/login/base_login_display_host.h" |
13 #include "chrome/browser/chromeos/login/login_display_host.h" | 12 #include "chrome/browser/chromeos/login/login_display_host.h" |
| 13 #include "chrome/browser/chromeos/net/connectivity_state_helper.h" |
14 #include "content/public/browser/web_ui.h" | 14 #include "content/public/browser/web_ui.h" |
15 #include "ui/base/models/menu_model.h" | 15 #include "ui/base/models/menu_model.h" |
16 #include "ui/gfx/font.h" | 16 #include "ui/gfx/font.h" |
17 #include "ui/gfx/image/image.h" | 17 #include "ui/gfx/image/image.h" |
18 #include "ui/gfx/image/image_skia.h" | 18 #include "ui/gfx/image/image_skia.h" |
19 #include "ui/webui/web_ui_util.h" | 19 #include "ui/webui/web_ui_util.h" |
20 | 20 |
21 namespace { | 21 namespace { |
22 | 22 |
23 // Timeout between consecutive requests to network library for network | 23 // Timeout between consecutive requests to network library for network |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
107 | 107 |
108 // NetworkDropdown ------------------------------------------------------------- | 108 // NetworkDropdown ------------------------------------------------------------- |
109 | 109 |
110 NetworkDropdown::NetworkDropdown(content::WebUI* web_ui, | 110 NetworkDropdown::NetworkDropdown(content::WebUI* web_ui, |
111 bool oobe) | 111 bool oobe) |
112 : web_ui_(web_ui), | 112 : web_ui_(web_ui), |
113 oobe_(oobe) { | 113 oobe_(oobe) { |
114 network_menu_.reset(new NetworkMenuWebUI(this, web_ui)); | 114 network_menu_.reset(new NetworkMenuWebUI(this, web_ui)); |
115 network_icon_.reset( | 115 network_icon_.reset( |
116 new NetworkMenuIcon(this, NetworkMenuIcon::DROPDOWN_MODE)); | 116 new NetworkMenuIcon(this, NetworkMenuIcon::DROPDOWN_MODE)); |
117 CrosLibrary::Get()->GetNetworkLibrary()->AddNetworkManagerObserver(this); | 117 ConnectivityStateHelper::Get()->AddNetworkManagerObserver(this); |
118 CrosLibrary::Get()->GetNetworkLibrary()->RequestNetworkScan(); | 118 ConnectivityStateHelper::Get()->RequestScan(); |
119 Refresh(); | 119 Refresh(); |
120 network_scan_timer_.Start(FROM_HERE, | 120 network_scan_timer_.Start(FROM_HERE, |
121 base::TimeDelta::FromSeconds(kNetworkScanIntervalSecs), | 121 base::TimeDelta::FromSeconds(kNetworkScanIntervalSecs), |
122 this, &NetworkDropdown::ForceNetworkScan); | 122 this, &NetworkDropdown::ForceNetworkScan); |
123 } | 123 } |
124 | 124 |
125 NetworkDropdown::~NetworkDropdown() { | 125 NetworkDropdown::~NetworkDropdown() { |
126 CrosLibrary::Get()->GetNetworkLibrary()->RemoveNetworkManagerObserver(this); | 126 ConnectivityStateHelper::Get()->RemoveNetworkManagerObserver(this); |
127 } | 127 } |
128 | 128 |
129 void NetworkDropdown::SetLastNetworkType(ConnectionType last_network_type) { | 129 void NetworkDropdown::SetLastNetworkType(ConnectionType last_network_type) { |
130 // No longer implemented. TODO(stevenjb): Purge from JS. | 130 // No longer implemented. TODO(stevenjb): Purge from JS. |
131 } | 131 } |
132 | 132 |
133 void NetworkDropdown::OnItemChosen(int id) { | 133 void NetworkDropdown::OnItemChosen(int id) { |
134 network_menu_->OnItemChosen(id); | 134 network_menu_->OnItemChosen(id); |
135 } | 135 } |
136 | 136 |
137 gfx::NativeWindow NetworkDropdown::GetNativeWindow() const { | 137 gfx::NativeWindow NetworkDropdown::GetNativeWindow() const { |
138 return BaseLoginDisplayHost::default_host()->GetNativeWindow(); | 138 return BaseLoginDisplayHost::default_host()->GetNativeWindow(); |
139 } | 139 } |
140 | 140 |
141 void NetworkDropdown::OpenButtonOptions() { | 141 void NetworkDropdown::OpenButtonOptions() { |
142 BaseLoginDisplayHost::default_host()->OpenProxySettings(); | 142 BaseLoginDisplayHost::default_host()->OpenProxySettings(); |
143 } | 143 } |
144 | 144 |
145 bool NetworkDropdown::ShouldOpenButtonOptions() const { | 145 bool NetworkDropdown::ShouldOpenButtonOptions() const { |
146 return !oobe_; | 146 return !oobe_; |
147 } | 147 } |
148 | 148 |
149 void NetworkDropdown::OnNetworkManagerChanged(NetworkLibrary* cros) { | 149 void NetworkDropdown::NetworkManagerChanged() { |
150 Refresh(); | 150 Refresh(); |
151 } | 151 } |
152 | 152 |
153 void NetworkDropdown::Refresh() { | 153 void NetworkDropdown::Refresh() { |
154 SetNetworkIconAndText(); | 154 SetNetworkIconAndText(); |
155 network_menu_->UpdateMenu(); | 155 network_menu_->UpdateMenu(); |
156 } | 156 } |
157 | 157 |
158 void NetworkDropdown::NetworkMenuIconChanged() { | 158 void NetworkDropdown::NetworkMenuIconChanged() { |
159 SetNetworkIconAndText(); | 159 SetNetworkIconAndText(); |
160 } | 160 } |
161 | 161 |
162 void NetworkDropdown::SetNetworkIconAndText() { | 162 void NetworkDropdown::SetNetworkIconAndText() { |
163 string16 text; | 163 string16 text; |
164 const gfx::ImageSkia icon_image = network_icon_->GetIconAndText(&text); | 164 const gfx::ImageSkia icon_image = network_icon_->GetIconAndText(&text); |
165 SkBitmap icon_bitmap = icon_image.GetRepresentation( | 165 SkBitmap icon_bitmap = icon_image.GetRepresentation( |
166 web_ui_->GetDeviceScaleFactor()).sk_bitmap(); | 166 web_ui_->GetDeviceScaleFactor()).sk_bitmap(); |
167 std::string icon_str = | 167 std::string icon_str = |
168 icon_image.isNull() ? | 168 icon_image.isNull() ? |
169 std::string() : webui::GetBitmapDataUrl(icon_bitmap); | 169 std::string() : webui::GetBitmapDataUrl(icon_bitmap); |
170 base::StringValue title(text); | 170 base::StringValue title(text); |
171 base::StringValue icon(icon_str); | 171 base::StringValue icon(icon_str); |
172 web_ui_->CallJavascriptFunction("cr.ui.DropDown.updateNetworkTitle", | 172 web_ui_->CallJavascriptFunction("cr.ui.DropDown.updateNetworkTitle", |
173 title, icon); | 173 title, icon); |
174 } | 174 } |
175 | 175 |
176 void NetworkDropdown::ForceNetworkScan() { | 176 void NetworkDropdown::ForceNetworkScan() { |
177 CrosLibrary::Get()->GetNetworkLibrary()->RequestNetworkScan(); | 177 ConnectivityStateHelper::Get()->RequestScan(); |
178 Refresh(); | 178 Refresh(); |
179 } | 179 } |
180 | 180 |
181 } // namespace chromeos | 181 } // namespace chromeos |
OLD | NEW |