[A11Y][Wi-Fi] Prevent data usage header spinner speak at onResume

Ignore AccessibilityEvent.TYPE_VIEW_SELECTED for the Spinner.

Bug: 146818854
Test: manual
      Should not speak for header spinner right after entering
      'Wi-Fi data usage'
Change-Id: I289d9a781242f8bfec56c59b7be2ac0688c5e485
This commit is contained in:
Arc Wang
2020-04-09 16:51:10 +08:00
parent 68084f39d0
commit aa6b25e137

View File

@@ -42,6 +42,8 @@ import android.telephony.SubscriptionManager;
import android.util.Log; import android.util.Log;
import android.util.SparseArray; import android.util.SparseArray;
import android.view.View; import android.view.View;
import android.view.View.AccessibilityDelegate;
import android.view.accessibility.AccessibilityEvent;
import android.widget.AdapterView; import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener; import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ImageView; import android.widget.ImageView;
@@ -180,6 +182,16 @@ public class DataUsageList extends DataUsageBaseFragment
mCycleSpinner.setSelection(position); mCycleSpinner.setSelection(position);
} }
}, mCycleListener); }, mCycleListener);
mCycleSpinner.setAccessibilityDelegate(new AccessibilityDelegate() {
@Override
public void sendAccessibilityEvent(View host, int eventType) {
if (eventType == AccessibilityEvent.TYPE_VIEW_SELECTED) {
// Ignore TYPE_VIEW_SELECTED or TalkBack will speak for it at onResume.
return;
}
super.sendAccessibilityEvent(host, eventType);
}
});
mLoadingViewController = new LoadingViewController( mLoadingViewController = new LoadingViewController(
getView().findViewById(R.id.loading_container), getListView()); getView().findViewById(R.id.loading_container), getListView());