Loading media/java/android/media/MediaRouter.java +8 −3 Original line number Original line Diff line number Diff line Loading @@ -693,7 +693,8 @@ public class MediaRouter { final WifiDisplayStatus oldStatus = sStatic.mLastKnownWifiDisplayStatus; final WifiDisplayStatus oldStatus = sStatic.mLastKnownWifiDisplayStatus; // TODO Naive implementation. Make this smarter later. // TODO Naive implementation. Make this smarter later. boolean needScan = false; boolean wantScan = false; boolean blockScan = false; WifiDisplay[] oldDisplays = oldStatus != null ? WifiDisplay[] oldDisplays = oldStatus != null ? oldStatus.getRememberedDisplays() : new WifiDisplay[0]; oldStatus.getRememberedDisplays() : new WifiDisplay[0]; WifiDisplay[] newDisplays = newStatus.getRememberedDisplays(); WifiDisplay[] newDisplays = newStatus.getRememberedDisplays(); Loading @@ -706,7 +707,7 @@ public class MediaRouter { if (oldRemembered == null) { if (oldRemembered == null) { addRouteStatic(makeWifiDisplayRoute(d, addRouteStatic(makeWifiDisplayRoute(d, findMatchingDisplay(d, availableDisplays) != null)); findMatchingDisplay(d, availableDisplays) != null)); needScan = true; wantScan = true; } else { } else { final boolean available = findMatchingDisplay(d, availableDisplays) != null; final boolean available = findMatchingDisplay(d, availableDisplays) != null; final RouteInfo route = findWifiDisplayRoute(d); final RouteInfo route = findWifiDisplayRoute(d); Loading @@ -716,6 +717,10 @@ public class MediaRouter { final RouteInfo activeRoute = findWifiDisplayRoute(d); final RouteInfo activeRoute = findWifiDisplayRoute(d); if (activeRoute != null) { if (activeRoute != null) { selectRouteStatic(activeRoute.getSupportedTypes(), activeRoute); 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; } } } } } } Loading @@ -727,7 +732,7 @@ public class MediaRouter { } } } } if (needScan) { if (wantScan && !blockScan) { sStatic.mDisplayService.scanWifiDisplays(); sStatic.mDisplayService.scanWifiDisplays(); } } Loading Loading
media/java/android/media/MediaRouter.java +8 −3 Original line number Original line Diff line number Diff line Loading @@ -693,7 +693,8 @@ public class MediaRouter { final WifiDisplayStatus oldStatus = sStatic.mLastKnownWifiDisplayStatus; final WifiDisplayStatus oldStatus = sStatic.mLastKnownWifiDisplayStatus; // TODO Naive implementation. Make this smarter later. // TODO Naive implementation. Make this smarter later. boolean needScan = false; boolean wantScan = false; boolean blockScan = false; WifiDisplay[] oldDisplays = oldStatus != null ? WifiDisplay[] oldDisplays = oldStatus != null ? oldStatus.getRememberedDisplays() : new WifiDisplay[0]; oldStatus.getRememberedDisplays() : new WifiDisplay[0]; WifiDisplay[] newDisplays = newStatus.getRememberedDisplays(); WifiDisplay[] newDisplays = newStatus.getRememberedDisplays(); Loading @@ -706,7 +707,7 @@ public class MediaRouter { if (oldRemembered == null) { if (oldRemembered == null) { addRouteStatic(makeWifiDisplayRoute(d, addRouteStatic(makeWifiDisplayRoute(d, findMatchingDisplay(d, availableDisplays) != null)); findMatchingDisplay(d, availableDisplays) != null)); needScan = true; wantScan = true; } else { } else { final boolean available = findMatchingDisplay(d, availableDisplays) != null; final boolean available = findMatchingDisplay(d, availableDisplays) != null; final RouteInfo route = findWifiDisplayRoute(d); final RouteInfo route = findWifiDisplayRoute(d); Loading @@ -716,6 +717,10 @@ public class MediaRouter { final RouteInfo activeRoute = findWifiDisplayRoute(d); final RouteInfo activeRoute = findWifiDisplayRoute(d); if (activeRoute != null) { if (activeRoute != null) { selectRouteStatic(activeRoute.getSupportedTypes(), activeRoute); 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; } } } } } } Loading @@ -727,7 +732,7 @@ public class MediaRouter { } } } } if (needScan) { if (wantScan && !blockScan) { sStatic.mDisplayService.scanWifiDisplays(); sStatic.mDisplayService.scanWifiDisplays(); } } Loading