Loading res/values/strings.xml +5 −0 Original line number Diff line number Diff line Loading @@ -10264,4 +10264,9 @@ </plurals> <!-- Title for no connected devices in connected device slice. [CHAR LIMIT=NONE] --> <string name="no_connected_devices">No connected devices</string> <!-- UI debug setting: force desktop mode [CHAR LIMIT=50] --> <string name="force_desktop_mode">Force desktop mode</string> <!-- UI debug setting: force desktop mode summary [CHAR LIMIT=150] --> <string name="force_desktop_mode_summary">Force experimental desktop mode on secondary displays</string> </resources> res/xml/development_settings.xml +5 −0 Original line number Diff line number Diff line Loading @@ -510,6 +510,11 @@ android:title="@string/enable_freeform_support" android:summary="@string/enable_freeform_support_summary" /> <SwitchPreference android:key="force_desktop_mode_on_external_displays" android:title="@string/force_desktop_mode" android:summary="@string/force_desktop_mode_summary" /> <Preference android:key="reset_shortcut_manager_throttling" android:title="@string/reset_shortcut_manager_throttling" /> Loading src/com/android/settings/development/DesktopModePreferenceController.java 0 → 100644 +79 −0 Original line number Diff line number Diff line /* * Copyright (C) 2018 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.settings.development; import static android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS; import android.content.Context; import android.os.Build; import android.provider.Settings; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; import androidx.preference.SwitchPreference; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.development.DeveloperOptionsPreferenceController; public class DesktopModePreferenceController extends DeveloperOptionsPreferenceController implements Preference.OnPreferenceChangeListener, PreferenceControllerMixin { private static final String FORCE_DESKTOP_MODE_KEY = "force_desktop_mode_on_external_displays"; @VisibleForTesting static final int SETTING_VALUE_OFF = 0; @VisibleForTesting static final int SETTING_VALUE_ON = 1; public DesktopModePreferenceController(Context context) { super(context); } @Override public String getPreferenceKey() { return FORCE_DESKTOP_MODE_KEY; } @Override public boolean onPreferenceChange(Preference preference, Object newValue) { final boolean isEnabled = (Boolean) newValue; Settings.Global.putInt(mContext.getContentResolver(), DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, isEnabled ? SETTING_VALUE_ON : SETTING_VALUE_OFF); return true; } @Override public void updateState(Preference preference) { final int mode = Settings.Global.getInt(mContext.getContentResolver(), DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, SETTING_VALUE_OFF); ((SwitchPreference) mPreference).setChecked(mode != SETTING_VALUE_OFF); } @Override protected void onDeveloperOptionsSwitchDisabled() { super.onDeveloperOptionsSwitchDisabled(); Settings.Global.putInt(mContext.getContentResolver(), DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, SETTING_VALUE_OFF); ((SwitchPreference) mPreference).setChecked(false); } @VisibleForTesting String getBuildType() { return Build.TYPE; } } src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java +1 −0 Original line number Diff line number Diff line Loading @@ -458,6 +458,7 @@ public class DevelopmentSettingsDashboardFragment extends RestrictedDashboardFra controllers.add(new AllowAppsOnExternalPreferenceController(context)); controllers.add(new ResizableActivityPreferenceController(context)); controllers.add(new FreeformWindowsPreferenceController(context)); controllers.add(new DesktopModePreferenceController(context)); controllers.add(new SmsAccessRestrictionPreferenceController(context)); controllers.add(new ShortcutManagerThrottlingPreferenceController(context)); controllers.add(new EnableGnssRawMeasFullTrackingPreferenceController(context)); Loading src/com/android/settings/development/FreeformWindowsPreferenceController.java +0 −8 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package com.android.settings.development; import android.content.Context; import android.os.Build; import android.provider.Settings; import android.text.TextUtils; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; Loading @@ -37,18 +36,11 @@ public class FreeformWindowsPreferenceController extends DeveloperOptionsPrefere static final int SETTING_VALUE_OFF = 0; @VisibleForTesting static final int SETTING_VALUE_ON = 1; @VisibleForTesting static final String USER_BUILD_TYPE = "user"; public FreeformWindowsPreferenceController(Context context) { super(context); } @Override public boolean isAvailable() { return !TextUtils.equals(USER_BUILD_TYPE, getBuildType()); } @Override public String getPreferenceKey() { return ENABLE_FREEFORM_SUPPORT_KEY; Loading Loading
res/values/strings.xml +5 −0 Original line number Diff line number Diff line Loading @@ -10264,4 +10264,9 @@ </plurals> <!-- Title for no connected devices in connected device slice. [CHAR LIMIT=NONE] --> <string name="no_connected_devices">No connected devices</string> <!-- UI debug setting: force desktop mode [CHAR LIMIT=50] --> <string name="force_desktop_mode">Force desktop mode</string> <!-- UI debug setting: force desktop mode summary [CHAR LIMIT=150] --> <string name="force_desktop_mode_summary">Force experimental desktop mode on secondary displays</string> </resources>
res/xml/development_settings.xml +5 −0 Original line number Diff line number Diff line Loading @@ -510,6 +510,11 @@ android:title="@string/enable_freeform_support" android:summary="@string/enable_freeform_support_summary" /> <SwitchPreference android:key="force_desktop_mode_on_external_displays" android:title="@string/force_desktop_mode" android:summary="@string/force_desktop_mode_summary" /> <Preference android:key="reset_shortcut_manager_throttling" android:title="@string/reset_shortcut_manager_throttling" /> Loading
src/com/android/settings/development/DesktopModePreferenceController.java 0 → 100644 +79 −0 Original line number Diff line number Diff line /* * Copyright (C) 2018 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.settings.development; import static android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS; import android.content.Context; import android.os.Build; import android.provider.Settings; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; import androidx.preference.SwitchPreference; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.development.DeveloperOptionsPreferenceController; public class DesktopModePreferenceController extends DeveloperOptionsPreferenceController implements Preference.OnPreferenceChangeListener, PreferenceControllerMixin { private static final String FORCE_DESKTOP_MODE_KEY = "force_desktop_mode_on_external_displays"; @VisibleForTesting static final int SETTING_VALUE_OFF = 0; @VisibleForTesting static final int SETTING_VALUE_ON = 1; public DesktopModePreferenceController(Context context) { super(context); } @Override public String getPreferenceKey() { return FORCE_DESKTOP_MODE_KEY; } @Override public boolean onPreferenceChange(Preference preference, Object newValue) { final boolean isEnabled = (Boolean) newValue; Settings.Global.putInt(mContext.getContentResolver(), DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, isEnabled ? SETTING_VALUE_ON : SETTING_VALUE_OFF); return true; } @Override public void updateState(Preference preference) { final int mode = Settings.Global.getInt(mContext.getContentResolver(), DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, SETTING_VALUE_OFF); ((SwitchPreference) mPreference).setChecked(mode != SETTING_VALUE_OFF); } @Override protected void onDeveloperOptionsSwitchDisabled() { super.onDeveloperOptionsSwitchDisabled(); Settings.Global.putInt(mContext.getContentResolver(), DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, SETTING_VALUE_OFF); ((SwitchPreference) mPreference).setChecked(false); } @VisibleForTesting String getBuildType() { return Build.TYPE; } }
src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java +1 −0 Original line number Diff line number Diff line Loading @@ -458,6 +458,7 @@ public class DevelopmentSettingsDashboardFragment extends RestrictedDashboardFra controllers.add(new AllowAppsOnExternalPreferenceController(context)); controllers.add(new ResizableActivityPreferenceController(context)); controllers.add(new FreeformWindowsPreferenceController(context)); controllers.add(new DesktopModePreferenceController(context)); controllers.add(new SmsAccessRestrictionPreferenceController(context)); controllers.add(new ShortcutManagerThrottlingPreferenceController(context)); controllers.add(new EnableGnssRawMeasFullTrackingPreferenceController(context)); Loading
src/com/android/settings/development/FreeformWindowsPreferenceController.java +0 −8 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package com.android.settings.development; import android.content.Context; import android.os.Build; import android.provider.Settings; import android.text.TextUtils; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; Loading @@ -37,18 +36,11 @@ public class FreeformWindowsPreferenceController extends DeveloperOptionsPrefere static final int SETTING_VALUE_OFF = 0; @VisibleForTesting static final int SETTING_VALUE_ON = 1; @VisibleForTesting static final String USER_BUILD_TYPE = "user"; public FreeformWindowsPreferenceController(Context context) { super(context); } @Override public boolean isAvailable() { return !TextUtils.equals(USER_BUILD_TYPE, getBuildType()); } @Override public String getPreferenceKey() { return ENABLE_FREEFORM_SUPPORT_KEY; Loading