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

Commit 1fe15184 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Merge cherrypicks of [19034069] into security-aosp-tm-release.

Change-Id: Id282d363d8ede7ceef1a31db2ce6fc4029b80a37
parents e41cbfdd a3881712
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -70,6 +70,7 @@ import com.android.settings.homepage.DeepLinkHomepageActivityInternal;
import com.android.settings.homepage.SettingsHomepageActivity;
import com.android.settings.homepage.TopLevelSettings;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.password.PasswordUtils;
import com.android.settings.wfd.WifiDisplaySettings;
import com.android.settings.widget.SettingsMainSwitchBar;
import com.android.settingslib.core.instrumentation.Instrumentable;
@@ -154,6 +155,7 @@ public class SettingsActivity extends SettingsBaseActivity
    public static final String EXTRA_IS_FROM_SLICE = "is_from_slice";

    public static final String EXTRA_USER_HANDLE = "user_handle";
    public static final String EXTRA_INITIAL_CALLING_PACKAGE = "initial_calling_package";

    /**
     * Personal or Work profile tab of {@link ProfileSelectFragment}
@@ -418,6 +420,8 @@ public class SettingsActivity extends SettingsBaseActivity
    }

    private boolean tryStartTwoPaneDeepLink(Intent intent) {
        intent.putExtra(EXTRA_INITIAL_CALLING_PACKAGE, PasswordUtils.getCallingAppPackageName(
                getActivityToken()));
        final Intent trampolineIntent;
        if (intent.getBooleanExtra(EXTRA_IS_FROM_SLICE, false)) {
            // Get menu key for slice deep link case.
@@ -505,6 +509,17 @@ public class SettingsActivity extends SettingsBaseActivity
        return true;
    }

    /** Returns the initial calling package name that launches the activity. */
    public String getInitialCallingPackage() {
        String callingPackage = PasswordUtils.getCallingAppPackageName(getActivityToken());
        if (!TextUtils.equals(callingPackage, getPackageName())) {
            return callingPackage;
        }

        String initialCallingPackage = getIntent().getStringExtra(EXTRA_INITIAL_CALLING_PACKAGE);
        return TextUtils.isEmpty(initialCallingPackage) ? callingPackage : initialCallingPackage;
    }

    /** Returns the initial fragment name that the activity will launch. */
    @VisibleForTesting
    public String getInitialFragmentName(Intent intent) {
+3 −3
Original line number Diff line number Diff line
@@ -25,9 +25,9 @@ import android.util.Log;
import androidx.annotation.VisibleForTesting;

import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.core.SettingsUIDeviceConfig;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.password.PasswordUtils;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.slices.SlicePreferenceController;
import com.android.settingslib.search.SearchIndexable;
@@ -71,8 +71,8 @@ public class ConnectedDeviceDashboardFragment extends DashboardFragment {
        super.onAttach(context);
        final boolean nearbyEnabled = DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_SETTINGS_UI,
                SettingsUIDeviceConfig.BT_NEAR_BY_SUGGESTION_ENABLED, true);
        String callingAppPackageName = PasswordUtils.getCallingAppPackageName(
                getActivity().getActivityToken());
        String callingAppPackageName = ((SettingsActivity) getActivity())
                .getInitialCallingPackage();
        String action = getIntent() != null ? getIntent().getAction() : "";
        if (DEBUG) {
            Log.d(TAG, "onAttach() calling package name is : " + callingAppPackageName