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

Unverified Commit 30a43e76 authored by Kevin F. Haggerty's avatar Kevin F. Haggerty
Browse files

Merge tag 'android-8.1.0_r73' into staging/lineage-15.1_merge-android-8.1.0_r73

Android 8.1.0 Release 73 (6107733)

* tag 'android-8.1.0_r73':
  Prevent accounts page directly opening in screen pinning mode

Change-Id: I4a4d364cd603cd53c8e3bb079abd98eb241b09a2
parents a42a6c60 373ded27
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -254,6 +254,12 @@ public class SettingsActivity extends SettingsDrawerActivity
    @Override
    protected void onCreate(Bundle savedState) {
        super.onCreate(savedState);

        if (isLockTaskModePinned() && !isSettingsRunOnTop()) {
            Log.w(LOG_TAG, "Devices lock task mode pinned.");
            finish();
        }

        long startTime = System.currentTimeMillis();

        final FeatureFactory factory = FeatureFactory.getFactory(this);
@@ -957,4 +963,18 @@ public class SettingsActivity extends SettingsDrawerActivity
        Intent intent = new Intent(this, SearchActivity.class);
        startActivity(intent);
    }

    private boolean isLockTaskModePinned() {
        final ActivityManager activityManager =
            getApplicationContext().getSystemService(ActivityManager.class);
        return activityManager.getLockTaskModeState() == ActivityManager.LOCK_TASK_MODE_PINNED;
    }

    private boolean isSettingsRunOnTop() {
        final ActivityManager activityManager =
            getApplicationContext().getSystemService(ActivityManager.class);
        final String taskPkgName = activityManager.getRunningTasks(1 /* maxNum */)
            .get(0 /* index */).baseActivity.getPackageName();
        return TextUtils.equals(getPackageName(), taskPkgName);
    }
}