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

Commit de09f078 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Add FLAG_ACTIVITY_SINGLE_TOP to shortcuts intent" into tm-qpr-dev am: ce2405e9

parents d4db7fa1 ce2405e9
Loading
Loading
Loading
Loading
+10 −5
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ import androidx.preference.PreferenceGroup;
import com.android.settings.R;
import com.android.settings.Settings;
import com.android.settings.Settings.TetherSettingsActivity;
import com.android.settings.activityembedding.ActivityEmbeddingUtils;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.gestures.OneHandedSettingsUtils;
import com.android.settings.overlay.FeatureFactory;
@@ -127,7 +128,7 @@ public class CreateShortcutPreferenceController extends BasePreferenceController
                    return false;
                }
                final Intent shortcutIntent = createResultIntent(
                        buildShortcutIntent(info),
                        buildShortcutIntent(uiContext, info),
                        info, clickTarget.getTitle());
                mHost.setResult(Activity.RESULT_OK, shortcutIntent);
                logCreateShortcut(info);
@@ -210,10 +211,14 @@ public class CreateShortcutPreferenceController extends BasePreferenceController
                info.activityInfo.name);
    }

    private static Intent buildShortcutIntent(ResolveInfo info) {
        return new Intent(SHORTCUT_PROBE)
    private static Intent buildShortcutIntent(Context context, ResolveInfo info) {
        Intent intent = new Intent(SHORTCUT_PROBE)
                .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP)
                .setClassName(info.activityInfo.packageName, info.activityInfo.name);
        if (ActivityEmbeddingUtils.isEmbeddingActivityEnabled(context)) {
            intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
        }
        return intent;
    }

    private static ShortcutInfo createShortcutInfo(Context context, Intent shortcutIntent,
@@ -277,8 +282,8 @@ public class CreateShortcutPreferenceController extends BasePreferenceController
                ResolveInfo ri = context.getPackageManager().resolveActivity(si.getIntent(), 0);

                if (ri != null) {
                    updatedShortcuts.add(createShortcutInfo(context, buildShortcutIntent(ri), ri,
                            si.getShortLabel()));
                    updatedShortcuts.add(createShortcutInfo(context,
                            buildShortcutIntent(context, ri), ri, si.getShortLabel()));
                }
            }
        }