summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHai Zhang <zhanghai@google.com>2019-05-17 13:13:18 -0700
committerHai Zhang <zhanghai@google.com>2019-05-17 13:13:18 -0700
commit9d0d607a0c77dae5ae1d9a8da117010f57d8a6aa (patch)
tree80f1ed78a325aa960de94b27cc5b4d3268e69af7
parent2f9be5290ce3a682738a68cd337872c031a5f30d (diff)
downloadandroid_packages_apps_PackageInstaller-9d0d607a0c77dae5ae1d9a8da117010f57d8a6aa.tar.gz
android_packages_apps_PackageInstaller-9d0d607a0c77dae5ae1d9a8da117010f57d8a6aa.tar.bz2
android_packages_apps_PackageInstaller-9d0d607a0c77dae5ae1d9a8da117010f57d8a6aa.zip
Open the default home settings directly with android.settings.HOME_SETTINGS.
As now we can skip the parent page in the new implementation. Bug: 132975240 Bug: 132909319 Test: adb shell am start -a android.settings.HOME_SETTINGS Change-Id: Ib42b22f31f5a101443eb80a3578ef5d66fe298be
-rw-r--r--AndroidManifest.xml15
-rw-r--r--src/com/android/packageinstaller/role/ui/HomeSettingsActivity.java40
2 files changed, 50 insertions, 5 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index c2e44217..2c77f523 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -196,11 +196,6 @@
<action android:name="android.settings.MANAGE_DEFAULT_APPS_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
- <!-- TODO: STOPSHIP: Redirect into its own default app page? -->
- <intent-filter android:priority="2">
- <action android:name="android.settings.HOME_SETTINGS" />
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
</activity>
<activity android:name="com.android.packageinstaller.role.ui.DefaultAppActivity"
@@ -212,6 +207,16 @@
</intent-filter>
</activity>
+ <activity android:name="com.android.packageinstaller.role.ui.HomeSettingsActivity"
+ android:excludeFromRecents="true"
+ android:noHistory="true"
+ android:theme="@android:style/Theme.NoDisplay">
+ <intent-filter android:priority="2">
+ <action android:name="android.settings.HOME_SETTINGS" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ </activity>
+
<activity android:name="com.android.packageinstaller.role.ui.SpecialAppAccessListActivity"
android:label="@string/special_app_access"
android:permission="android.permission.MANAGE_ROLE_HOLDERS"
diff --git a/src/com/android/packageinstaller/role/ui/HomeSettingsActivity.java b/src/com/android/packageinstaller/role/ui/HomeSettingsActivity.java
new file mode 100644
index 00000000..709737a9
--- /dev/null
+++ b/src/com/android/packageinstaller/role/ui/HomeSettingsActivity.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2019 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.packageinstaller.role.ui;
+
+import android.app.Activity;
+import android.app.role.RoleManager;
+import android.content.Intent;
+import android.os.Bundle;
+import android.os.Process;
+
+/**
+ * Activity to handle @{link android.provider.Settings#ACTION_HOME_SETTINGS}.
+ */
+public class HomeSettingsActivity extends Activity {
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ Intent intent = DefaultAppActivity.createIntent(RoleManager.ROLE_HOME,
+ Process.myUserHandle(), this)
+ .addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
+ startActivity(intent);
+ finish();
+ }
+}