Loading res/values/donottranslate_config.xml +4 −0 Original line number Diff line number Diff line Loading @@ -120,4 +120,8 @@ <!-- Height of the tab carousel as a percentage of the current screen width on the contact detail page --> <item name="tab_height_screen_width_percentage" type="fraction">50%</item> <!-- Regular expression for prohibiting certain phone numbers in dialpad. Ignored if empty. --> <string name="config_prohibited_phone_number_regexp"></string> </resources> res/values/strings.xml +4 −0 Original line number Diff line number Diff line Loading @@ -1817,4 +1817,8 @@ <!-- Button label to prompt the user to add another account (when there are already existing accounts on the device) [CHAR LIMIT=30] --> <string name="add_new_account">Add new account</string> <!-- Dialog message which is shown when the user tries to make a phone call to prohibited phone numbers [CHAR LIMIT=NONE] --> <string name="phone_call_prohibited" msgid="4313552620858880999">Call not sent.</string> </resources> src/com/android/contacts/dialpad/DialpadFragment.java +54 −6 Original line number Diff line number Diff line Loading @@ -27,8 +27,12 @@ import com.android.phone.CallLogAsync; import com.android.phone.HapticFeedback; import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; import android.app.Fragment; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.res.Resources; import android.database.Cursor; Loading @@ -37,7 +41,6 @@ import android.graphics.BitmapFactory; import android.media.AudioManager; import android.media.ToneGenerator; import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; import android.os.RemoteException; import android.os.ServiceManager; Loading @@ -46,7 +49,6 @@ import android.provider.Contacts.People; import android.provider.Contacts.Phones; import android.provider.Contacts.PhonesColumns; import android.provider.Settings; import android.telephony.PhoneNumberFormattingTextWatcher; import android.telephony.PhoneNumberUtils; import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; Loading @@ -61,16 +63,21 @@ import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewConfiguration; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.BaseAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.ListView; import android.widget.PopupMenu; import android.widget.TextView; import java.util.HashSet; import java.util.Set; /** * Fragment that displays a twelve-key phone dialpad. */ Loading Loading @@ -117,6 +124,11 @@ public class DialpadFragment extends Fragment private ListView mDialpadChooser; private DialpadChooserAdapter mDialpadChooserAdapter; /** * Regular expression prohibiting manual phone call. Can be empty, which means "no rule". */ private String mProhibitedPhoneNumberRegexp; private boolean mShowOptionsMenu; private boolean mHasVoicemail = false; Loading Loading @@ -219,6 +231,9 @@ public class DialpadFragment extends Fragment } setHasOptionsMenu(true); mProhibitedPhoneNumberRegexp = getResources().getString( R.string.config_prohibited_phone_number_regexp); } @Override Loading Loading @@ -794,6 +809,26 @@ public class DialpadFragment extends Fragment getActivity().finish(); } public static class CallProhibitedDialogFragment extends DialogFragment { public static CallProhibitedDialogFragment newInstance() { return new CallProhibitedDialogFragment(); } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { return new AlertDialog.Builder(getActivity()) .setTitle(R.string.phone_call_prohibited) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dismiss(); } }) .create(); } } /** * In most cases, when the dial button is pressed, there is a * number in digits area. Pack it in the intent, start the Loading Loading @@ -847,11 +882,24 @@ public class DialpadFragment extends Fragment } else { final String number = mDigits.getText().toString(); if (number != null && !TextUtils.isEmpty(mProhibitedPhoneNumberRegexp) && number.matches(mProhibitedPhoneNumberRegexp)) { Log.i(TAG, "The phone number is prohibited explicitly by a rule."); if (getActivity() != null) { DialogFragment dialogFragment = CallProhibitedDialogFragment.newInstance(); dialogFragment.show(getFragmentManager(), "phone_prohibited_dialog"); } // Clear the digits just in case. mDigits.getText().clear(); } else { startActivity(newDialNumberIntent(number)); mDigits.getText().clear(); // TODO: Fix bug 1745781 getActivity().finish(); } } } /** * Plays the specified tone for TONE_LENGTH_MS milliseconds. Loading Loading
res/values/donottranslate_config.xml +4 −0 Original line number Diff line number Diff line Loading @@ -120,4 +120,8 @@ <!-- Height of the tab carousel as a percentage of the current screen width on the contact detail page --> <item name="tab_height_screen_width_percentage" type="fraction">50%</item> <!-- Regular expression for prohibiting certain phone numbers in dialpad. Ignored if empty. --> <string name="config_prohibited_phone_number_regexp"></string> </resources>
res/values/strings.xml +4 −0 Original line number Diff line number Diff line Loading @@ -1817,4 +1817,8 @@ <!-- Button label to prompt the user to add another account (when there are already existing accounts on the device) [CHAR LIMIT=30] --> <string name="add_new_account">Add new account</string> <!-- Dialog message which is shown when the user tries to make a phone call to prohibited phone numbers [CHAR LIMIT=NONE] --> <string name="phone_call_prohibited" msgid="4313552620858880999">Call not sent.</string> </resources>
src/com/android/contacts/dialpad/DialpadFragment.java +54 −6 Original line number Diff line number Diff line Loading @@ -27,8 +27,12 @@ import com.android.phone.CallLogAsync; import com.android.phone.HapticFeedback; import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; import android.app.Fragment; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.res.Resources; import android.database.Cursor; Loading @@ -37,7 +41,6 @@ import android.graphics.BitmapFactory; import android.media.AudioManager; import android.media.ToneGenerator; import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; import android.os.RemoteException; import android.os.ServiceManager; Loading @@ -46,7 +49,6 @@ import android.provider.Contacts.People; import android.provider.Contacts.Phones; import android.provider.Contacts.PhonesColumns; import android.provider.Settings; import android.telephony.PhoneNumberFormattingTextWatcher; import android.telephony.PhoneNumberUtils; import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; Loading @@ -61,16 +63,21 @@ import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewConfiguration; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.BaseAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.ListView; import android.widget.PopupMenu; import android.widget.TextView; import java.util.HashSet; import java.util.Set; /** * Fragment that displays a twelve-key phone dialpad. */ Loading Loading @@ -117,6 +124,11 @@ public class DialpadFragment extends Fragment private ListView mDialpadChooser; private DialpadChooserAdapter mDialpadChooserAdapter; /** * Regular expression prohibiting manual phone call. Can be empty, which means "no rule". */ private String mProhibitedPhoneNumberRegexp; private boolean mShowOptionsMenu; private boolean mHasVoicemail = false; Loading Loading @@ -219,6 +231,9 @@ public class DialpadFragment extends Fragment } setHasOptionsMenu(true); mProhibitedPhoneNumberRegexp = getResources().getString( R.string.config_prohibited_phone_number_regexp); } @Override Loading Loading @@ -794,6 +809,26 @@ public class DialpadFragment extends Fragment getActivity().finish(); } public static class CallProhibitedDialogFragment extends DialogFragment { public static CallProhibitedDialogFragment newInstance() { return new CallProhibitedDialogFragment(); } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { return new AlertDialog.Builder(getActivity()) .setTitle(R.string.phone_call_prohibited) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dismiss(); } }) .create(); } } /** * In most cases, when the dial button is pressed, there is a * number in digits area. Pack it in the intent, start the Loading Loading @@ -847,11 +882,24 @@ public class DialpadFragment extends Fragment } else { final String number = mDigits.getText().toString(); if (number != null && !TextUtils.isEmpty(mProhibitedPhoneNumberRegexp) && number.matches(mProhibitedPhoneNumberRegexp)) { Log.i(TAG, "The phone number is prohibited explicitly by a rule."); if (getActivity() != null) { DialogFragment dialogFragment = CallProhibitedDialogFragment.newInstance(); dialogFragment.show(getFragmentManager(), "phone_prohibited_dialog"); } // Clear the digits just in case. mDigits.getText().clear(); } else { startActivity(newDialNumberIntent(number)); mDigits.getText().clear(); // TODO: Fix bug 1745781 getActivity().finish(); } } } /** * Plays the specified tone for TONE_LENGTH_MS milliseconds. Loading