diff options
author | Qi Wang <wangqi@google.com> | 2016-05-02 11:39:03 -0700 |
---|---|---|
committer | Usman Abdullah <uabdullah@google.com> | 2016-05-13 22:38:41 +0000 |
commit | 0065720a974377d8139679528f2e3e5c076e91b7 (patch) | |
tree | 471735a18645121248dcf8b55fc5eb027e712de0 | |
parent | ddfb09b5af93c9adee0929ee405f3c8fd84282ca (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.xml | 10 | ||||
-rw-r--r-- | src/com/android/dialer/list/ListsFragment.java | 4 |
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(); } |