[Wi-Fi][A11Y] Fix TalkBack lose focus in WifiSettings & WifiSettings2

Use stable ID feature of RecycleView to keep preference focus.

Bug: 126132618
Test: WifiSettingsTest
      WifiSettings2Test
      manual visual

Change-Id: Id73157b0935186c9a59d1ef68190d853f671ebc2
This commit is contained in:
Arc Wang
2019-10-31 14:39:27 +08:00
parent fe5b2d9624
commit f4d3ba1049
4 changed files with 40 additions and 0 deletions

View File

@@ -53,6 +53,8 @@ import android.widget.Toast;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceScreen;
import androidx.recyclerview.widget.RecyclerView;
import com.android.settings.LinkifyUtils;
import com.android.settings.R;
@@ -443,6 +445,13 @@ public class WifiSettings extends RestrictedSettingsFragment
}
}
@Override
protected RecyclerView.Adapter onCreateAdapter(PreferenceScreen preferenceScreen) {
final RecyclerView.Adapter adapter = super.onCreateAdapter(preferenceScreen);
adapter.setHasStableIds(true);
return adapter;
}
@Override
public int getMetricsCategory() {
return SettingsEnums.WIFI;