summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2015-12-01 23:19:11 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-12-01 23:19:11 +0000
commit093a58cc776be2a3cd5aed9d14df9c78a35af052 (patch)
tree6aec06e6ba545802e7d80cdabdc5a858b6c47dca
parent9326461652c36c2ddd888d1452cf7f075a391868 (diff)
parent0c4e37223f93fea2627e69c0b007d6c22ddf8461 (diff)
downloadandroid_packages_apps_Trebuchet-093a58cc776be2a3cd5aed9d14df9c78a35af052.tar.gz
android_packages_apps_Trebuchet-093a58cc776be2a3cd5aed9d14df9c78a35af052.tar.bz2
android_packages_apps_Trebuchet-093a58cc776be2a3cd5aed9d14df9c78a35af052.zip
Merge "Keeping the focus indicator on the widget view, while a child is focused" into ub-launcher3-burnaby-polish
-rw-r--r--src/com/android/launcher3/LauncherAppWidgetHostView.java23
-rw-r--r--src/com/android/launcher3/PagedView.java14
2 files changed, 35 insertions, 2 deletions
diff --git a/src/com/android/launcher3/LauncherAppWidgetHostView.java b/src/com/android/launcher3/LauncherAppWidgetHostView.java
index 34c2943cb..c49d43fb1 100644
--- a/src/com/android/launcher3/LauncherAppWidgetHostView.java
+++ b/src/com/android/launcher3/LauncherAppWidgetHostView.java
@@ -244,4 +244,27 @@ public class LauncherAppWidgetHostView extends AppWidgetHostView implements Touc
}
super.onFocusChanged(gainFocus, direction, previouslyFocusedRect);
}
+
+ @Override
+ public void requestChildFocus(View child, View focused) {
+ super.requestChildFocus(child, focused);
+ dispatchChildFocus(focused != null);
+ }
+
+ @Override
+ public void clearChildFocus(View child) {
+ super.clearChildFocus(child);
+ dispatchChildFocus(false);
+ }
+
+ @Override
+ public boolean dispatchUnhandledMove(View focused, int direction) {
+ return mChildrenFocused;
+ }
+
+ private void dispatchChildFocus(boolean focused) {
+ if (getOnFocusChangeListener() != null) {
+ getOnFocusChangeListener().onFocusChange(this, focused || isFocused());
+ }
+ }
}
diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java
index c34ac3a07..b6d3cc492 100644
--- a/src/com/android/launcher3/PagedView.java
+++ b/src/com/android/launcher3/PagedView.java
@@ -1220,7 +1220,17 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc
@Override
public boolean dispatchUnhandledMove(View focused, int direction) {
- // XXX-RTL: This will be fixed in a future CL
+ if (super.dispatchUnhandledMove(focused, direction)) {
+ return true;
+ }
+
+ if (mIsRtl) {
+ if (direction == View.FOCUS_LEFT) {
+ direction = View.FOCUS_RIGHT;
+ } else if (direction == View.FOCUS_RIGHT) {
+ direction = View.FOCUS_LEFT;
+ }
+ }
if (direction == View.FOCUS_LEFT) {
if (getCurrentPage() > 0) {
snapToPage(getCurrentPage() - 1);
@@ -1232,7 +1242,7 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc
return true;
}
}
- return super.dispatchUnhandledMove(focused, direction);
+ return false;
}
@Override