Merge "Blocked Numbers A11Y fixes & polish." into nyc-dev
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index be77220..2457f25 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -23,7 +23,8 @@
<dimen name="blocked_numbers_large_padding">16dp</dimen>
<dimen name="blocked_numbers_extra_large_padding">32dp</dimen>
- <dimen name="blocked_numbers_delete_icon_size">24dp</dimen>
+ <dimen name="blocked_numbers_dialog_padding">24dp</dimen>
+ <dimen name="blocked_numbers_delete_icon_padding">12dp</dimen>
<dimen name="blocked_numbers_progress_bar_padding">100dp</dimen>
<dimen name="blocked_numbers_font_size">16sp</dimen>
<dimen name="blocked_numbers_secondary_font_size">14sp</dimen>
diff --git a/res/xml/add_blocked_number_dialog.xml b/res/xml/add_blocked_number_dialog.xml
index c1a2d28..b3462fd 100644
--- a/res/xml/add_blocked_number_dialog.xml
+++ b/res/xml/add_blocked_number_dialog.xml
@@ -20,21 +20,19 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
- android:paddingLeft="@dimen/blocked_numbers_extra_large_padding"
- android:paddingRight="@dimen/blocked_numbers_extra_large_padding">
+ android:padding="@dimen/blocked_numbers_dialog_padding">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/add_blocked_dialog_body"
android:paddingTop="@dimen/blocked_numbers_large_padding"
android:paddingBottom="@dimen/blocked_numbers_large_padding"
- style="@style/BlockedNumbersText" />
+ style="@style/BlockedNumbersTitleText" />
<EditText
android:id="@+id/add_blocked_number"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/blocked_numbers_large_padding"
- android:paddingBottom="@dimen/blocked_numbers_large_padding"
android:hint="@string/add_blocked_number_hint"
android:inputType="phone" />
</LinearLayout>
\ No newline at end of file
diff --git a/res/xml/layout_blocked_number.xml b/res/xml/layout_blocked_number.xml
index e6475a4..e8fd4d1 100644
--- a/res/xml/layout_blocked_number.xml
+++ b/res/xml/layout_blocked_number.xml
@@ -30,12 +30,13 @@
android:paddingBottom="@dimen/blocked_numbers_extra_large_padding"
android:layout_toLeftOf="@+id/delete" />
- <ImageButton
- android:id="@+id/delete_blocked_number"
- android:layout_width="@dimen/blocked_numbers_delete_icon_size"
- android:layout_height="@dimen/blocked_numbers_delete_icon_size"
- android:src="@drawable/ic_close_grey_24dp"
- android:layout_alignParentRight="true"
- android:contentDescription="@string/delete_icon_description"
- android:background="?android:attr/selectableItemBackgroundBorderless" />
+ <ImageView
+ android:id="@+id/delete_blocked_number"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:padding="@dimen/blocked_numbers_delete_icon_padding"
+ android:src="@drawable/ic_close_grey_24dp"
+ android:layout_alignParentRight="true"
+ android:contentDescription="@string/delete_icon_description"
+ android:background="?android:attr/selectableItemBackgroundBorderless" />
</RelativeLayout>
\ No newline at end of file
diff --git a/src/com/android/server/telecom/settings/BlockedNumbersActivity.java b/src/com/android/server/telecom/settings/BlockedNumbersActivity.java
index a9e6cdd..46db581 100644
--- a/src/com/android/server/telecom/settings/BlockedNumbersActivity.java
+++ b/src/com/android/server/telecom/settings/BlockedNumbersActivity.java
@@ -26,6 +26,8 @@
import android.os.Bundle;
import android.os.UserManager;
import android.provider.BlockedNumberContract;
+import android.telephony.PhoneNumberFormattingTextWatcher;
+import android.telephony.PhoneNumberUtils;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
@@ -84,8 +86,7 @@
actionBar.setDisplayHomeAsUpEnabled(true);
}
- UserManager userManager = (UserManager) getSystemService(Context.USER_SERVICE);
- if (!userManager.isPrimaryUser()) {
+ if (!BlockedNumberContract.canCurrentUserBlockNumbers(this)) {
TextView nonPrimaryUserText = (TextView) findViewById(R.id.non_primary_user);
nonPrimaryUserText.setVisibility(View.VISIBLE);
@@ -186,12 +187,14 @@
LayoutInflater inflater = this.getLayoutInflater();
View dialogView = inflater.inflate(R.xml.add_blocked_number_dialog, null);
final EditText editText = (EditText) dialogView.findViewById(R.id.add_blocked_number);
+ editText.addTextChangedListener(new PhoneNumberFormattingTextWatcher());
editText.addTextChangedListener(this);
AlertDialog dialog = new AlertDialog.Builder(this)
.setView(dialogView)
.setPositiveButton(R.string.block_button, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
- addBlockedNumber(editText.getText().toString());
+ addBlockedNumber(PhoneNumberUtils.stripSeparators(
+ editText.getText().toString()));
}
})
.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
diff --git a/src/com/android/server/telecom/settings/BlockedNumbersAdapter.java b/src/com/android/server/telecom/settings/BlockedNumbersAdapter.java
index 3d56459..5da230b 100644
--- a/src/com/android/server/telecom/settings/BlockedNumbersAdapter.java
+++ b/src/com/android/server/telecom/settings/BlockedNumbersAdapter.java
@@ -23,6 +23,8 @@
import android.database.Cursor;
import android.provider.BlockedNumberContract;
import android.telephony.PhoneNumberUtils;
+import android.text.Spannable;
+import android.text.SpannableString;
import android.view.View;
import android.widget.SimpleCursorAdapter;
import android.widget.TextView;
@@ -46,7 +48,9 @@
final String finalFormattedNumber = formattedNumber == null ? rawNumber : formattedNumber;
TextView numberView = (TextView) view.findViewById(R.id.blocked_number);
- numberView.setText(finalFormattedNumber);
+ Spannable numberSpannable = new SpannableString(finalFormattedNumber);
+ PhoneNumberUtils.addTtsSpan(numberSpannable, 0, numberSpannable.length());
+ numberView.setText(numberSpannable);
View deleteButton = view.findViewById(R.id.delete_blocked_number);
deleteButton.setOnClickListener(new View.OnClickListener() {
@@ -67,8 +71,13 @@
private void showDeleteBlockedNumberDialog(final Context context, final String rawNumber,
final String formattedNumber) {
+ String message = context.getString(R.string.unblock_dialog_body, formattedNumber);
+ int startingPosition = message.indexOf(formattedNumber);
+ Spannable messageSpannable = new SpannableString(message);
+ PhoneNumberUtils.addTtsSpan(messageSpannable, startingPosition,
+ startingPosition + formattedNumber.length());
new AlertDialog.Builder(context)
- .setMessage(context.getString(R.string.unblock_dialog_body, formattedNumber))
+ .setMessage(messageSpannable)
.setPositiveButton(R.string.unblock_button,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {