From 017d82af8a978cf20a848f5698840f4661aae3ea Mon Sep 17 00:00:00 2001 From: Chong Zhang Date: Tue, 4 Jun 2013 18:38:07 -0700 Subject: [PATCH] wifi-display: grey out display if it's unavailable Bug 9229799 Change-Id: I981423257a6ddff9deaea7f8339944cf46c1a0ba --- res/values/strings.xml | 2 ++ .../android/settings/wfd/WifiDisplaySettings.java | 13 ++++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/res/values/strings.xml b/res/values/strings.xml index 81c81f84d81..965c1ad4f2d 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -1221,6 +1221,8 @@ Connected Available + + Busy Display settings diff --git a/src/com/android/settings/wfd/WifiDisplaySettings.java b/src/com/android/settings/wfd/WifiDisplaySettings.java index 5b732d66506..ca2d2545174 100755 --- a/src/com/android/settings/wfd/WifiDisplaySettings.java +++ b/src/com/android/settings/wfd/WifiDisplaySettings.java @@ -182,7 +182,7 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment { if (display.equals(mWifiDisplayStatus.getActiveDisplay())) { showDisconnectDialog(display); - } else { + } else if (display.canConnect()){ mDisplayManager.connectWifiDisplay(display.getDeviceAddress()); } } @@ -267,6 +267,17 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment { } else if (paired && contains(mWifiDisplayStatus.getAvailableDisplays(), d.getDeviceAddress())) { p.setSummary(R.string.wifi_display_status_available); + for (WifiDisplay display : mWifiDisplayStatus.getAvailableDisplays()) { + if (display.getDeviceAddress().equals(d.getDeviceAddress()) && + !display.canConnect()) { + p.setSummary(R.string.wifi_display_status_busy); + p.setEnabled(false); + break; + } + } + } else if (!paired && !d.canConnect()) { + p.setSummary(R.string.wifi_display_status_busy); + p.setEnabled(false); } if (paired) { p.setWidgetLayoutResource(R.layout.wifi_display_preference);