Merge "Create new sections for developer options" into main

This commit is contained in:
Treehugger Robot
2025-02-14 03:40:28 -08:00
committed by Android (Google) Code Review
18 changed files with 98 additions and 54 deletions

View File

@@ -745,32 +745,6 @@
android:title="@string/force_allow_on_external" android:title="@string/force_allow_on_external"
android:summary="@string/force_allow_on_external_summary" /> android:summary="@string/force_allow_on_external_summary" />
<SwitchPreferenceCompat
android:key="force_resizable_activities"
android:title="@string/force_resizable_activities"
android:summary="@string/force_resizable_activities_summary" />
<SwitchPreferenceCompat
android:key="override_desktop_mode_features"
android:title="@string/enable_desktop_mode" />
<SwitchPreferenceCompat
android:key="enable_freeform_support"
android:title="@string/enable_freeform_support" />
<SwitchPreferenceCompat
android:key="override_desktop_experience_features"
android:title="@string/enable_desktop_experience_features"/>
<SwitchPreferenceCompat
android:key="force_desktop_mode_on_external_displays"
android:title="@string/enable_desktop_mode_on_secondary_display"/>
<SwitchPreferenceCompat
android:key="enable_non_resizable_multi_window"
android:title="@string/enable_non_resizable_multi_window"
android:summary="@string/enable_non_resizable_multi_window_summary" />
<SwitchPreferenceCompat <SwitchPreferenceCompat
android:key="back_navigation_animation" android:key="back_navigation_animation"
android:title="@string/back_navigation_animation" android:title="@string/back_navigation_animation"
@@ -792,11 +766,45 @@
</PreferenceCategory> </PreferenceCategory>
<PreferenceCategory
android:key="window_management_category"
android:title="@string/window_management_category"
android:order="1100">
<SwitchPreferenceCompat
android:key="force_resizable_activities"
android:title="@string/force_resizable_activities"
android:summary="@string/force_resizable_activities_summary" />
<SwitchPreferenceCompat
android:key="enable_non_resizable_multi_window"
android:title="@string/enable_non_resizable_multi_window"
android:summary="@string/enable_non_resizable_multi_window_summary" />
<SwitchPreferenceCompat
android:key="override_desktop_mode_features"
android:title="@string/enable_desktop_mode" />
<SwitchPreferenceCompat
android:key="enable_freeform_support"
android:title="@string/enable_freeform_support" />
<SwitchPreferenceCompat
android:key="override_desktop_experience_features"
android:title="@string/enable_desktop_experience_features"/>
<SwitchPreferenceCompat
android:key="force_desktop_mode_on_external_displays"
android:title="@string/enable_desktop_mode_on_secondary_display"/>
</PreferenceCategory>
<PreferenceCategory <PreferenceCategory
android:key="debug_autofill_category" android:key="debug_autofill_category"
android:title="@string/debug_autofill_category" android:title="@string/debug_autofill_category"
settings:searchable="false" settings:searchable="false"
android:order="1100"> <!-- Incremented by 100 from last order (i.e. 1000) --> android:order="1200"> <!-- Incremented by 100 from last order (i.e. 1000) -->
<ListPreference <ListPreference
android:key="autofill_logging_level" android:key="autofill_logging_level"
@@ -821,7 +829,7 @@
<PreferenceCategory <PreferenceCategory
android:key="storage_category" android:key="storage_category"
android:title="@string/storage_category" android:title="@string/storage_category"
android:order="1200"> android:order="1300">
<Preference <Preference
android:key="shared_data" android:key="shared_data"
@@ -836,7 +844,7 @@
<PreferenceCategory <PreferenceCategory
android:key="location_category" android:key="location_category"
android:title="@string/location_category" android:title="@string/location_category"
android:order="1300"> android:order="1400">
<Preference android:key="mock_location_app" <Preference android:key="mock_location_app"
android:title="@string/mock_location_app" /> android:title="@string/mock_location_app" />
@@ -857,7 +865,7 @@
<PreferenceCategory <PreferenceCategory
android:key="input_method_category" android:key="input_method_category"
android:title="@string/input_method_category" android:title="@string/input_method_category"
android:order="1400"> android:order="1500">
<SwitchPreferenceCompat <SwitchPreferenceCompat
android:key="stylus_handwriting" android:key="stylus_handwriting"

View File

@@ -72,10 +72,16 @@ import com.android.settings.development.bluetooth.BluetoothHDAudioPreferenceCont
import com.android.settings.development.bluetooth.BluetoothQualityDialogPreferenceController; import com.android.settings.development.bluetooth.BluetoothQualityDialogPreferenceController;
import com.android.settings.development.bluetooth.BluetoothSampleRateDialogPreferenceController; import com.android.settings.development.bluetooth.BluetoothSampleRateDialogPreferenceController;
import com.android.settings.development.bluetooth.BluetoothStackLogPreferenceController; import com.android.settings.development.bluetooth.BluetoothStackLogPreferenceController;
import com.android.settings.development.desktopexperience.DesktopExperiencePreferenceController;
import com.android.settings.development.desktopexperience.DesktopModePreferenceController;
import com.android.settings.development.desktopexperience.DesktopModeSecondaryDisplayPreferenceController;
import com.android.settings.development.desktopexperience.FreeformWindowsPreferenceController;
import com.android.settings.development.graphicsdriver.GraphicsDriverEnableAngleAsSystemDriverController; import com.android.settings.development.graphicsdriver.GraphicsDriverEnableAngleAsSystemDriverController;
import com.android.settings.development.linuxterminal.LinuxTerminalPreferenceController; import com.android.settings.development.linuxterminal.LinuxTerminalPreferenceController;
import com.android.settings.development.qstile.DevelopmentTiles; import com.android.settings.development.qstile.DevelopmentTiles;
import com.android.settings.development.storage.SharedDataPreferenceController; import com.android.settings.development.storage.SharedDataPreferenceController;
import com.android.settings.development.window.NonResizableMultiWindowPreferenceController;
import com.android.settings.development.window.ResizableActivityPreferenceController;
import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.FeatureFactory;
import com.android.settings.password.ConfirmDeviceCredentialActivity; import com.android.settings.password.ConfirmDeviceCredentialActivity;
import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.BaseSearchIndexProvider;

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.desktopexperience;
import static android.provider.Settings.Global.DEVELOPMENT_OVERRIDE_DESKTOP_EXPERIENCE_FEATURES; import static android.provider.Settings.Global.DEVELOPMENT_OVERRIDE_DESKTOP_EXPERIENCE_FEATURES;
import static android.window.DesktopModeFlags.ToggleOverride.OVERRIDE_OFF; import static android.window.DesktopModeFlags.ToggleOverride.OVERRIDE_OFF;
@@ -33,6 +33,9 @@ import androidx.preference.TwoStatePreference;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.development.RebootConfirmationDialogFragment;
import com.android.settings.development.RebootConfirmationDialogHost;
import com.android.settingslib.development.DeveloperOptionsPreferenceController; import com.android.settingslib.development.DeveloperOptionsPreferenceController;
import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.desktopexperience;
import static android.provider.Settings.Global.DEVELOPMENT_OVERRIDE_DESKTOP_MODE_FEATURES; import static android.provider.Settings.Global.DEVELOPMENT_OVERRIDE_DESKTOP_MODE_FEATURES;
import static android.window.DesktopModeFlags.ToggleOverride.fromSetting; import static android.window.DesktopModeFlags.ToggleOverride.fromSetting;
@@ -33,6 +33,9 @@ import androidx.preference.TwoStatePreference;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.development.RebootConfirmationDialogFragment;
import com.android.settings.development.RebootConfirmationDialogHost;
import com.android.settingslib.development.DeveloperOptionsPreferenceController; import com.android.settingslib.development.DeveloperOptionsPreferenceController;
import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.desktopexperience;
import static android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS; import static android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS;
@@ -29,6 +29,9 @@ import androidx.preference.TwoStatePreference;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.development.RebootConfirmationDialogFragment;
import com.android.settings.development.RebootConfirmationDialogHost;
import com.android.settingslib.development.DeveloperOptionsPreferenceController; import com.android.settingslib.development.DeveloperOptionsPreferenceController;
import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.desktopexperience;
import static android.content.pm.PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT; import static android.content.pm.PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT;
@@ -28,6 +28,9 @@ import androidx.preference.TwoStatePreference;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.development.RebootConfirmationDialogFragment;
import com.android.settings.development.RebootConfirmationDialogHost;
import com.android.settingslib.development.DeveloperOptionsPreferenceController; import com.android.settingslib.development.DeveloperOptionsPreferenceController;
import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;

View File

@@ -0,0 +1,3 @@
include platform/frameworks/base:/services/core/java/com/android/server/wm/OWNERS
include platform/frameworks/base:/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/OWNERS
include platform/frameworks/base:/libs/WindowManager/Shell/OWNERS

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.window;
import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_NON_RESIZABLE_MULTI_WINDOW; import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_NON_RESIZABLE_MULTI_WINDOW;

View File

@@ -0,0 +1,2 @@
include platform/frameworks/base:/services/core/java/com/android/server/wm/OWNERS
include platform/frameworks/base:/libs/WindowManager/Shell/OWNERS

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.window;
import android.content.Context; import android.content.Context;
import android.provider.Settings; import android.provider.Settings;
@@ -32,9 +32,9 @@ public class ResizableActivityPreferenceController extends DeveloperOptionsPrefe
private static final String FORCE_RESIZABLE_KEY = "force_resizable_activities"; private static final String FORCE_RESIZABLE_KEY = "force_resizable_activities";
@VisibleForTesting @VisibleForTesting
final static int SETTING_VALUE_ON = 1; static final int SETTING_VALUE_ON = 1;
@VisibleForTesting @VisibleForTesting
final static int SETTING_VALUE_OFF = 0; static final int SETTING_VALUE_OFF = 0;
public ResizableActivityPreferenceController(Context context) { public ResizableActivityPreferenceController(Context context) {
super(context); super(context);

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.desktopexperience;
import static android.provider.Settings.Global.DEVELOPMENT_OVERRIDE_DESKTOP_EXPERIENCE_FEATURES; import static android.provider.Settings.Global.DEVELOPMENT_OVERRIDE_DESKTOP_EXPERIENCE_FEATURES;
import static android.window.DesktopModeFlags.ToggleOverride.OVERRIDE_OFF; import static android.window.DesktopModeFlags.ToggleOverride.OVERRIDE_OFF;
@@ -44,6 +44,8 @@ import androidx.preference.SwitchPreference;
import androidx.test.core.app.ApplicationProvider; import androidx.test.core.app.ApplicationProvider;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.development.RebootConfirmationDialogFragment;
import com.android.window.flags.Flags; import com.android.window.flags.Flags;
import org.junit.Before; import org.junit.Before;

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.desktopexperience;
import static android.provider.Settings.Global.DEVELOPMENT_OVERRIDE_DESKTOP_MODE_FEATURES; import static android.provider.Settings.Global.DEVELOPMENT_OVERRIDE_DESKTOP_MODE_FEATURES;
import static android.window.DesktopModeFlags.ToggleOverride.OVERRIDE_ON; import static android.window.DesktopModeFlags.ToggleOverride.OVERRIDE_ON;
@@ -44,6 +44,8 @@ import androidx.preference.SwitchPreference;
import androidx.test.core.app.ApplicationProvider; import androidx.test.core.app.ApplicationProvider;
import com.android.internal.R; import com.android.internal.R;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.development.RebootConfirmationDialogFragment;
import com.android.window.flags.Flags; import com.android.window.flags.Flags;
import org.junit.Before; import org.junit.Before;

View File

@@ -14,13 +14,13 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.desktopexperience;
import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT; import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT;
import static android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS; import static android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS;
import static com.android.settings.development.DesktopModeSecondaryDisplayPreferenceController.SETTING_VALUE_OFF; import static com.android.settings.development.desktopexperience.DesktopModeSecondaryDisplayPreferenceController.SETTING_VALUE_OFF;
import static com.android.settings.development.DesktopModeSecondaryDisplayPreferenceController.SETTING_VALUE_ON; import static com.android.settings.development.desktopexperience.DesktopModeSecondaryDisplayPreferenceController.SETTING_VALUE_ON;
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;
@@ -44,6 +44,8 @@ import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference; import androidx.preference.SwitchPreference;
import com.android.internal.R; import com.android.internal.R;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.development.RebootConfirmationDialogFragment;
import com.android.window.flags.Flags; import com.android.window.flags.Flags;
import org.junit.Before; import org.junit.Before;
@@ -97,9 +99,9 @@ public class DesktopModeSecondaryDisplayPreferenceControllerTest {
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference); when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
mController.displayPreference(mScreen); mController.displayPreference(mScreen);
when(mResources.getBoolean(R.bool.config_isDesktopModeSupported)).thenReturn(false); when(mResources.getBoolean(R.bool.config_isDesktopModeSupported)).thenReturn(false);
when(mResources when(mResources.getBoolean(
.getBoolean(com.android.internal.R.bool.config_canInternalDisplayHostDesktops)) com.android.internal.R.bool.config_canInternalDisplayHostDesktops)).thenReturn(
.thenReturn(false); false);
} }
@DisableFlags(Flags.FLAG_SHOW_DESKTOP_EXPERIENCE_DEV_OPTION) @DisableFlags(Flags.FLAG_SHOW_DESKTOP_EXPERIENCE_DEV_OPTION)

View File

@@ -14,12 +14,12 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.desktopexperience;
import static android.content.pm.PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT; import static android.content.pm.PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT;
import static com.android.settings.development.FreeformWindowsPreferenceController.SETTING_VALUE_OFF; import static com.android.settings.development.desktopexperience.FreeformWindowsPreferenceController.SETTING_VALUE_OFF;
import static com.android.settings.development.FreeformWindowsPreferenceController.SETTING_VALUE_ON; import static com.android.settings.development.desktopexperience.FreeformWindowsPreferenceController.SETTING_VALUE_ON;
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;
@@ -43,6 +43,8 @@ import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference; import androidx.preference.SwitchPreference;
import com.android.internal.R; import com.android.internal.R;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.development.RebootConfirmationDialogFragment;
import com.android.window.flags.Flags; import com.android.window.flags.Flags;
import org.junit.Before; import org.junit.Before;

View File

@@ -0,0 +1,2 @@
include platform/frameworks/base:/services/core/java/com/android/server/wm/OWNERS
include platform/frameworks/base:/libs/WindowManager/Shell/OWNERS

View File

@@ -14,12 +14,12 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development; package com.android.settings.development.window;
import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_NON_RESIZABLE_MULTI_WINDOW; import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_NON_RESIZABLE_MULTI_WINDOW;
import static com.android.settings.development.NonResizableMultiWindowPreferenceController.SETTING_VALUE_OFF; import static com.android.settings.development.window.NonResizableMultiWindowPreferenceController.SETTING_VALUE_OFF;
import static com.android.settings.development.NonResizableMultiWindowPreferenceController.SETTING_VALUE_ON; import static com.android.settings.development.window.NonResizableMultiWindowPreferenceController.SETTING_VALUE_ON;
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;

View File

@@ -0,0 +1,3 @@
include platform/frameworks/base:/services/core/java/com/android/server/wm/OWNERS
include platform/frameworks/base:/libs/WindowManager/Shell/src/com/android/wm/shell/desktopmode/OWNERS
include platform/frameworks/base:/libs/WindowManager/Shell/OWNERS

View File

@@ -1,5 +1,3 @@
package com.android.settings.development;
/* /*
* Copyright (C) 2017 The Android Open Source Project * Copyright (C) 2017 The Android Open Source Project
* *
@@ -16,6 +14,8 @@ package com.android.settings.development;
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings.development.window;
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify;