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_handler.h" | 5 #include "chrome/browser/ui/webui/chromeos/login/network_dropdown_handler.h" |
6 | 6 |
7 #include "chrome/browser/chromeos/login/ui/webui_login_display.h" | 7 #include "chrome/browser/chromeos/login/ui/webui_login_display.h" |
| 8 #include "chrome/browser/chromeos/options/network_config_view.h" |
| 9 #include "chrome/browser/chromeos/ui/choose_mobile_network_dialog.h" |
8 #include "chrome/browser/ui/webui/chromeos/login/network_dropdown.h" | 10 #include "chrome/browser/ui/webui/chromeos/login/network_dropdown.h" |
9 #include "chrome/grit/generated_resources.h" | 11 #include "chrome/grit/generated_resources.h" |
10 #include "components/login/localized_values_builder.h" | 12 #include "components/login/localized_values_builder.h" |
| 13 #include "third_party/cros_system_api/dbus/service_constants.h" |
11 | 14 |
12 namespace { | 15 namespace { |
13 | 16 |
14 const char kJsScreenPath[] = "cr.ui.DropDown"; | 17 const char kJsScreenPath[] = "cr.ui.DropDown"; |
15 | 18 |
16 // JS API callbacks names. | 19 // JS API callbacks names. |
17 const char kJsApiNetworkItemChosen[] = "networkItemChosen"; | 20 const char kJsApiNetworkItemChosen[] = "networkItemChosen"; |
18 const char kJsApiNetworkDropdownShow[] = "networkDropdownShow"; | 21 const char kJsApiNetworkDropdownShow[] = "networkDropdownShow"; |
19 const char kJsApiNetworkDropdownHide[] = "networkDropdownHide"; | 22 const char kJsApiNetworkDropdownHide[] = "networkDropdownHide"; |
20 const char kJsApiNetworkDropdownRefresh[] = "networkDropdownRefresh"; | 23 const char kJsApiNetworkDropdownRefresh[] = "networkDropdownRefresh"; |
| 24 const char kJsApiLaunchProxySettingsDialog[] = "launchProxySettingsDialog"; |
| 25 const char kJsApiLaunchAddWiFiNetworkDialog[] = "launchAddWiFiNetworkDialog"; |
| 26 const char kJsApiLaunchAddMobileNetworkDialog[] = |
| 27 "launchAddMobileNetworkDialog"; |
21 | 28 |
22 } // namespace | 29 } // namespace |
23 | 30 |
24 namespace chromeos { | 31 namespace chromeos { |
25 | 32 |
26 NetworkDropdownHandler::NetworkDropdownHandler() | 33 NetworkDropdownHandler::NetworkDropdownHandler() |
27 : BaseScreenHandler(kJsScreenPath) { | 34 : BaseScreenHandler(kJsScreenPath) { |
28 } | 35 } |
29 | 36 |
30 NetworkDropdownHandler::~NetworkDropdownHandler() { | 37 NetworkDropdownHandler::~NetworkDropdownHandler() { |
(...skipping 19 matching lines...) Expand all Loading... |
50 | 57 |
51 void NetworkDropdownHandler::RegisterMessages() { | 58 void NetworkDropdownHandler::RegisterMessages() { |
52 AddCallback(kJsApiNetworkItemChosen, | 59 AddCallback(kJsApiNetworkItemChosen, |
53 &NetworkDropdownHandler::HandleNetworkItemChosen); | 60 &NetworkDropdownHandler::HandleNetworkItemChosen); |
54 AddCallback(kJsApiNetworkDropdownShow, | 61 AddCallback(kJsApiNetworkDropdownShow, |
55 &NetworkDropdownHandler::HandleNetworkDropdownShow); | 62 &NetworkDropdownHandler::HandleNetworkDropdownShow); |
56 AddCallback(kJsApiNetworkDropdownHide, | 63 AddCallback(kJsApiNetworkDropdownHide, |
57 &NetworkDropdownHandler::HandleNetworkDropdownHide); | 64 &NetworkDropdownHandler::HandleNetworkDropdownHide); |
58 AddCallback(kJsApiNetworkDropdownRefresh, | 65 AddCallback(kJsApiNetworkDropdownRefresh, |
59 &NetworkDropdownHandler::HandleNetworkDropdownRefresh); | 66 &NetworkDropdownHandler::HandleNetworkDropdownRefresh); |
| 67 |
| 68 // MD-OOBE |
| 69 AddCallback(kJsApiLaunchProxySettingsDialog, |
| 70 &NetworkDropdownHandler::HandleLaunchProxySettingsDialog); |
| 71 AddCallback(kJsApiLaunchAddWiFiNetworkDialog, |
| 72 &NetworkDropdownHandler::HandleLaunchAddWiFiNetworkDialog); |
| 73 AddCallback(kJsApiLaunchAddMobileNetworkDialog, |
| 74 &NetworkDropdownHandler::HandleLaunchAddMobileNetworkDialog); |
| 75 } |
| 76 |
| 77 void NetworkDropdownHandler::HandleLaunchProxySettingsDialog() { |
| 78 dropdown_->OpenButtonOptions(); |
| 79 } |
| 80 |
| 81 void NetworkDropdownHandler::HandleLaunchAddWiFiNetworkDialog() { |
| 82 gfx::NativeWindow native_window = GetNativeWindow(); |
| 83 NetworkConfigView::ShowForType(shill::kTypeWifi, native_window); |
| 84 } |
| 85 |
| 86 void NetworkDropdownHandler::HandleLaunchAddMobileNetworkDialog() { |
| 87 gfx::NativeWindow native_window = GetNativeWindow(); |
| 88 ChooseMobileNetworkDialog::ShowDialog(native_window); |
60 } | 89 } |
61 | 90 |
62 void NetworkDropdownHandler::OnConnectToNetworkRequested() { | 91 void NetworkDropdownHandler::OnConnectToNetworkRequested() { |
63 FOR_EACH_OBSERVER(Observer, observers_, OnConnectToNetworkRequested()); | 92 FOR_EACH_OBSERVER(Observer, observers_, OnConnectToNetworkRequested()); |
64 } | 93 } |
65 | 94 |
66 void NetworkDropdownHandler::HandleNetworkItemChosen(double id) { | 95 void NetworkDropdownHandler::HandleNetworkItemChosen(double id) { |
67 if (dropdown_.get()) { | 96 if (dropdown_.get()) { |
68 dropdown_->OnItemChosen(static_cast<int>(id)); | 97 dropdown_->OnItemChosen(static_cast<int>(id)); |
69 } else { | 98 } else { |
(...skipping 14 matching lines...) Expand all Loading... |
84 } | 113 } |
85 | 114 |
86 void NetworkDropdownHandler::HandleNetworkDropdownRefresh() { | 115 void NetworkDropdownHandler::HandleNetworkDropdownRefresh() { |
87 // Since language change is async, | 116 // Since language change is async, |
88 // we may in theory be on another screen during this call. | 117 // we may in theory be on another screen during this call. |
89 if (dropdown_.get()) | 118 if (dropdown_.get()) |
90 dropdown_->Refresh(); | 119 dropdown_->Refresh(); |
91 } | 120 } |
92 | 121 |
93 } // namespace chromeos | 122 } // namespace chromeos |
OLD | NEW |