Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bb24a2f6 authored by Tsung-Mao Fang's avatar Tsung-Mao Fang
Browse files

Register the rule for injected apps

We should align behavior between injected apps and in-app entries.

Test: Open the Google/DW page and click back key. Then, app is closed
directly.
Fix: 204406425

Change-Id: I57831c4df78b502b3998b3f7384df2900dbfe56f
parent 9b325cd5
Loading
Loading
Loading
Loading
+13 −1
Original line number Diff line number Diff line
@@ -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);