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

Commit 292b9fd2 authored by Jorim Jaggi's avatar Jorim Jaggi
Browse files

Add developer option for freeform window support (2/2)

Also disable default force-resizable on non-user builds.

Bug: 25276672
Bug: 24815256
Change-Id: I26b04d73bc605da903993084ad171c42a64f0bb2
parent 3f19085f
Loading
Loading
Loading
Loading
+27 −9
Original line number Diff line number Diff line
@@ -54,10 +54,8 @@ import android.os.StrictMode;
import android.os.SystemProperties;
import android.os.UserManager;
import android.os.storage.IMountService;
import android.os.storage.StorageManager;
import android.provider.SearchIndexableResource;
import android.provider.Settings;
import android.provider.Settings.Global;
import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.DropDownPreference;
import android.support.v7.preference.ListPreference;
@@ -168,6 +166,7 @@ public class DevelopmentSettings extends SettingsPreferenceFragment
    private static final String MOBILE_DATA_ALWAYS_ON = "mobile_data_always_on";
    private static final String KEY_COLOR_MODE = "color_mode";
    private static final String FORCE_RESIZABLE_KEY = "force_resizable_activities";
    private static final String ENABLE_FREEFORM_SUPPORT_KEY = "enable_freeform_support";

    private static final String INACTIVE_APPS_KEY = "inactive_apps";

@@ -276,6 +275,8 @@ public class DevelopmentSettings extends SettingsPreferenceFragment

    private SwitchPreference mForceResizable;

    private SwitchPreference mEnableFreeformSupport;

    private final ArrayList<Preference> mAllPrefs = new ArrayList<Preference>();

    private final ArrayList<SwitchPreference> mResetSwitchPrefs
@@ -406,6 +407,7 @@ public class DevelopmentSettings extends SettingsPreferenceFragment
        mSimulateColorSpace = addListPreference(SIMULATE_COLOR_SPACE);
        mUSBAudio = findAndInitSwitchPref(USB_AUDIO_KEY);
        mForceResizable = findAndInitSwitchPref(FORCE_RESIZABLE_KEY);
        mEnableFreeformSupport = findAndInitSwitchPref(ENABLE_FREEFORM_SUPPORT_KEY);

        mImmediatelyDestroyActivities = (SwitchPreference) findPreference(
                IMMEDIATELY_DESTROY_ACTIVITIES_KEY);
@@ -678,6 +680,7 @@ public class DevelopmentSettings extends SettingsPreferenceFragment
        updateSimulateColorSpace();
        updateUSBAudioOptions();
        updateForceResizableOptions();
        updateEnableFreeformWindowsSupportOptions();
        updateWebViewProviderOptions();
    }

@@ -907,7 +910,8 @@ public class DevelopmentSettings extends SettingsPreferenceFragment

    private void writeVerifyAppsOverUsbOptions() {
        Settings.Global.putInt(getActivity().getContentResolver(),
              Settings.Global.PACKAGE_VERIFIER_INCLUDE_ADB, mVerifyAppsOverUsb.isChecked() ? 1 : 0);
                Settings.Global.PACKAGE_VERIFIER_INCLUDE_ADB,
                mVerifyAppsOverUsb.isChecked() ? 1 : 0);
    }

    private boolean enableVerifierSetting() {
@@ -1063,7 +1067,8 @@ public class DevelopmentSettings extends SettingsPreferenceFragment
    }

    private void updateHardwareUiOptions() {
        updateSwitchPreference(mForceHardwareUi, SystemProperties.getBoolean(HARDWARE_UI_PROPERTY, false));
        updateSwitchPreference(mForceHardwareUi,
                SystemProperties.getBoolean(HARDWARE_UI_PROPERTY, false));
    }

    private void writeHardwareUiOptions() {
@@ -1267,6 +1272,17 @@ public class DevelopmentSettings extends SettingsPreferenceFragment
                mForceResizable.isChecked() ? 1 : 0);
    }

    private void updateEnableFreeformWindowsSupportOptions() {
        updateSwitchPreference(mEnableFreeformSupport, Settings.Global.getInt(getContentResolver(),
                Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT, 0) != 0);
    }

    private void writeEnableFreeformWindowsSupportOptions() {
        Settings.Global.putInt(getContentResolver(),
                Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT,
                mEnableFreeformSupport.isChecked() ? 1 : 0);
    }

    private void updateForceRtlOptions() {
        updateSwitchPreference(mForceRtlLayout,
                Settings.Global.getInt(getActivity().getContentResolver(),
@@ -1790,6 +1806,8 @@ public class DevelopmentSettings extends SettingsPreferenceFragment
            writeUSBAudioOptions();
        } else if (preference == mForceResizable) {
            writeForceResizableOptions();
        } else if (preference == mEnableFreeformSupport){
            writeEnableFreeformWindowsSupportOptions();
        } else if (INACTIVE_APPS_KEY.equals(preference.getKey())) {
            startInactiveAppsFragment();
        } else if (BACKGROUND_CHECK_KEY.equals(preference.getKey())) {