Merge "Register the rule for injected apps" into sc-v2-dev am: 29063a7981

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16138631

Change-Id: I8665e1e055bf237b7d1a1f261b8eb7a3a9cf19cf
This commit is contained in:
Tsung-Mao Fang
2021-10-29 09:45:24 +00:00
committed by Automerger Merge Worker

View File

@@ -60,6 +60,8 @@ import androidx.preference.SwitchPreference;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.Utils;
import com.android.settings.activityembedding.ActivityEmbeddingRulesController;
import com.android.settings.activityembedding.ActivityEmbeddingUtils;
import com.android.settings.dashboard.profileselector.ProfileSelectDialog;
import com.android.settings.homepage.TopLevelSettings;
import com.android.settings.overlay.FeatureFactory;
@@ -170,7 +172,17 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
}
pref.setOnPreferenceClickListener(preference -> {
OnCancelListener listener = null;
if (fragment instanceof TopLevelSettings) {
if (fragment instanceof TopLevelSettings
&& ActivityEmbeddingUtils.isEmbeddingActivityEnabled(mContext)) {
// Register the rule for injected apps.
ActivityEmbeddingRulesController.registerTwoPanePairRule(mContext,
new ComponentName(activity.getPackageName(),
com.android.settings.Settings.class.getName()),
new ComponentName(tile.getPackageName(),
tile.getComponentName()),
null, true, true);
// Highlight preference ui.
final TopLevelSettings topLevelSettings = (TopLevelSettings) fragment;
// Highlight the tile immediately whenever it's clicked
topLevelSettings.setHighlightPreferenceKey(key);