summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Wink Saville <wink@google.com> 2013-03-21 21:46:03 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2013-03-21 21:46:03 +0000
commitad5b0eb7a7571389b0ec1f5195a60e16797920f5 (patch)
treed839ddb1ceb7f14cff0309262c472287599daada
parentd41f40a48b4786ce5a6585bd1845832db075678e (diff)
parent7b7beb7952440ee2e255694b7b19e60abae93dc0 (diff)
Merge "Notify user when wi-fi is toggled about scans" into jb-mr2-dev
-rw-r--r--core/java/android/provider/Settings.java8
-rw-r--r--services/java/com/android/server/wifi/WifiService.java12
-rw-r--r--wifi/java/android/net/wifi/WifiManager.java9
3 files changed, 29 insertions, 0 deletions
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index d251ca25e068..8346cc169919 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -4791,6 +4791,14 @@ public final class Settings {
"wifi_scan_always_enabled";
/**
+ * Setting to indicate whether the user should be notified that scans are still
+ * available when Wi-Fi is turned off
+ * @hide
+ */
+ public static final String WIFI_NOTIFY_SCAN_ALWAYS_AVAILABLE =
+ "wifi_notify_scan_always_enabled";
+
+ /**
* Used to save the Wifi_ON state prior to tethering.
* This state will be checked to restore Wifi after
* the user turns off tethering.
diff --git a/services/java/com/android/server/wifi/WifiService.java b/services/java/com/android/server/wifi/WifiService.java
index c46f2174593e..9dde58f75975 100644
--- a/services/java/com/android/server/wifi/WifiService.java
+++ b/services/java/com/android/server/wifi/WifiService.java
@@ -396,6 +396,18 @@ public final class WifiService extends IWifiManager.Stub {
long ident = Binder.clearCallingIdentity();
try {
+
+ /* Turning off Wi-Fi when scans are still available */
+ if (!enable && isScanningAlwaysAvailable()) {
+ /* This can be changed by user in the app to not be notified again */
+ boolean notifyUser = (Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.WIFI_NOTIFY_SCAN_ALWAYS_AVAILABLE, 1) == 1);
+ if (notifyUser) {
+ Intent intent = new Intent(WifiManager.ACTION_NOTIFY_SCAN_ALWAYS_AVAILABLE);
+ mContext.startActivityAsUser(intent, null, UserHandle.CURRENT);
+ }
+ }
+
if (! mSettingsStore.handleWifiToggled(enable)) {
// Nothing to do if wifi cannot be toggled
return true;
diff --git a/wifi/java/android/net/wifi/WifiManager.java b/wifi/java/android/net/wifi/WifiManager.java
index f6543104ddd7..0c0a144ae234 100644
--- a/wifi/java/android/net/wifi/WifiManager.java
+++ b/wifi/java/android/net/wifi/WifiManager.java
@@ -408,6 +408,15 @@ public class WifiManager {
"android.net.wifi.action.REQUEST_SCAN_ALWAYS_AVAILABLE";
/**
+ * Activity Action: Show a system activity that notifies the user that
+ * scanning is still available when Wi-Fi is turned off
+ * @hide
+ */
+ @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
+ public static final String ACTION_NOTIFY_SCAN_ALWAYS_AVAILABLE =
+ "android.net.wifi.action.NOTIFY_SCAN_ALWAYS_AVAILABLE";
+
+ /**
* Activity Action: Pick a Wi-Fi network to connect to.
* <p>Input: Nothing.
* <p>Output: Nothing.