summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorWink Saville <wink@google.com>2013-10-03 08:34:46 -0700
committerWink Saville <wink@google.com>2013-10-03 08:34:46 -0700
commit3ec8e7fb79f2e662c2b06cfec118a0eeaefd9370 (patch)
tree09a2c63a021e5bcbcd8db183c1cadc8c8cbba05b /services
parent09be37b2d3e66b7d718b0fd0ea9e73ad15493acb (diff)
downloadframeworks_base-3ec8e7fb79f2e662c2b06cfec118a0eeaefd9370.zip
frameworks_base-3ec8e7fb79f2e662c2b06cfec118a0eeaefd9370.tar.gz
frameworks_base-3ec8e7fb79f2e662c2b06cfec118a0eeaefd9370.tar.bz2
Use networkType to display wifi and mobile notification separately.
There are two bugs one is I was clearing the notification in CaptivePortalTracker when entering the ActivateState. (double check according to bug 5021626 we should be calling enter) Second is we could have the need to display both icons but can't because we only allow one. The solution I'm proposing here is to allow two notifications and have then controlled separately. Bug: 10886908 Change-Id: I30e7130bc542535492d175640a4990c592f32806
Diffstat (limited to 'services')
-rw-r--r--services/java/com/android/server/ConnectivityService.java16
1 files changed, 9 insertions, 7 deletions
diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java
index 3f13f3a..f005f5f 100644
--- a/services/java/com/android/server/ConnectivityService.java
+++ b/services/java/com/android/server/ConnectivityService.java
@@ -3987,8 +3987,8 @@ public class ConnectivityService extends IConnectivityManager.Stub {
return timeOutMs;
}
- // Start off with notification off
- setProvNotificationVisible(false, ConnectivityManager.TYPE_NONE, null, null);
+ // Start off with mobile notification off
+ setProvNotificationVisible(false, ConnectivityManager.TYPE_MOBILE_HIPRI, null, null);
CheckMp checkMp = new CheckMp(mContext, this);
CheckMp.CallBack cb = new CheckMp.CallBack() {
@@ -4013,7 +4013,8 @@ public class ConnectivityService extends IConnectivityManager.Stub {
}
if (TextUtils.isEmpty(url) == false) {
if (DBG) log("CheckMp.onComplete: warm (redirected), url=" + url);
- setProvNotificationVisible(true, ni.getType(), ni.getExtraInfo(),
+ setProvNotificationVisible(true,
+ ConnectivityManager.TYPE_MOBILE_HIPRI, ni.getExtraInfo(),
url);
} else {
if (DBG) log("CheckMp.onComplete: warm (redirected), no url");
@@ -4024,7 +4025,8 @@ public class ConnectivityService extends IConnectivityManager.Stub {
String url = getMobileProvisioningUrl();
if (TextUtils.isEmpty(url) == false) {
if (DBG) log("CheckMp.onComplete: warm (no dns/tcp), url=" + url);
- setProvNotificationVisible(true, ni.getType(), ni.getExtraInfo(),
+ setProvNotificationVisible(true,
+ ConnectivityManager.TYPE_MOBILE_HIPRI, ni.getExtraInfo(),
url);
} else {
if (DBG) log("CheckMp.onComplete: warm (no dns/tcp), no url");
@@ -4426,7 +4428,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
private void handleMobileProvisioningAction(String url) {
// Notication mark notification as not visible
- setProvNotificationVisible(false, ConnectivityManager.TYPE_NONE, null, null);
+ setProvNotificationVisible(false, ConnectivityManager.TYPE_MOBILE_HIPRI, null, null);
// If provisioning network handle as a special case,
// otherwise launch browser with the intent directly.
@@ -4512,14 +4514,14 @@ public class ConnectivityService extends IConnectivityManager.Stub {
notification.setLatestEventInfo(mContext, title, details, notification.contentIntent);
try {
- notificationManager.notify(NOTIFICATION_ID, 1, notification);
+ notificationManager.notify(NOTIFICATION_ID, networkType, notification);
} catch (NullPointerException npe) {
loge("setNotificaitionVisible: visible notificationManager npe=" + npe);
npe.printStackTrace();
}
} else {
try {
- notificationManager.cancel(NOTIFICATION_ID, 1);
+ notificationManager.cancel(NOTIFICATION_ID, networkType);
} catch (NullPointerException npe) {
loge("setNotificaitionVisible: cancel notificationManager npe=" + npe);
npe.printStackTrace();