summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author dakinola <dakinola@google.com> 2024-12-04 18:35:37 +0000
committer Daniel Akinola <dakinola@google.com> 2024-12-12 06:11:45 -0800
commitae76472af669c0cc46b5ab479be4616d0aebb08c (patch)
treea1112b102676305ff50c7458524648f292e87c25
parent9477f6b2945b17af416dc669c904402b0e4f95d6 (diff)
Add Shade display awareness dev option
Adding new developer option which update the policy for shade location when connected to an external display Bug: 379278693 Test: manual testing (see pics) Flag: com.android.systemui.shade_window_goes_around Change-Id: I490d3a1f1c8d23d6c23d9871e337b7ff02c7a2b5
-rw-r--r--core/java/android/provider/Settings.java8
-rw-r--r--packages/SettingsLib/res/values/arrays.xml21
-rw-r--r--packages/SettingsLib/res/values/strings.xml3
-rw-r--r--packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java1
4 files changed, 33 insertions, 0 deletions
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 4acb6312f90d..4c3cde03f374 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -13710,6 +13710,14 @@ public final class Settings {
"render_shadows_in_compositor";
/**
+ * Policy to be used for the display shade when connected to an external display.
+ * @hide
+ */
+ @Readable
+ public static final String DEVELOPMENT_SHADE_DISPLAY_AWARENESS =
+ "shade_display_awareness";
+
+ /**
* Path to the WindowManager display settings file. If unset, the default file path will
* be used.
*
diff --git a/packages/SettingsLib/res/values/arrays.xml b/packages/SettingsLib/res/values/arrays.xml
index 5a4d3ce5661b..63c8929ef652 100644
--- a/packages/SettingsLib/res/values/arrays.xml
+++ b/packages/SettingsLib/res/values/arrays.xml
@@ -667,4 +667,25 @@
<item>3</item>
</string-array>
+ <!-- Options for showing shade on external display for developers -->
+ <string-array name="shade_display_awareness_entries" >
+ <item>Device display only (Default)</item>
+ <item>External display</item>
+ <item>Focus-based</item>
+ </string-array>
+
+ <!-- Options for showing shade on external display for developers -->
+ <string-array name="shade_display_awareness_summaries" >
+ <item>Show shade on device display only </item>
+ <item>Show device on single external display</item>
+ <item>Show device on last focused display</item>
+ </string-array>
+
+ <!-- Values for showing shade on external display for developers -->
+ <string-array name="shade_display_awareness_values" >
+ <item>device-display</item>
+ <item>external-display</item>
+ <item>focus-based</item>
+ </string-array>
+
</resources>
diff --git a/packages/SettingsLib/res/values/strings.xml b/packages/SettingsLib/res/values/strings.xml
index eaf155df4785..e1929b725a58 100644
--- a/packages/SettingsLib/res/values/strings.xml
+++ b/packages/SettingsLib/res/values/strings.xml
@@ -990,6 +990,9 @@
<!-- UI debug setting: simulate secondary display devices using overlays [CHAR LIMIT=45] -->
<string name="overlay_display_devices_title">Simulate secondary displays</string>
+ <!-- UI debug setting: shade display awareness title [CHAR LIMIT=45] -->
+ <string name="shade_display_awareness_title">Shade display position</string>
+
<!-- Preference category for application debugging development settings. [CHAR LIMIT=25] -->
<string name="debug_applications_category">Apps</string>
diff --git a/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java b/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
index 9004488c2e12..c88a7fd834d6 100644
--- a/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
+++ b/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
@@ -182,6 +182,7 @@ public class SettingsBackupTest {
Settings.Global.DEVELOPMENT_FORCE_RTL,
Settings.Global.DEVELOPMENT_ENABLE_NON_RESIZABLE_MULTI_WINDOW,
Settings.Global.DEVELOPMENT_RENDER_SHADOWS_IN_COMPOSITOR,
+ Settings.Global.DEVELOPMENT_SHADE_DISPLAY_AWARENESS,
Settings.Global.DEVELOPMENT_WM_DISPLAY_SETTINGS_PATH,
Settings.Global.DEVICE_DEMO_MODE,
Settings.Global.DEVICE_IDLE_CONSTANTS,