Merge "Add tile added/removed announcements" into sc-dev

This commit is contained in:
Fabian Kozynski
2021-02-09 14:12:39 +00:00
committed by Android (Google) Code Review
2 changed files with 20 additions and 6 deletions

View File

@@ -2253,6 +2253,12 @@
<!-- Accessibility description indicating the currently selected tile's position. Only used for tiles that are currently in use [CHAR LIMIT=NONE] -->
<string name="accessibility_qs_edit_position">Position <xliff:g id="position" example="5">%1$d</xliff:g></string>
<!-- Accessibility announcement after a tile has been added [CHAR LIMIT=NONE] -->
<string name="accessibility_qs_edit_tile_added">Tile added</string>
<!-- Accessibility announcement after a tile has been added [CHAR LIMIT=NONE] -->
<string name="accessibility_qs_edit_tile_removed">Tile removed</string>
<!-- Accessibility label for window when QS editing is happening [CHAR LIMIT=NONE] -->
<string name="accessibility_desc_quick_settings_edit">Quick settings editor.</string>

View File

@@ -441,15 +441,17 @@ public class TileAdapter extends RecyclerView.Adapter<Holder> implements TileSta
return position > mEditIndex;
}
private void addFromPosition(int position) {
if (!canAddFromPosition(position)) return;
private boolean addFromPosition(int position) {
if (!canAddFromPosition(position)) return false;
move(position, mEditIndex);
return true;
}
private void removeFromPosition(int position) {
if (!canRemoveFromPosition(position)) return;
private boolean removeFromPosition(int position) {
if (!canRemoveFromPosition(position)) return false;
TileInfo info = mTiles.get(position);
move(position, info.isSystem ? mEditIndex : mTileDividerIndex);
return true;
}
public SpanSizeLookup getSizeLookup() {
@@ -578,11 +580,17 @@ public class TileAdapter extends RecyclerView.Adapter<Holder> implements TileSta
}
private void add() {
addFromPosition(getLayoutPosition());
if (addFromPosition(getLayoutPosition())) {
itemView.announceForAccessibility(
itemView.getContext().getText(R.string.accessibility_qs_edit_tile_added));
}
}
private void remove() {
removeFromPosition(getLayoutPosition());
if (removeFromPosition(getLayoutPosition())) {
itemView.announceForAccessibility(
itemView.getContext().getText(R.string.accessibility_qs_edit_tile_removed));
}
}
boolean isCurrentTile() {