summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <treehugger-gerrit@google.com> 2020-03-20 03:56:44 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2020-03-20 03:56:44 +0000
commitb4a43d87869af7c9f5a67e07a8c744a7fd9af0ec (patch)
tree7aa5dc063608df0925b98e4ac40f327e3f56a2b9
parentfa0a47ed741107656e9fc2cbd8f2011c80b248da (diff)
parent0cbc3786f37cc47fcdddc99c26455d5fb37c318f (diff)
Merge "Use HdmiProperties class for ro.hdmi.device_type"
-rw-r--r--services/core/java/com/android/server/hdmi/Constants.java4
-rw-r--r--services/core/java/com/android/server/hdmi/HdmiControlService.java12
2 files changed, 11 insertions, 5 deletions
diff --git a/services/core/java/com/android/server/hdmi/Constants.java b/services/core/java/com/android/server/hdmi/Constants.java
index 7c42cc2465e0..3006ef41931f 100644
--- a/services/core/java/com/android/server/hdmi/Constants.java
+++ b/services/core/java/com/android/server/hdmi/Constants.java
@@ -306,10 +306,6 @@ final class Constants {
static final String PROPERTY_PREFERRED_ADDRESS_PLAYBACK = "persist.sys.hdmi.addr.playback";
static final String PROPERTY_PREFERRED_ADDRESS_TV = "persist.sys.hdmi.addr.tv";
- // Property name for the local device configurations.
- // TODO(OEM): OEM should provide this property, and the value is the comma separated integer
- // values which denotes the device type in HDMI Spec 1.4.
- static final String PROPERTY_DEVICE_TYPE = "ro.hdmi.device_type";
// TODO(OEM): Set this to false to keep the playback device in sleep upon hotplug event.
// True by default.
diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java
index a83dd215593f..d489c395cb8a 100644
--- a/services/core/java/com/android/server/hdmi/HdmiControlService.java
+++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java
@@ -67,6 +67,7 @@ import android.os.SystemClock;
import android.os.SystemProperties;
import android.os.UserHandle;
import android.provider.Settings.Global;
+import android.sysprop.HdmiProperties;
import android.text.TextUtils;
import android.util.ArraySet;
import android.util.Slog;
@@ -94,6 +95,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
+import java.util.Objects;
+import java.util.stream.Collectors;
/**
* Provides a service for sending and processing HDMI control messages,
@@ -435,7 +438,14 @@ public class HdmiControlService extends SystemService {
public HdmiControlService(Context context) {
super(context);
- mLocalDevices = getIntList(SystemProperties.get(Constants.PROPERTY_DEVICE_TYPE));
+ List<Integer> deviceTypes = HdmiProperties.device_type();
+ if (deviceTypes.contains(null)) {
+ Slog.w(TAG, "Error parsing ro.hdmi.device.type: " + SystemProperties.get(
+ "ro.hdmi.device_type"));
+ deviceTypes = deviceTypes.stream().filter(Objects::nonNull).collect(
+ Collectors.toList());
+ }
+ mLocalDevices = deviceTypes;
mSettingsObserver = new SettingsObserver(mHandler);
}