diff options
author | Michael Jurka <mikejurka@google.com> | 2011-07-27 18:23:18 -0700 |
---|---|---|
committer | Michael Jurka <mikejurka@google.com> | 2011-07-28 10:45:10 -0700 |
commit | e9166ede07580c00a9b0909cc28354286d2f7c1c (patch) | |
tree | 3dfda0a5fe378b5eff92bca3d83b9bd768082d9b /packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java | |
parent | 3c469975b01794a559d8528c7df14fe24206ccef (diff) | |
download | frameworks_base-e9166ede07580c00a9b0909cc28354286d2f7c1c.zip frameworks_base-e9166ede07580c00a9b0909cc28354286d2f7c1c.tar.gz frameworks_base-e9166ede07580c00a9b0909cc28354286d2f7c1c.tar.bz2 |
Dismiss Recent Apps when Back is pressed
Change-Id: I17a1ee9683910113d822a084f804646580ab43cb
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java b/packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java index e988b68..c896046 100644 --- a/packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java +++ b/packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java @@ -45,6 +45,7 @@ import android.provider.Settings; import android.util.AttributeSet; import android.util.DisplayMetrics; import android.util.Log; +import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.MenuItem; import android.view.MotionEvent; @@ -53,7 +54,6 @@ import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.BaseAdapter; -import android.widget.Button; import android.widget.ImageView; import android.widget.PopupMenu; import android.widget.RelativeLayout; @@ -182,6 +182,15 @@ public class RecentsPanelView extends RelativeLayout } } + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) { + if (keyCode == KeyEvent.KEYCODE_BACK && !event.isCanceled()) { + show(false, true); + return true; + } + return super.onKeyUp(keyCode, event); + } + public boolean isInContentArea(int x, int y) { // use mRecentsContainer's exact bounds to determine horizontal position final int l = mRecentsContainer.getLeft(); @@ -220,6 +229,11 @@ public class RecentsPanelView extends RelativeLayout setVisibility(show ? View.VISIBLE : View.GONE); mChoreo.jumpTo(show); } + if (show) { + setFocusable(true); + setFocusableInTouchMode(true); + requestFocus(); + } } public void onAnimationCancel(Animator animation) { |