summaryrefslogtreecommitdiffstats
path: root/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
diff options
context:
space:
mode:
authorJason Monk <jmonk@google.com>2015-06-17 12:45:16 -0400
committerJason Monk <jmonk@google.com>2015-06-18 13:26:27 -0400
commitbfaa53e0b09b255e1ba44017052041e435c6f5e0 (patch)
treef5dbd673d7491620a0e86a48fc4e484cdb794746 /src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
parentd8cb9a81bbd71737149a3fe3fba8bb13c05439c3 (diff)
downloadandroid_packages_apps_PackageInstaller-bfaa53e0b09b255e1ba44017052041e435c6f5e0.tar.gz
android_packages_apps_PackageInstaller-bfaa53e0b09b255e1ba44017052041e435c6f5e0.tar.bz2
android_packages_apps_PackageInstaller-bfaa53e0b09b255e1ba44017052041e435c6f5e0.zip
Fix animating between very different heights
- Expand ViewHeightController so it can expand up or down - Control the height of all containers in the hierarchy - Intercept touch events and compensate for any top offset on the root view, since we expand upwards - Remove the current description from the description container so that it can shrink in relayout if necessary. Bug: 21879037 Bug: 21784297 Change-Id: I3ad562158013b75c5e9150cbd91c96c6ff4941c9
Diffstat (limited to 'src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java')
-rw-r--r--src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
index ba2a4cd9..98773f54 100644
--- a/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
+++ b/src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java
@@ -37,6 +37,8 @@ import android.text.style.ForegroundColorSpan;
import android.util.ArrayMap;
import android.util.Log;
import android.view.KeyEvent;
+import android.view.MotionEvent;
+import android.view.View;
import android.view.Window;
import android.view.WindowManager;
@@ -146,6 +148,16 @@ public class GrantPermissionsActivity extends Activity
}
@Override
+ public boolean dispatchTouchEvent(MotionEvent ev) {
+ View rootView = getWindow().getDecorView();
+ if (rootView.getTop() != 0) {
+ // We are animating the top view, need to compensate for that in motion events.
+ ev.setLocation(ev.getX(), ev.getY() - rootView.getTop());
+ }
+ return super.dispatchTouchEvent(ev);
+ }
+
+ @Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
mViewHandler.saveInstanceState(outState);