summaryrefslogtreecommitdiffstats
path: root/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java')
-rw-r--r--src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
index 102fd6ef..4c052eb9 100644
--- a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
+++ b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
@@ -25,6 +25,7 @@ import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.PermissionInfo;
+import android.content.res.Configuration;
import android.content.res.Resources;
import android.graphics.Typeface;
import android.graphics.drawable.Icon;
@@ -44,8 +45,8 @@ import com.android.packageinstaller.R;
import com.android.packageinstaller.permission.model.AppPermissionGroup;
import com.android.packageinstaller.permission.model.AppPermissions;
import com.android.packageinstaller.permission.model.Permission;
+import com.android.packageinstaller.permission.ui.handheld.GrantPermissionsViewHandlerImpl;
import com.android.packageinstaller.permission.utils.SafetyNetLogger;
-import com.android.packageinstaller.permission.utils.Utils;
import java.util.ArrayList;
import java.util.LinkedHashMap;
@@ -176,6 +177,21 @@ public class GrantPermissionsActivity extends OverlayTouchActivity
}
@Override
+ public void onConfigurationChanged(Configuration newConfig) {
+ super.onConfigurationChanged(newConfig);
+ // We need to relayout the window as dialog width may be
+ // different in landscape vs portrait which affect the min
+ // window height needed to show all content. We have to
+ // re-add the window to force it to be resized if needed.
+ View decor = getWindow().getDecorView();
+ getWindowManager().removeViewImmediate(decor);
+ getWindowManager().addView(decor, decor.getLayoutParams());
+ if (mViewHandler instanceof GrantPermissionsViewHandlerImpl) {
+ ((GrantPermissionsViewHandlerImpl) mViewHandler).onConfigurationChanged();
+ }
+ }
+
+ @Override
public boolean dispatchTouchEvent(MotionEvent ev) {
View rootView = getWindow().getDecorView();
if (rootView.getTop() != 0) {