diff options
author | Jason Monk <jmonk@google.com> | 2015-06-17 12:45:16 -0400 |
---|---|---|
committer | Jason Monk <jmonk@google.com> | 2015-06-18 13:26:27 -0400 |
commit | bfaa53e0b09b255e1ba44017052041e435c6f5e0 (patch) | |
tree | f5dbd673d7491620a0e86a48fc4e484cdb794746 /src/com/android/packageinstaller/permission/ui/GrantPermissionsActivity.java | |
parent | d8cb9a81bbd71737149a3fe3fba8bb13c05439c3 (diff) | |
download | android_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.java | 12 |
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); |