Support two pane design in the Settings app.
1. Only enable this feature when the flag is on and library is supported
in this device.
2. Add a placeholder rule for home menu.
Network page will be shown to the right pane by default.
3. Add a rule for most sub settings pages.
Known issues:
1. Transition animation seems wrong in this cl.
2. App is closed if user taps back key on the second layer page in fold
state.
Test: Run the apk on large screen device and regular phone. No crash
happens
Bug: 197716926
Change-Id: I089717e84c5e92c6e5b02d9770a24376e250fea2
diff --git a/src/com/android/settings/SettingsApplication.java b/src/com/android/settings/SettingsApplication.java
new file mode 100644
index 0000000..7aa5af8
--- /dev/null
+++ b/src/com/android/settings/SettingsApplication.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2021 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;
+
+import android.app.Application;
+
+import com.android.settings.activityembedding.ActivityEmbeddingRulesController;
+
+/** Settings application which sets up activity embedding rules for the large screen device. */
+public class SettingsApplication extends Application {
+
+ @Override
+ public void onCreate() {
+ super.onCreate();
+
+ final ActivityEmbeddingRulesController controller =
+ new ActivityEmbeddingRulesController(this);
+ controller.initRules();
+ }
+}