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

Commit 2e82a015 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Merge cherrypicks of ['googleplex-android-review.googlesource.com/28784983',...

Merge cherrypicks of ['googleplex-android-review.googlesource.com/28784983', 'googleplex-android-review.googlesource.com/31043663', 'googleplex-android-review.googlesource.com/31226850', 'googleplex-android-review.googlesource.com/31172437'] into security-aosp-tm-release.

Change-Id: Id1f9b6d61fb6c330870253be7e3108f75d7d17fa
parents c893eb83 3d7c3575
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -253,6 +253,11 @@
    <!-- Settings intelligence interaction log intent action -->
    <string name="config_settingsintelligence_log_action" translatable="false"></string>

    <!-- Sound picker package name -->
    <string name="config_sound_picker_package_name" translatable="false">
        com.android.soundpicker
    </string>

    <!-- AOSP Emergency app package name -->
    <string name="config_aosp_emergency_package_name" translatable="false">
        com.android.emergency
+2 −1
Original line number Diff line number Diff line
@@ -74,7 +74,8 @@ public class RingtonePreference extends Preference {
                true);
        mShowSilent = a.getBoolean(com.android.internal.R.styleable.RingtonePreference_showSilent,
                true);
        setIntent(new Intent(RingtoneManager.ACTION_RINGTONE_PICKER));
        setIntent(new Intent(RingtoneManager.ACTION_RINGTONE_PICKER)
                .setPackage(context.getString(R.string.config_sound_picker_package_name)));
        setUserId(UserHandle.myUserId());
        a.recycle();
    }
+13 −12
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;

import android.Manifest;
import android.app.Activity;
import android.app.ActivityManager;
import android.app.Dialog;
import android.app.admin.DevicePolicyManager;
import android.app.settings.SettingsEnums;
@@ -33,6 +34,7 @@ import android.content.pm.PackageManager.NameNotFoundException;
import android.hardware.usb.IUsbManager;
import android.os.Bundle;
import android.os.IBinder;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.UserHandle;
import android.os.UserManager;
@@ -171,20 +173,19 @@ public abstract class AppInfoBase extends SettingsPreferenceFragment
        if (!(activity instanceof SettingsActivity)) {
            return false;
        }
        final String callingPackageName =
                ((SettingsActivity) activity).getInitialCallingPackage();

        if (TextUtils.isEmpty(callingPackageName)) {
            Log.w(TAG, "Not able to get calling package name for permission check");
            return false;
        }
        if (mPm.checkPermission(Manifest.permission.INTERACT_ACROSS_USERS_FULL, callingPackageName)
                != PackageManager.PERMISSION_GRANTED) {
            Log.w(TAG, "Package " + callingPackageName + " does not have required permission "
        try {
            int callerUid = ActivityManager.getService().getLaunchedFromUid(
                    activity.getActivityToken());
            if (ActivityManager.checkUidPermission(Manifest.permission.INTERACT_ACROSS_USERS_FULL,
                    callerUid) != PackageManager.PERMISSION_GRANTED) {
                Log.w(TAG, "Uid " + callerUid + " does not have required permission "
                        + Manifest.permission.INTERACT_ACROSS_USERS_FULL);
                return false;
            }
            return true;
        } catch (RemoteException e) {
            return false;
        }
    }

    protected void setIntentAndFinish(boolean appChanged) {
+0 −15
Original line number Diff line number Diff line
@@ -42,7 +42,6 @@ import android.os.UserManager;
import android.service.notification.NotificationListenerService;
import android.text.TextUtils;
import android.util.Slog;
import android.view.WindowManager;
import android.view.accessibility.AccessibilityEvent;
import android.widget.Toast;

@@ -160,20 +159,6 @@ public class NotificationAccessConfirmationActivity extends Activity
        getWindow().setCloseOnTouchOutside(false); 
    }

    @Override
    public void onResume() {
        super.onResume();
        getWindow().addFlags(
                WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS);
    }

    @Override
    public void onPause() {
        getWindow().clearFlags(
                WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS);
        super.onPause();
    }

    private void onAllow() {
        mNm.setNotificationListenerAccessGranted(mComponentName, true);

+1 −0
Original line number Diff line number Diff line
@@ -140,6 +140,7 @@ public class BiometricFragment extends InstrumentedFragment {
                .setDisallowBiometricsIfPolicyExists(
                        promptInfo.isDisallowBiometricsIfPolicyExists())
                .setReceiveSystemEvents(true)
                .setClassNameIfItIsConfirmDeviceCredentialActivity()
                .build();
    }