summaryrefslogtreecommitdiffstats
path: root/chrome/browser
diff options
context:
space:
mode:
authordhg@chromium.org <dhg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-06 16:46:02 +0000
committerdhg@chromium.org <dhg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-06 16:46:02 +0000
commitab9fb2953e2744a74a5ce3b8e1c830a3bd692543 (patch)
treeccaca3f851dc8632c13b99d41991a6952a55123e /chrome/browser
parentf46845a7751433e0e3a390b85f50a35c4230e22b (diff)
downloadchromium_src-ab9fb2953e2744a74a5ce3b8e1c830a3bd692543.zip
chromium_src-ab9fb2953e2744a74a5ce3b8e1c830a3bd692543.tar.gz
chromium_src-ab9fb2953e2744a74a5ce3b8e1c830a3bd692543.tar.bz2
Adding wifi enable/disable buttons
BUG=chromium-os:6590 TEST=none Review URL: http://codereview.chromium.org/3556012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61655 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
-rw-r--r--chrome/browser/browser_resources.grd2
-rw-r--r--chrome/browser/chromeos/dom_ui/internet_options_handler.cc62
-rw-r--r--chrome/browser/chromeos/dom_ui/internet_options_handler.h4
-rw-r--r--chrome/browser/resources/options/chromeos_internet_options.html9
-rw-r--r--chrome/browser/resources/options/chromeos_internet_options.js35
-rw-r--r--chrome/browser/resources/options/chromeos_internet_options_page.css17
-rw-r--r--chrome/browser/resources/options/options_page.css3
7 files changed, 129 insertions, 3 deletions
diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd
index b576252..f2db76b 100644
--- a/chrome/browser/browser_resources.grd
+++ b/chrome/browser/browser_resources.grd
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- This comment is only here because changes to resources are not picked up
-without changes to the corresponding grd file. test -->
+without changes to the corresponding grd file. eter -->
<grit latest_public_release="0" current_release="1">
<outputs>
<output filename="grit/browser_resources.h" type="rc_header">
diff --git a/chrome/browser/chromeos/dom_ui/internet_options_handler.cc b/chrome/browser/chromeos/dom_ui/internet_options_handler.cc
index daabe8c..608d3f6 100644
--- a/chrome/browser/chromeos/dom_ui/internet_options_handler.cc
+++ b/chrome/browser/chromeos/dom_ui/internet_options_handler.cc
@@ -123,12 +123,39 @@ void InternetOptionsHandler::GetLocalizedValues(
localized_strings->SetString("inetConnect",
l10n_util::GetStringUTF16(
IDS_OPTIONS_SETTINGS_INTERNET_OPTIONS_CONNECT_TITLE));
+
+ localized_strings->SetString("enableWifi",
+ l10n_util::GetStringFUTF16(
+ IDS_STATUSBAR_NETWORK_DEVICE_ENABLE,
+ l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_WIFI)));
+ localized_strings->SetString("disableWifi",
+ l10n_util::GetStringFUTF16(
+ IDS_STATUSBAR_NETWORK_DEVICE_DISABLE,
+ l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_WIFI)));
+ localized_strings->SetString("enableCellular",
+ l10n_util::GetStringFUTF16(
+ IDS_STATUSBAR_NETWORK_DEVICE_ENABLE,
+ l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CELLULAR)));
+ localized_strings->SetString("disableCellular",
+ l10n_util::GetStringFUTF16(
+ IDS_STATUSBAR_NETWORK_DEVICE_DISABLE,
+ l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CELLULAR)));
+ localized_strings->SetString("generalNetworkingTitle",
+ l10n_util::GetStringUTF16(
+ IDS_OPTIONS_SETTINGS_INTERNET_CONTROL_TITLE));
+
localized_strings->SetString("detailsInternetDismiss",
l10n_util::GetStringUTF16(IDS_CANCEL));
localized_strings->Set("wiredList", GetWiredList());
localized_strings->Set("wirelessList", GetWirelessList());
localized_strings->Set("rememberedList", GetRememberedList());
+
+ chromeos::NetworkLibrary* cros =
+ chromeos::CrosLibrary::Get()->GetNetworkLibrary();
+ localized_strings->SetBoolean("cellularAvailable",
+ cros->cellular_available());
+ localized_strings->SetBoolean("cellularEnabled", cros->cellular_enabled());
}
void InternetOptionsHandler::RegisterMessages() {
@@ -144,7 +171,38 @@ void InternetOptionsHandler::RegisterMessages() {
NewCallback(this, &InternetOptionsHandler::SetDetailsCallback));
dom_ui_->RegisterMessageCallback("loginToOtherNetwork",
NewCallback(this, &InternetOptionsHandler::LoginToOtherCallback));
+ dom_ui_->RegisterMessageCallback("enableWifi",
+ NewCallback(this, &InternetOptionsHandler::EnableWifiCallback));
+ dom_ui_->RegisterMessageCallback("disableWifi",
+ NewCallback(this, &InternetOptionsHandler::DisableWifiCallback));
+ dom_ui_->RegisterMessageCallback("enableCellular",
+ NewCallback(this, &InternetOptionsHandler::EnableCellularCallback));
+ dom_ui_->RegisterMessageCallback("disablCellular",
+ NewCallback(this, &InternetOptionsHandler::DisableCellularCallback));
+}
+
+void InternetOptionsHandler::EnableWifiCallback(const ListValue* args) {
+ chromeos::NetworkLibrary* cros =
+ chromeos::CrosLibrary::Get()->GetNetworkLibrary();
+ cros->EnableWifiNetworkDevice(true);
+}
+void InternetOptionsHandler::DisableWifiCallback(const ListValue* args) {
+ chromeos::NetworkLibrary* cros =
+ chromeos::CrosLibrary::Get()->GetNetworkLibrary();
+ cros->EnableWifiNetworkDevice(false);
+}
+
+void InternetOptionsHandler::EnableCellularCallback(const ListValue* args) {
+ chromeos::NetworkLibrary* cros =
+ chromeos::CrosLibrary::Get()->GetNetworkLibrary();
+ cros->EnableCellularNetworkDevice(true);
+}
+
+void InternetOptionsHandler::DisableCellularCallback(const ListValue* args) {
+ chromeos::NetworkLibrary* cros =
+ chromeos::CrosLibrary::Get()->GetNetworkLibrary();
+ cros->EnableCellularNetworkDevice(false);
}
void InternetOptionsHandler::NetworkChanged(chromeos::NetworkLibrary* cros) {
@@ -153,6 +211,10 @@ void InternetOptionsHandler::NetworkChanged(chromeos::NetworkLibrary* cros) {
dictionary.Set("wiredList", GetWiredList());
dictionary.Set("wirelessList", GetWirelessList());
dictionary.Set("rememberedList", GetRememberedList());
+ chromeos::NetworkLibrary* cros =
+ chromeos::CrosLibrary::Get()->GetNetworkLibrary();
+ dictionary.SetBoolean("cellularAvailable", cros->cellular_available());
+ dictionary.SetBoolean("cellularEnabled", cros->cellular_enabled());
dom_ui_->CallJavascriptFunction(
L"options.InternetOptions.refreshNetworkData", dictionary);
}
diff --git a/chrome/browser/chromeos/dom_ui/internet_options_handler.h b/chrome/browser/chromeos/dom_ui/internet_options_handler.h
index 5d4aa80..45f107b 100644
--- a/chrome/browser/chromeos/dom_ui/internet_options_handler.h
+++ b/chrome/browser/chromeos/dom_ui/internet_options_handler.h
@@ -41,6 +41,10 @@ class InternetOptionsHandler : public OptionsPageUIHandler,
void LoginCertCallback(const ListValue* args);
void LoginToOtherCallback(const ListValue* args);
void SetDetailsCallback(const ListValue* args);
+ void EnableWifiCallback(const ListValue* args);
+ void DisableWifiCallback(const ListValue* args);
+ void EnableCellularCallback(const ListValue* args);
+ void DisableCellularCallback(const ListValue* args);
bool is_certificate_in_pkcs11(const std::string& path);
diff --git a/chrome/browser/resources/options/chromeos_internet_options.html b/chrome/browser/resources/options/chromeos_internet_options.html
index a476c1e..2966b1a 100644
--- a/chrome/browser/resources/options/chromeos_internet_options.html
+++ b/chrome/browser/resources/options/chromeos_internet_options.html
@@ -1,5 +1,14 @@
<div class="page hidden" id="internetPage">
<h1 i18n-content="internetPage"></h1>
+ <section id="wirelessButtons">
+ <h3 i18n-content="generalNetworkingTitle"></h3>
+ <div id="networkingControls">
+ <button id="enableWifi" i18n-content="enableWifi"></button>
+ <button id="disableWifi" i18n-content="disableWifi"></button>
+ <button id="enableCellular" i18n-content="enableCellular"></button>
+ <button id="disableCellular" i18n-content="disableCellular"></button>
+ </div>
+ </section>
<section id="wiredSection">
<h3 i18n-content="wired_title"></h3>
<div class="networks" id="wiredList"></div>
diff --git a/chrome/browser/resources/options/chromeos_internet_options.js b/chrome/browser/resources/options/chromeos_internet_options.js
index 5982c53..4cb9096 100644
--- a/chrome/browser/resources/options/chromeos_internet_options.js
+++ b/chrome/browser/resources/options/chromeos_internet_options.js
@@ -42,7 +42,7 @@ cr.define('options', function() {
$('wiredSection').hidden = (templateData.wiredList.length == 0);
$('wirelessSection').hidden = (templateData.wirelessList.length == 0);
$('rememberedSection').hidden = (templateData.rememberedList.length == 0);
-
+ InternetOptions.setupAttributes(templateData);
// Setting up the details page
$('detailsInternetDismiss').onclick = function(event) {
OptionsPage.clearOverlays();
@@ -51,6 +51,19 @@ cr.define('options', function() {
$('detailsInternetLogin').onclick = function(event) {
InternetOptions.loginFromDetails();
};
+ $('enableWifi').onclick = function(event) {
+ chrome.send('enableWifi', []);
+ };
+ $('disableWifi').onclick = function(event) {
+ chrome.send('disableWifi', []);
+ };
+ $('enableCellular').onclick = function(event) {
+ chrome.send('disableCellular', []);
+ };
+ $('disableCellular').onclick = function(event) {
+ chrome.send('disableCellular', []);
+ };
+
}
};
@@ -90,6 +103,25 @@ cr.define('options', function() {
}
};
+ InternetOptions.setupAttributes = function(data) {
+ var buttons = $('wirelessButtons');
+ if (data.wirelessList.length == 0) {
+ buttons.removeAttribute('hasWifi');
+ } else {
+ buttons.setAttribute('hasWifi', 'true');
+ }
+ if (!data.cellularAvailable) {
+ buttons.removeAttribute('cellularAvail');
+ } else {
+ buttons.setAttribute('cellularAvail', 'true');
+ if (data.cellularEnabled) {
+ buttons.setAttribute('hasCellular', 'true');
+ } else {
+ buttons.removeAttribute('hasCellular');
+ }
+ }
+ };
+
//
//Chrome callbacks
//
@@ -100,6 +132,7 @@ cr.define('options', function() {
$('wiredSection').hidden = (data.wiredList.length == 0);
$('wirelessSection').hidden = (data.wirelessList.length == 0);
+ InternetOptions.setupAttributes(data);
$('rememberedSection').hidden = (data.rememberedList.length == 0);
};
diff --git a/chrome/browser/resources/options/chromeos_internet_options_page.css b/chrome/browser/resources/options/chromeos_internet_options_page.css
index 96c090c..f137c85 100644
--- a/chrome/browser/resources/options/chromeos_internet_options_page.css
+++ b/chrome/browser/resources/options/chromeos_internet_options_page.css
@@ -15,6 +15,10 @@
display: none;
}
+#networkingControls {
+ text-align: center;
+}
+
.networks {
-webkit-margin-start: 15px;
padding: 2px;
@@ -118,3 +122,16 @@
#detailsInternetPage[certPkcs] > #certNetwork {
display: none;
}
+
+#wirelessButtons > * > button {
+ display: block;
+}
+
+#wirelessButtons[haswifi] > * > #enableWifi,
+#wirelessButtons:not([haswifi]) > * > #disableWifi,
+#wirelessButtons:not([cellularAvail]) > * > #disableCellular,
+#wirelessButtons:not([cellularAvail]) > * > #enableCellular,
+#wirelessButtons[hasCellular] > * > #enableCellular,
+#wirelessButtons:not([hasCellular]) > * > #disableCellular {
+ display: none;
+}
diff --git a/chrome/browser/resources/options/options_page.css b/chrome/browser/resources/options/options_page.css
index 9e3aae6..2fb67be 100644
--- a/chrome/browser/resources/options/options_page.css
+++ b/chrome/browser/resources/options/options_page.css
@@ -225,13 +225,14 @@ section {
}
section > h3 {
- width: 100px;
+ width: 150px;
font-weight: normal;
-webkit-padding-start: 0;
vertical-align: middle;
margin: 0;
font-size: 100%;
padding-top: 2px;
+ font-weight: bold;
}
section > div:only-of-type {