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

Commit c1f10cb9 authored by Suprabh Shukla's avatar Suprabh Shukla
Browse files

Adding SecureTouchListener to DeviceAdminAdd

Dropping any touches to the activate admin button if any other
window is partly or wholly obscuring the device admin add window

Test: Cts Verifier -> Device Administration -> Device Admin Tapjacking
Test

Bug: 35056974
Change-Id: I048ecc1944c13fea624eede7861d39df2beeb393
parent d51b94b0
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -4302,6 +4302,11 @@
         can't verify user consent. [CHAR LIMIT=NONE] -->
    <string name="touch_filtered_warning">Because an app is obscuring a permission request, Settings
        can’t verify your response.</string>
    <!-- Warning shown when user input has been blocked due to another app overlaying screen
         content. Since we don't know what the app is showing on top of the input target, we
         can't verify user consent. [CHAR LIMIT=NONE] -->
    <string name="window_obscured_warning">Because another app is displaying on top of these options,
        Settings can\u2019t respond to your action.</string>
    <!-- Warning that the device data will not be encrypted with password or PIN if
        enabling an accessibility service and there is a secure lock setup. [CHAR LIMIT=NONE] -->
    <string name="enable_service_encryption_warning">If you turn on <xliff:g id="service"
+4 −0
Original line number Diff line number Diff line
@@ -65,6 +65,8 @@ import com.android.settings.R;
import com.android.settings.users.UserDialogs;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import com.android.settingslib.SecureTouchListener;

import org.xmlpull.v1.XmlPullParserException;

import java.io.IOException;
@@ -350,6 +352,8 @@ public class DeviceAdminAdd extends Activity {

        final View restrictedAction = findViewById(R.id.restricted_action);
        restrictedAction.setFilterTouchesWhenObscured(true);
        restrictedAction.setOnTouchListener(
                new SecureTouchListener(getString(R.string.window_obscured_warning)));
        restrictedAction.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                if (mAdding) {