Index: chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc |
diff --git a/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc b/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc |
index 97387dd9ce6426e88727984eec3cd9df200431fb..8868fc736f8717143ece430339c01f7c9e5d777a 100644 |
--- a/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc |
+++ b/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc |
@@ -91,6 +91,10 @@ |
const char kShowMorePlanInfoMessage[] = "showMorePlanInfo"; |
const char kSimOperationMessage[] = "simOperation"; |
+// TODO(stevenjb): Replace these with the matching networkingPrivate methods. |
+// crbug.com/279351. |
+const char kStartConnectMessage[] = "startConnect"; |
+ |
// TODO(stevenjb): Deprecate this once we handle events in the JS. |
const char kSetNetworkGuidMessage[] = "setNetworkGuid"; |
@@ -256,6 +260,11 @@ |
web_ui()->RegisterMessageCallback(kSetNetworkGuidMessage, |
base::Bind(&InternetOptionsHandler::SetNetworkGuidCallback, |
base::Unretained(this))); |
+ |
+ // networkingPrivate methods |
+ web_ui()->RegisterMessageCallback(kStartConnectMessage, |
+ base::Bind(&InternetOptionsHandler::StartConnectCallback, |
+ base::Unretained(this))); |
} |
void InternetOptionsHandler::OnExtensionLoaded( |
@@ -337,6 +346,23 @@ |
details_guid_ = guid; |
} |
+ |
+//////////////////////////////////////////////////////////////////////////////// |
+// networkingPrivate implementation methods. TODO(stevenjb): Use the |
+// networkingPrivate API directly in the settings JS and deprecate these |
+// methods. crbug.com/279351. |
+ |
+void InternetOptionsHandler::StartConnectCallback(const base::ListValue* args) { |
+ std::string guid; |
+ if (!args->GetString(0, &guid)) { |
+ NOTREACHED(); |
+ return; |
+ } |
+ std::string service_path = ServicePathFromGuid(guid); |
+ if (!service_path.empty()) |
+ ui::NetworkConnect::Get()->ConnectToNetwork(service_path); |
+} |
+ |
//////////////////////////////////////////////////////////////////////////////// |
void InternetOptionsHandler::UpdateVPNProviders() { |