Merge "Don't start an observer without an extcon device" into qt-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
9c505c5572
@@ -159,7 +159,13 @@ public abstract class ExtconUEventObserver extends UEventObserver {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Does the {@link /sys/class/extcon} directory exist */
|
/** Does the {@code /sys/class/extcon/<name>} directory exist */
|
||||||
|
public static boolean namedExtconDirExists(String name) {
|
||||||
|
File extconDir = new File("/sys/class/extcon/" + name);
|
||||||
|
return extconDir.exists() && extconDir.isDirectory();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Does the {@code /sys/class/extcon} directory exist */
|
||||||
public static boolean extconExists() {
|
public static boolean extconExists() {
|
||||||
File extconDir = new File("/sys/class/extcon");
|
File extconDir = new File("/sys/class/extcon");
|
||||||
return extconDir.exists() && extconDir.isDirectory();
|
return extconDir.exists() && extconDir.isDirectory();
|
||||||
|
|||||||
@@ -3632,11 +3632,15 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (ExtconUEventObserver.extconExists()) {
|
} else if (ExtconUEventObserver.extconExists()
|
||||||
|
&& ExtconUEventObserver.namedExtconDirExists(HdmiVideoExtconUEventObserver.NAME)) {
|
||||||
HdmiVideoExtconUEventObserver observer = new HdmiVideoExtconUEventObserver();
|
HdmiVideoExtconUEventObserver observer = new HdmiVideoExtconUEventObserver();
|
||||||
plugged = observer.init();
|
plugged = observer.init();
|
||||||
mHDMIObserver = observer;
|
mHDMIObserver = observer;
|
||||||
|
} else if (localLOGV) {
|
||||||
|
Slog.v(TAG, "Not observing HDMI plug state because HDMI was not found.");
|
||||||
}
|
}
|
||||||
|
|
||||||
// This dance forces the code in setHdmiPlugged to run.
|
// This dance forces the code in setHdmiPlugged to run.
|
||||||
// Always do this so the sticky intent is stuck (to false) if there is no hdmi.
|
// Always do this so the sticky intent is stuck (to false) if there is no hdmi.
|
||||||
mDefaultDisplayPolicy.setHdmiPlugged(plugged, true /* force */);
|
mDefaultDisplayPolicy.setHdmiPlugged(plugged, true /* force */);
|
||||||
@@ -5696,7 +5700,8 @@ public class PhoneWindowManager implements WindowManagerPolicy {
|
|||||||
|
|
||||||
private class HdmiVideoExtconUEventObserver extends ExtconStateObserver<Boolean> {
|
private class HdmiVideoExtconUEventObserver extends ExtconStateObserver<Boolean> {
|
||||||
private static final String HDMI_EXIST = "HDMI=1";
|
private static final String HDMI_EXIST = "HDMI=1";
|
||||||
private final ExtconInfo mHdmi = new ExtconInfo("hdmi");
|
private static final String NAME = "hdmi";
|
||||||
|
private final ExtconInfo mHdmi = new ExtconInfo(NAME);
|
||||||
|
|
||||||
private boolean init() {
|
private boolean init() {
|
||||||
boolean plugged = false;
|
boolean plugged = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user