diff options
author | Suprabh Shukla <suprabh@google.com> | 2017-07-05 16:31:36 -0700 |
---|---|---|
committer | MSe <mse1969@posteo.de> | 2017-10-05 00:18:12 +0200 |
commit | 7a204a0e265a0a92537d57fd1bab594250c96149 (patch) | |
tree | 75d239d6f5ac6bd063a160fcd1225521ef5cd7c5 | |
parent | 5345fa2fe53224f2036329fd04cbfc1fb9c020ad (diff) | |
download | android_packages_apps_PackageInstaller-7a204a0e265a0a92537d57fd1bab594250c96149.tar.gz android_packages_apps_PackageInstaller-7a204a0e265a0a92537d57fd1bab594250c96149.tar.bz2 android_packages_apps_PackageInstaller-7a204a0e265a0a92537d57fd1bab594250c96149.zip |
DO NOT MERGE Disable overlays while installer is resumed
The install button can be disabled for other reasons, hence we have to
store the enabled state independent of the resumed/paused state.
Test: gts-tradefed run gts-dev -m PackageInstallerTapjacking
Bug: 35056974
Change-Id: I2effa0f5afacfaed217a030550a778e32912cfbb
(cherry picked from commit 287d1d11a321040948d6c12e48fa303eed3c4859)
-rw-r--r-- | src/com/android/packageinstaller/PackageInstallerActivity.java | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/src/com/android/packageinstaller/PackageInstallerActivity.java b/src/com/android/packageinstaller/PackageInstallerActivity.java index 868872a9..7cf5189b 100644 --- a/src/com/android/packageinstaller/PackageInstallerActivity.java +++ b/src/com/android/packageinstaller/PackageInstallerActivity.java @@ -16,7 +16,6 @@ */ package com.android.packageinstaller; -import android.app.Activity; import android.app.ActivityManagerNative; import android.app.AlertDialog; import android.app.Dialog; @@ -52,6 +51,8 @@ import android.widget.Button; import android.widget.TabHost; import android.widget.TextView; +import com.android.packageinstaller.permission.ui.OverlayTouchActivity; + import java.io.File; import java.util.List; @@ -65,7 +66,8 @@ import java.util.List; * Based on the user response the package is then installed by launching InstallAppConfirm * sub activity. All state transitions are handled in this activity */ -public class PackageInstallerActivity extends Activity implements OnCancelListener, OnClickListener { +public class PackageInstallerActivity extends OverlayTouchActivity implements OnCancelListener, + OnClickListener { private static final String TAG = "PackageInstaller"; private int mSessionId = -1; @@ -583,6 +585,25 @@ public class PackageInstallerActivity extends Activity implements OnCancelListen } } + @Override + protected void onResume() { + super.onResume(); + + if (mOk != null) { + mOk.setEnabled(mOkCanInstall); + } + } + + @Override + protected void onPause() { + super.onPause(); + + if (mOk != null) { + // Don't allow the install button to be clicked as there might be overlays + mOk.setEnabled(false); + } + } + /** Get the ApplicationInfo for the calling package, if available */ private ApplicationInfo getSourceInfo() { String callingPackage = getCallingPackage(); |