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

Commit d37e54ad authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "Initialize some settings, and make them configurable"

parents 28d0a48c aae94604
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -20,4 +20,5 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="app_label" msgid="4567566098528588863">"设置存储"</string>
    <string name="name_sim"></string>
</resources>
+1 −0
Original line number Diff line number Diff line
@@ -74,6 +74,7 @@
    <string name="def_lock_sound" translatable="false">/system/media/audio/ui/Lock.ogg</string>
    <string name="def_unlock_sound" translatable="false">/system/media/audio/ui/Unlock.ogg</string>
    <string name="def_wireless_charging_started_sound" translatable="false">/system/media/audio/ui/WirelessChargingStarted.ogg</string>
    <bool name="carrier_sim_name_enabled">false</bool>

    <bool name="def_lockscreen_disabled">false</bool>
    <bool name="def_device_provisioned">false</bool>
+4 −0
Original line number Diff line number Diff line
@@ -19,4 +19,8 @@
<resources>
    <!-- Name of the activity for Settings storage. -->
    <string name="app_label">Settings Storage</string>
    <!-- Name of the SIM cards. -->
    <string name="name_sim">SIM</string>
    <string name="carrier_name_cdma" translatable="false">CDMA</string>
    <string name="carrier_name_gsm" translatable="false">GSM</string>
</resources>
+65 −0
Original line number Diff line number Diff line
@@ -47,6 +47,7 @@ import android.text.TextUtils;
import android.util.Log;

import com.android.internal.content.PackageHelper;
import com.android.internal.telephony.MSimConstants;
import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneConstants;
import com.android.internal.telephony.RILConstants;
@@ -1960,9 +1961,73 @@ public class DatabaseHelper extends SQLiteOpenHelper {
    private void loadSettings(SQLiteDatabase db) {
        loadSystemSettings(db);
        loadSecureSettings(db);
        loadEnhancedSystemSettings(db);
        // The global table only exists for the 'owner' user
        if (mUserHandle == UserHandle.USER_OWNER) {
            loadGlobalSettings(db);
            loadEnhancedGlobalSettings(db);
        }
    }

    private void loadEnhancedGlobalSettings(SQLiteDatabase db) {
        SQLiteStatement stmt = null;
        try {
            stmt = db.compileStatement("INSERT OR IGNORE INTO global(name,value)"
                    + " VALUES(?,?);");

            loadSetting(stmt,
                    Settings.Global.MULTI_SIM_SMS_SUBSCRIPTION, MSimConstants.SUB1);

            loadSetting(stmt,
                    Settings.Global.MULTI_SIM_DATA_CALL_SUBSCRIPTION, MSimConstants.SUB1);

            loadSetting(stmt,
                    Settings.Global.MULTI_SIM_VOICE_CALL_SUBSCRIPTION, MSimConstants.SUB1);
        } finally {
            if (stmt != null)
                stmt.close();
        }
    }

    private void loadEnhancedSystemSettings(SQLiteDatabase db) {
        SQLiteStatement stmt = null;
        try {
            stmt = db.compileStatement("INSERT OR IGNORE INTO system(name,value)"
                    + " VALUES(?,?);");

            loadSetting(stmt, "cabl_enabled", 0);
            loadSetting(stmt, "proximity_sensor", 1);
            loadSetting(stmt, "show_call_duration", 1);
            loadSetting(stmt, "vibrate_on_accepted", 1);

            if (mContext.getResources().getBoolean(R.bool.carrier_sim_name_enabled)) {
                for (int i = 0; i < MSimConstants.MAX_PHONE_COUNT_TRI_SIM; i++) {
                    if (i == 0) {
                        loadSetting(stmt, "perferred_name_sub" + (i + 1),
                                mContext.getString(R.string.carrier_name_cdma));
                    } else {
                        loadSetting(stmt, "perferred_name_sub" + (i + 1),
                                mContext.getString(R.string.carrier_name_gsm));
                    }
                }
            } else {
                for (int i = 0; i < MSimConstants.MAX_PHONE_COUNT_TRI_SIM; i++) {
                    loadSetting(stmt, "perferred_name_sub" + (i + 1),
                            mContext.getString(R.string.name_sim) + (i + 1));
                }
            }
            String iconsIndex = null;
            for (int i = 0; i < MSimConstants.MAX_PHONE_COUNT_TRI_SIM; i++) {
                if (i == 0) {
                    iconsIndex = String.valueOf(i);
                } else {
                    iconsIndex += "," + i;
                }
            }
            loadSetting(stmt, "preferred_sim_icon_index", iconsIndex);
        } finally {
            if (stmt != null)
                stmt.close();
        }
    }