diff --git a/res/values/strings.xml b/res/values/strings.xml index f5854b4a98c..9c314c3165e 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -5173,6 +5173,11 @@ Makes any app elligible to be written to external storage, regardless of manifest values + + Force activities to be resizable + + Makes all activities resizable for multi-window, regardless of manifest values. + Data usage diff --git a/res/xml/development_prefs.xml b/res/xml/development_prefs.xml index e2e7b26539b..8417e48ccdf 100644 --- a/res/xml/development_prefs.xml +++ b/res/xml/development_prefs.xml @@ -348,6 +348,10 @@ android:title="@string/force_allow_on_external" android:summary="@string/force_allow_on_external_summary"/> + diff --git a/src/com/android/settings/DevelopmentSettings.java b/src/com/android/settings/DevelopmentSettings.java index 80de567cf9f..173a51ade15 100644 --- a/src/com/android/settings/DevelopmentSettings.java +++ b/src/com/android/settings/DevelopmentSettings.java @@ -55,6 +55,7 @@ import android.os.SystemProperties; import android.os.UserManager; import android.provider.SearchIndexableResource; import android.provider.Settings; +import android.provider.Settings.Global; import android.support.v14.preference.SwitchPreference; import android.support.v7.preference.ListPreference; import android.support.v7.preference.Preference; @@ -157,6 +158,7 @@ public class DevelopmentSettings extends SettingsPreferenceFragment private static final String WIFI_LEGACY_DHCP_CLIENT_KEY = "legacy_dhcp_client"; 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 INACTIVE_APPS_KEY = "inactive_apps"; @@ -259,6 +261,8 @@ public class DevelopmentSettings extends SettingsPreferenceFragment private ColorModePreference mColorModePreference; + private SwitchPreference mForceResizable; + private final ArrayList mAllPrefs = new ArrayList(); private final ArrayList mResetSwitchPrefs @@ -383,6 +387,7 @@ public class DevelopmentSettings extends SettingsPreferenceFragment mOpenGLTraces = addListPreference(OPENGL_TRACES_KEY); mSimulateColorSpace = addListPreference(SIMULATE_COLOR_SPACE); mUSBAudio = findAndInitSwitchPref(USB_AUDIO_KEY); + mForceResizable = findAndInitSwitchPref(FORCE_RESIZABLE_KEY); mImmediatelyDestroyActivities = (SwitchPreference) findPreference( IMMEDIATELY_DESTROY_ACTIVITIES_KEY); @@ -636,6 +641,7 @@ public class DevelopmentSettings extends SettingsPreferenceFragment updateMobileDataAlwaysOnOptions(); updateSimulateColorSpace(); updateUSBAudioOptions(); + updateForceResizableOptions(); } private void resetDangerousOptions() { @@ -1182,6 +1188,18 @@ public class DevelopmentSettings extends SettingsPreferenceFragment mUSBAudio.isChecked() ? 1 : 0); } + private void updateForceResizableOptions() { + updateSwitchPreference(mForceResizable, Settings.Global.getInt(getContentResolver(), + Settings.Global.DEVELOPMENT_FORCE_RESIZABLE_ACTIVITIES, + Build.IS_DEBUGGABLE ? 1 : 0) != 0); + } + + private void writeForceResizableOptions() { + Settings.Global.putInt(getContentResolver(), + Settings.Global.DEVELOPMENT_FORCE_RESIZABLE_ACTIVITIES, + mForceResizable.isChecked() ? 1 : 0); + } + private void updateForceRtlOptions() { updateSwitchPreference(mForceRtlLayout, Settings.Global.getInt(getActivity().getContentResolver(), @@ -1686,6 +1704,8 @@ public class DevelopmentSettings extends SettingsPreferenceFragment writeMobileDataAlwaysOnOptions(); } else if (preference == mUSBAudio) { writeUSBAudioOptions(); + } else if (preference == mForceResizable) { + writeForceResizableOptions(); } else if (INACTIVE_APPS_KEY.equals(preference.getKey())) { startInactiveAppsFragment(); } else {