summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSuprabh Shukla <suprabh@google.com>2017-07-05 16:31:36 -0700
committerMSe <mse1969@posteo.de>2017-10-05 00:18:12 +0200
commit7a204a0e265a0a92537d57fd1bab594250c96149 (patch)
tree75d239d6f5ac6bd063a160fcd1225521ef5cd7c5
parent5345fa2fe53224f2036329fd04cbfc1fb9c020ad (diff)
downloadandroid_packages_apps_PackageInstaller-7a204a0e265a0a92537d57fd1bab594250c96149.zip
android_packages_apps_PackageInstaller-7a204a0e265a0a92537d57fd1bab594250c96149.tar.gz
android_packages_apps_PackageInstaller-7a204a0e265a0a92537d57fd1bab594250c96149.tar.bz2
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.java25
1 files changed, 23 insertions, 2 deletions
diff --git a/src/com/android/packageinstaller/PackageInstallerActivity.java b/src/com/android/packageinstaller/PackageInstallerActivity.java
index 868872a..7cf5189 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();