Merge "Fix 6398209: Improve responsiveness of swipe up to search" into jb-dev
diff --git a/packages/SystemUI/src/com/android/systemui/SearchPanelView.java b/packages/SystemUI/src/com/android/systemui/SearchPanelView.java
index 185ca5b..57f15a8 100644
--- a/packages/SystemUI/src/com/android/systemui/SearchPanelView.java
+++ b/packages/SystemUI/src/com/android/systemui/SearchPanelView.java
@@ -146,7 +146,7 @@
}
}
- public void show(boolean show, boolean animate) {
+ public void show(final boolean show, boolean animate) {
if (animate) {
if (mShowing != show) {
mShowing = show;
@@ -156,21 +156,24 @@
mShowing = show;
onAnimationEnd(null);
}
- setVisibility(show ? View.VISIBLE : View.GONE);
- if (show) {
- setFocusable(true);
- setFocusableInTouchMode(true);
- requestFocus();
- }
+ postDelayed(new Runnable() {
+ public void run() {
+ setVisibility(show ? View.VISIBLE : View.INVISIBLE);
+ if (show) {
+ setFocusable(true);
+ setFocusableInTouchMode(true);
+ requestFocus();
+ }
+ }
+ }, show ? 0 : 100);
}
public void hide(boolean animate) {
- if (!animate) {
- setVisibility(View.GONE);
- }
if (mBar != null) {
// This will indirectly cause show(false, ...) to get called
mBar.animateCollapse();
+ } else {
+ setVisibility(View.INVISIBLE);
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
index f53a282..db7969e 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
@@ -482,7 +482,6 @@
WindowManager.LayoutParams lp =
(android.view.WindowManager.LayoutParams) mNavigationBarView.getLayoutParams();
lp.flags &= ~WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL;
- lp.flags &= ~WindowManager.LayoutParams.FLAG_SLIPPERY;
WindowManagerImpl.getDefault().updateViewLayout(mNavigationBarView, lp);
}
@@ -492,7 +491,6 @@
WindowManager.LayoutParams lp =
(android.view.WindowManager.LayoutParams) mNavigationBarView.getLayoutParams();
lp.flags |= WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL;
- lp.flags |= WindowManager.LayoutParams.FLAG_SLIPPERY;
WindowManagerImpl.getDefault().updateViewLayout(mNavigationBarView, lp);
}
@@ -573,8 +571,7 @@
| WindowManager.LayoutParams.FLAG_TOUCHABLE_WHEN_WAKING
| WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
- | WindowManager.LayoutParams.FLAG_SPLIT_TOUCH
- | WindowManager.LayoutParams.FLAG_SLIPPERY,
+ | WindowManager.LayoutParams.FLAG_SPLIT_TOUCH,
PixelFormat.OPAQUE);
// this will allow the navbar to run in an overlay on devices that support this
if (ActivityManager.isHighEndGfx(mDisplay)) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java
index a394596..b0830ee 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java
@@ -704,7 +704,6 @@
WindowManager.LayoutParams lp =
(android.view.WindowManager.LayoutParams) mStatusBarView.getLayoutParams();
lp.flags &= ~WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL;
- lp.flags &= ~WindowManager.LayoutParams.FLAG_SLIPPERY;
WindowManagerImpl.getDefault().updateViewLayout(mStatusBarView, lp);
}
@@ -714,7 +713,6 @@
WindowManager.LayoutParams lp =
(android.view.WindowManager.LayoutParams) mStatusBarView.getLayoutParams();
lp.flags |= WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL;
- lp.flags |= WindowManager.LayoutParams.FLAG_SLIPPERY;
WindowManagerImpl.getDefault().updateViewLayout(mStatusBarView, lp);
}