summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Powell <adamp@google.com>2012-10-08 21:20:20 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-10-08 21:20:20 -0700
commit434f8172332f0abf02499f33846c6042ed628b0c (patch)
tree6f17985caebc4bdd1b5afc9bbb1479609a4e6e8e
parenteb7f1571ae60db17ead3a8879b4b49df306f009d (diff)
parentb072a9686c29bfbc05b732076a4e89bcca8db08a (diff)
downloadframeworks_base-434f8172332f0abf02499f33846c6042ed628b0c.zip
frameworks_base-434f8172332f0abf02499f33846c6042ed628b0c.tar.gz
frameworks_base-434f8172332f0abf02499f33846c6042ed628b0c.tar.bz2
Merge "Don't do a wifi p2p scan in MediaRouter if we're already connected" into jb-mr1-dev
-rw-r--r--media/java/android/media/MediaRouter.java11
1 files changed, 8 insertions, 3 deletions
diff --git a/media/java/android/media/MediaRouter.java b/media/java/android/media/MediaRouter.java
index a4516ab..16ad74f 100644
--- a/media/java/android/media/MediaRouter.java
+++ b/media/java/android/media/MediaRouter.java
@@ -693,7 +693,8 @@ public class MediaRouter {
final WifiDisplayStatus oldStatus = sStatic.mLastKnownWifiDisplayStatus;
// TODO Naive implementation. Make this smarter later.
- boolean needScan = false;
+ boolean wantScan = false;
+ boolean blockScan = false;
WifiDisplay[] oldDisplays = oldStatus != null ?
oldStatus.getRememberedDisplays() : new WifiDisplay[0];
WifiDisplay[] newDisplays = newStatus.getRememberedDisplays();
@@ -706,7 +707,7 @@ public class MediaRouter {
if (oldRemembered == null) {
addRouteStatic(makeWifiDisplayRoute(d,
findMatchingDisplay(d, availableDisplays) != null));
- needScan = true;
+ wantScan = true;
} else {
final boolean available = findMatchingDisplay(d, availableDisplays) != null;
final RouteInfo route = findWifiDisplayRoute(d);
@@ -716,6 +717,10 @@ public class MediaRouter {
final RouteInfo activeRoute = findWifiDisplayRoute(d);
if (activeRoute != null) {
selectRouteStatic(activeRoute.getSupportedTypes(), activeRoute);
+
+ // Don't scan if we're already connected to a wifi display,
+ // the scanning process can cause a hiccup with some configurations.
+ blockScan = true;
}
}
}
@@ -727,7 +732,7 @@ public class MediaRouter {
}
}
- if (needScan) {
+ if (wantScan && !blockScan) {
sStatic.mDisplayService.scanWifiDisplays();
}