diff --git a/Android.bp b/Android.bp index e2dd48dc57..0a5f0b87c8 100644 --- a/Android.bp +++ b/Android.bp @@ -175,6 +175,7 @@ android_library { "androidx.preference_preference", "androidx.slice_slice-view", "androidx.cardview_cardview", + "androidx.window_window", "com.google.android.material_material", "iconloader_base", "view_capture", diff --git a/AndroidManifest-common.xml b/AndroidManifest-common.xml index 7e824ec15c..a31ee80460 100644 --- a/AndroidManifest-common.xml +++ b/AndroidManifest-common.xml @@ -184,5 +184,9 @@ android:name="androidx.startup.InitializationProvider" android:authorities="${applicationId}.androidx-startup" tools:node="remove" /> + + diff --git a/aconfig/launcher.aconfig b/aconfig/launcher.aconfig index f34105a146..255550ed90 100644 --- a/aconfig/launcher.aconfig +++ b/aconfig/launcher.aconfig @@ -85,6 +85,13 @@ flag { bug: "315055849" } +flag { + name: "enable_two_pane_launcher_settings" + namespace: "launcher" + description: "Enables two panel settings when on large enough displays" + bug: "204463748" +} + flag { name: "enable_shortcut_dont_suggest_app" namespace: "launcher" diff --git a/res/values/config.xml b/res/values/config.xml index 2a8ec2854a..5bdd7ebb36 100644 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -252,6 +252,9 @@ + + 0.5 + 720 diff --git a/res/xml/split_configuration.xml b/res/xml/split_configuration.xml new file mode 100644 index 0000000000..531fef893b --- /dev/null +++ b/res/xml/split_configuration.xml @@ -0,0 +1,18 @@ + + + + + + + + \ No newline at end of file diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 826eeb285d..39b8de161a 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -152,6 +152,7 @@ import androidx.annotation.RequiresApi; import androidx.annotation.StringRes; import androidx.annotation.UiThread; import androidx.annotation.VisibleForTesting; +import androidx.window.embedding.RuleController; import com.android.launcher3.DropTarget.DragObject; import com.android.launcher3.accessibility.LauncherAccessibilityDelegate; @@ -580,6 +581,11 @@ public class Launcher extends StatefulActivity } setTitle(R.string.home_screen); mStartupLatencyLogger.logEnd(LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE); + + if (com.android.launcher3.Flags.enableTwoPaneLauncherSettings()) { + RuleController.getInstance(this).setRules( + RuleController.parseRules(this, R.xml.split_configuration)); + } } protected ModelCallbacks createModelCallbacks() {