Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0cfbe837 authored by Bo Hu's avatar Bo Hu Committed by Android (Google) Code Review
Browse files

Merge "displaystate: check displayconfig/ on data partition first" into main

parents 6aeef448 2d835470
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -63,12 +63,14 @@ class DeviceStateToLayoutMap {
    private static final String CONFIG_FILE_PATH =
            "etc/displayconfig/display_layout_configuration.xml";

    private static final String DATA_CONFIG_FILE_PATH =
            "system/displayconfig/display_layout_configuration.xml";

    private final SparseArray<Layout> mLayoutMap = new SparseArray<>();
    private final DisplayIdProducer mIdProducer;

    DeviceStateToLayoutMap(DisplayIdProducer idProducer) {
        this(idProducer, Environment.buildPath(
                Environment.getVendorDirectory(), CONFIG_FILE_PATH));
        this(idProducer, getConfigFile());
    }

    DeviceStateToLayoutMap(DisplayIdProducer idProducer, File configFile) {
@@ -77,6 +79,16 @@ class DeviceStateToLayoutMap {
        createLayout(STATE_DEFAULT);
    }

    static private File getConfigFile() {
        final File configFileFromDataDir = Environment.buildPath(Environment.getDataDirectory(),
                DATA_CONFIG_FILE_PATH);
        if (configFileFromDataDir.exists()) {
            return configFileFromDataDir;
        } else {
            return Environment.buildPath(Environment.getVendorDirectory(), CONFIG_FILE_PATH);
        }
    }

    public void dumpLocked(IndentingPrintWriter ipw) {
        ipw.println("DeviceStateToLayoutMap:");
        ipw.increaseIndent();