summaryrefslogtreecommitdiffstats
path: root/packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java
diff options
context:
space:
mode:
authorMichael Jurka <mikejurka@google.com>2011-07-27 18:23:18 -0700
committerMichael Jurka <mikejurka@google.com>2011-07-28 10:45:10 -0700
commite9166ede07580c00a9b0909cc28354286d2f7c1c (patch)
tree3dfda0a5fe378b5eff92bca3d83b9bd768082d9b /packages/SystemUI/src/com/android/systemui/recent/RecentsPanelView.java
parent3c469975b01794a559d8528c7df14fe24206ccef (diff)
downloadframeworks_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.java16
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) {