summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQi Wang <wangqi@google.com>2016-05-02 11:39:03 -0700
committerUsman Abdullah <uabdullah@google.com>2016-05-13 22:38:41 +0000
commit0065720a974377d8139679528f2e3e5c076e91b7 (patch)
tree471735a18645121248dcf8b55fc5eb027e712de0
parentddfb09b5af93c9adee0929ee405f3c8fd84282ca (diff)
Fix the bug that quick contact cannot be removed.
The "removed" button doesn't received drag and drop event since it's not visible at the time the drag event starts. The workaround is to change the visibility of its child view instead. Change-Id: Iada912fcc36983ad758296f33092cc54ad6f9f5e Fix: 28479593 (cherry-picked from b20b76437ae6aae8fe4da64097351cc80f030919) (cherry picked from commit 22a193b7babae99256149a0536748c6ad9c6b943)
-rw-r--r--res/layout/lists_fragment.xml10
-rw-r--r--src/com/android/dialer/list/ListsFragment.java4
2 files changed, 10 insertions, 4 deletions
diff --git a/res/layout/lists_fragment.xml b/res/layout/lists_fragment.xml
index bff729c14..a073151e2 100644
--- a/res/layout/lists_fragment.xml
+++ b/res/layout/lists_fragment.xml
@@ -53,14 +53,17 @@
</LinearLayout>
+ <!-- Sets android:importantForAccessibility="no" to avoid being announced when navigating with
+ talkback enabled. It will still be announced when user drag or drop contact onto it.
+ This is required since drag and drop event is only sent to views are visible when drag
+ starts. -->
<com.android.dialer.list.RemoveView
android:id="@+id/remove_view"
android:layout_width="match_parent"
android:layout_height="@dimen/tab_height"
android:layout_marginTop="@dimen/action_bar_height_large"
- android:layout_alignParentTop="true"
android:contentDescription="@string/remove_contact"
- android:visibility="gone" >
+ android:importantForAccessibility="no" >
<LinearLayout
android:id="@+id/remove_view_content"
@@ -68,7 +71,8 @@
android:layout_width="match_parent"
android:background="@color/actionbar_background_color"
android:gravity="center"
- android:orientation="horizontal">
+ android:orientation="horizontal"
+ android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
diff --git a/src/com/android/dialer/list/ListsFragment.java b/src/com/android/dialer/list/ListsFragment.java
index ceed61274..52bf3cbb5 100644
--- a/src/com/android/dialer/list/ListsFragment.java
+++ b/src/com/android/dialer/list/ListsFragment.java
@@ -81,6 +81,7 @@ public class ListsFragment extends Fragment
private ViewPagerTabs mViewPagerTabs;
private ViewPagerAdapter mViewPagerAdapter;
private RemoveView mRemoveView;
+ private View mRemoveViewContent;
private SpeedDialFragment mSpeedDialFragment;
private CallLogFragment mHistoryFragment;
@@ -251,6 +252,7 @@ public class ListsFragment extends Fragment
addOnPageChangeListener(mViewPagerTabs);
mRemoveView = (RemoveView) parentView.findViewById(R.id.remove_view);
+ mRemoveViewContent = parentView.findViewById(R.id.remove_view_content);
Trace.endSection();
Trace.endSection();
@@ -422,7 +424,7 @@ public class ListsFragment extends Fragment
public void showRemoveView(boolean show) {
- mRemoveView.setVisibility(show ? View.VISIBLE : View.GONE);
+ mRemoveViewContent.setVisibility(show ? View.VISIBLE : View.GONE);
mRemoveView.setAlpha(show ? 0 : 1);
mRemoveView.animate().alpha(show ? 1 : 0).start();
}