diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2017-08-31 16:17:04 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2017-08-31 16:17:04 +0000 |
commit | c39ea3c55fac807c0b98aabdf56c70dc8a49036c (patch) | |
tree | e282668a9587cf6c1ec7b604dea860400c75c6c7 /java/com/android/dialer/dialpadview | |
parent | 68038172793ee0e2ab3e2e56ddfbeb82879d1f58 (diff) | |
parent | 2ca4318cc1ee57dda907ba2069bd61d162b1baef (diff) |
Merge "Update Dialer source to latest internal Google revision."
Diffstat (limited to 'java/com/android/dialer/dialpadview')
118 files changed, 4218 insertions, 124 deletions
diff --git a/java/com/android/dialer/dialpadview/DialpadFragment.java b/java/com/android/dialer/dialpadview/DialpadFragment.java new file mode 100644 index 000000000..c15014fd0 --- /dev/null +++ b/java/com/android/dialer/dialpadview/DialpadFragment.java @@ -0,0 +1,1720 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.dialer.dialpadview; + +import android.app.Activity; +import android.app.AlertDialog; +import android.app.Dialog; +import android.app.DialogFragment; +import android.app.Fragment; +import android.content.BroadcastReceiver; +import android.content.ContentResolver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.content.res.Resources; +import android.database.Cursor; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.media.AudioManager; +import android.media.ToneGenerator; +import android.net.Uri; +import android.os.Bundle; +import android.os.Trace; +import android.provider.Contacts.People; +import android.provider.Contacts.Phones; +import android.provider.Contacts.PhonesColumns; +import android.provider.Settings; +import android.support.annotation.Nullable; +import android.support.annotation.VisibleForTesting; +import android.support.design.widget.FloatingActionButton; +import android.telecom.PhoneAccount; +import android.telecom.PhoneAccountHandle; +import android.telephony.PhoneNumberFormattingTextWatcher; +import android.telephony.PhoneNumberUtils; +import android.telephony.TelephonyManager; +import android.text.Editable; +import android.text.TextUtils; +import android.text.TextWatcher; +import android.util.AttributeSet; +import android.view.HapticFeedbackConstants; +import android.view.KeyEvent; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; +import android.widget.AdapterView; +import android.widget.BaseAdapter; +import android.widget.EditText; +import android.widget.ImageView; +import android.widget.ListView; +import android.widget.PopupMenu; +import android.widget.RelativeLayout; +import android.widget.TextView; +import com.android.contacts.common.dialog.CallSubjectDialog; +import com.android.contacts.common.util.StopWatch; +import com.android.contacts.common.widget.FloatingActionButtonController; +import com.android.dialer.animation.AnimUtils; +import com.android.dialer.callintent.CallInitiationType; +import com.android.dialer.callintent.CallIntentBuilder; +import com.android.dialer.calllogutils.PhoneAccountUtils; +import com.android.dialer.common.FragmentUtils; +import com.android.dialer.common.LogUtil; +import com.android.dialer.common.concurrent.DialerExecutor; +import com.android.dialer.common.concurrent.DialerExecutor.Worker; +import com.android.dialer.common.concurrent.DialerExecutors; +import com.android.dialer.location.GeoUtil; +import com.android.dialer.logging.UiAction; +import com.android.dialer.oem.MotorolaUtils; +import com.android.dialer.performancereport.PerformanceReport; +import com.android.dialer.proguard.UsedByReflection; +import com.android.dialer.telecom.TelecomUtil; +import com.android.dialer.util.CallUtil; +import com.android.dialer.util.DialerUtils; +import com.android.dialer.util.PermissionsUtil; +import java.util.HashSet; +import java.util.List; + +/** Fragment that displays a twelve-key phone dialpad. */ +public class DialpadFragment extends Fragment + implements View.OnClickListener, + View.OnLongClickListener, + View.OnKeyListener, + AdapterView.OnItemClickListener, + TextWatcher, + PopupMenu.OnMenuItemClickListener, + DialpadKeyButton.OnPressedListener { + + private static final String TAG = "DialpadFragment"; + private static final String EMPTY_NUMBER = ""; + private static final char PAUSE = ','; + private static final char WAIT = ';'; + /** The length of DTMF tones in milliseconds */ + private static final int TONE_LENGTH_MS = 150; + + private static final int TONE_LENGTH_INFINITE = -1; + /** The DTMF tone volume relative to other sounds in the stream */ + private static final int TONE_RELATIVE_VOLUME = 80; + /** Stream type used to play the DTMF tones off call, and mapped to the volume control keys */ + private static final int DIAL_TONE_STREAM_TYPE = AudioManager.STREAM_DTMF; + /** Identifier for the "Add Call" intent extra. */ + private static final String ADD_CALL_MODE_KEY = "add_call_mode"; + /** + * Identifier for intent extra for sending an empty Flash message for CDMA networks. This message + * is used by the network to simulate a press/depress of the "hookswitch" of a landline phone. Aka + * "empty flash". + * + * <p>TODO: Using an intent extra to tell the phone to send this flash is a temporary measure. To + * be replaced with an Telephony/TelecomManager call in the future. TODO: Keep in sync with the + * string defined in OutgoingCallBroadcaster.java in Phone app until this is replaced with the + * Telephony/Telecom API. + */ + private static final String EXTRA_SEND_EMPTY_FLASH = "com.android.phone.extra.SEND_EMPTY_FLASH"; + + private static final String PREF_DIGITS_FILLED_BY_INTENT = "pref_digits_filled_by_intent"; + private final Object mToneGeneratorLock = new Object(); + /** Set of dialpad keys that are currently being pressed */ + private final HashSet<View> mPressedDialpadKeys = new HashSet<>(12); + + private OnDialpadQueryChangedListener mDialpadQueryListener; + private DialpadView mDialpadView; + private EditText mDigits; + private int mDialpadSlideInDuration; + /** Remembers if we need to clear digits field when the screen is completely gone. */ + private boolean mClearDigitsOnStop; + + private View mOverflowMenuButton; + private PopupMenu mOverflowPopupMenu; + private View mDelete; + private ToneGenerator mToneGenerator; + private FloatingActionButtonController mFloatingActionButtonController; + private FloatingActionButton mFloatingActionButton; + private ListView mDialpadChooser; + private DialpadChooserAdapter mDialpadChooserAdapter; + /** Regular expression prohibiting manual phone call. Can be empty, which means "no rule". */ + private String mProhibitedPhoneNumberRegexp; + + private PseudoEmergencyAnimator mPseudoEmergencyAnimator; + private String mLastNumberDialed = EMPTY_NUMBER; + + // determines if we want to playback local DTMF tones. + private boolean mDTMFToneEnabled; + private String mCurrentCountryIso; + private CallStateReceiver mCallStateReceiver; + private boolean mWasEmptyBeforeTextChange; + /** + * This field is set to true while processing an incoming DIAL intent, in order to make sure that + * SpecialCharSequenceMgr actions can be triggered by user input but *not* by a tel: URI passed by + * some other app. It will be set to false when all digits are cleared. + */ + private boolean mDigitsFilledByIntent; + + private boolean mStartedFromNewIntent = false; + private boolean mFirstLaunch = false; + private boolean mAnimate = false; + + private DialerExecutor<String> initPhoneNumberFormattingTextWatcherExecutor; + + /** + * Determines whether an add call operation is requested. + * + * @param intent The intent. + * @return {@literal true} if add call operation was requested. {@literal false} otherwise. + */ + public static boolean isAddCallMode(Intent intent) { + if (intent == null) { + return false; + } + final String action = intent.getAction(); + if (Intent.ACTION_DIAL.equals(action) || Intent.ACTION_VIEW.equals(action)) { + // see if we are "adding a call" from the InCallScreen; false by default. + return intent.getBooleanExtra(ADD_CALL_MODE_KEY, false); + } else { + return false; + } + } + + /** + * Format the provided string of digits into one that represents a properly formatted phone + * number. + * + * @param dialString String of characters to format + * @param normalizedNumber the E164 format number whose country code is used if the given + * phoneNumber doesn't have the country code. + * @param countryIso The country code representing the format to use if the provided normalized + * number is null or invalid. + * @return the provided string of digits as a formatted phone number, retaining any post-dial + * portion of the string. + */ + @VisibleForTesting + static String getFormattedDigits(String dialString, String normalizedNumber, String countryIso) { + String number = PhoneNumberUtils.extractNetworkPortion(dialString); + // Also retrieve the post dial portion of the provided data, so that the entire dial + // string can be reconstituted later. + final String postDial = PhoneNumberUtils.extractPostDialPortion(dialString); + + if (TextUtils.isEmpty(number)) { + return postDial; + } + + number = PhoneNumberUtils.formatNumber(number, normalizedNumber, countryIso); + + if (TextUtils.isEmpty(postDial)) { + return number; + } + + return number.concat(postDial); + } + + /** + * Returns true of the newDigit parameter can be added at the current selection point, otherwise + * returns false. Only prevents input of WAIT and PAUSE digits at an unsupported position. Fails + * early if start == -1 or start is larger than end. + */ + @VisibleForTesting + /* package */ static boolean canAddDigit(CharSequence digits, int start, int end, char newDigit) { + if (newDigit != WAIT && newDigit != PAUSE) { + throw new IllegalArgumentException( + "Should not be called for anything other than PAUSE & WAIT"); + } + + // False if no selection, or selection is reversed (end < start) + if (start == -1 || end < start) { + return false; + } + + // unsupported selection-out-of-bounds state + if (start > digits.length() || end > digits.length()) { + return false; + } + + // Special digit cannot be the first digit + if (start == 0) { + return false; + } + + if (newDigit == WAIT) { + // preceding char is ';' (WAIT) + if (digits.charAt(start - 1) == WAIT) { + return false; + } + + // next char is ';' (WAIT) + if ((digits.length() > end) && (digits.charAt(end) == WAIT)) { + return false; + } + } + + return true; + } + + private TelephonyManager getTelephonyManager() { + return (TelephonyManager) getActivity().getSystemService(Context.TELEPHONY_SERVICE); + } + + @Override + public Context getContext() { + return getActivity(); + } + + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + mWasEmptyBeforeTextChange = TextUtils.isEmpty(s); + } + + @Override + public void onTextChanged(CharSequence input, int start, int before, int changeCount) { + if (mWasEmptyBeforeTextChange != TextUtils.isEmpty(input)) { + final Activity activity = getActivity(); + if (activity != null) { + activity.invalidateOptionsMenu(); + updateMenuOverflowButton(mWasEmptyBeforeTextChange); + } + } + + // DTMF Tones do not need to be played here any longer - + // the DTMF dialer handles that functionality now. + } + + @Override + public void afterTextChanged(Editable input) { + // When DTMF dialpad buttons are being pressed, we delay SpecialCharSequenceMgr sequence, + // since some of SpecialCharSequenceMgr's behavior is too abrupt for the "touch-down" + // behavior. + if (!mDigitsFilledByIntent + && SpecialCharSequenceMgr.handleChars(getActivity(), input.toString(), mDigits)) { + // A special sequence was entered, clear the digits + mDigits.getText().clear(); + } + + if (isDigitsEmpty()) { + mDigitsFilledByIntent = false; + mDigits.setCursorVisible(false); + } + + if (mDialpadQueryListener != null) { + mDialpadQueryListener.onDialpadQueryChanged(mDigits.getText().toString()); + } + + updateDeleteButtonEnabledState(); + } + + @Override + public void onCreate(Bundle state) { + Trace.beginSection(TAG + " onCreate"); + super.onCreate(state); + + mFirstLaunch = state == null; + + mCurrentCountryIso = GeoUtil.getCurrentCountryIso(getActivity()); + + mProhibitedPhoneNumberRegexp = + getResources().getString(R.string.config_prohibited_phone_number_regexp); + + if (state != null) { + mDigitsFilledByIntent = state.getBoolean(PREF_DIGITS_FILLED_BY_INTENT); + } + + mDialpadSlideInDuration = getResources().getInteger(R.integer.dialpad_slide_in_duration); + + if (mCallStateReceiver == null) { + IntentFilter callStateIntentFilter = + new IntentFilter(TelephonyManager.ACTION_PHONE_STATE_CHANGED); + mCallStateReceiver = new CallStateReceiver(); + getActivity().registerReceiver(mCallStateReceiver, callStateIntentFilter); + } + + initPhoneNumberFormattingTextWatcherExecutor = + DialerExecutors.createUiTaskBuilder( + getFragmentManager(), + "DialpadFragment.initPhoneNumberFormattingTextWatcher", + new InitPhoneNumberFormattingTextWatcherWorker()) + .onSuccess(watcher -> mDialpadView.getDigits().addTextChangedListener(watcher)) + .build(); + Trace.endSection(); + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedState) { + Trace.beginSection(TAG + " onCreateView"); + Trace.beginSection(TAG + " inflate view"); + View fragmentView = inflater.inflate(R.layout.dialpad_fragment, container, false); + Trace.endSection(); + Trace.beginSection(TAG + " buildLayer"); + fragmentView.buildLayer(); + Trace.endSection(); + + Trace.beginSection(TAG + " setup views"); + + mDialpadView = fragmentView.findViewById(R.id.dialpad_view); + mDialpadView.setCanDigitsBeEdited(true); + mDigits = mDialpadView.getDigits(); + mDigits.setKeyListener(UnicodeDialerKeyListener.INSTANCE); + mDigits.setOnClickListener(this); + mDigits.setOnKeyListener(this); + mDigits.setOnLongClickListener(this); + mDigits.addTextChangedListener(this); + mDigits.setElegantTextHeight(false); + + initPhoneNumberFormattingTextWatcherExecutor.executeSerial( + GeoUtil.getCurrentCountryIso(getActivity())); + + // Check for the presence of the keypad + View oneButton = fragmentView.findViewById(R.id.one); + if (oneButton != null) { + configureKeypadListeners(fragmentView); + } + + mDelete = mDialpadView.getDeleteButton(); + + if (mDelete != null) { + mDelete.setOnClickListener(this); + mDelete.setOnLongClickListener(this); + } + + fragmentView + .findViewById(R.id.spacer) + .setOnTouchListener( + (v, event) -> { + if (isDigitsEmpty()) { + if (getActivity() != null) { + return ((HostInterface) getActivity()).onDialpadSpacerTouchWithEmptyQuery(); + } + return true; + } + return false; + }); + + mDigits.setCursorVisible(false); + + // Set up the "dialpad chooser" UI; see showDialpadChooser(). + mDialpadChooser = fragmentView.findViewById(R.id.dialpadChooser); + mDialpadChooser.setOnItemClickListener(this); + + mFloatingActionButton = fragmentView.findViewById(R.id.dialpad_floating_action_button); + mFloatingActionButton.setOnClickListener(this); + mFloatingActionButtonController = + new FloatingActionButtonController(getActivity(), mFloatingActionButton); + Trace.endSection(); + Trace.endSection(); + return fragmentView; + } + + private boolean isLayoutReady() { + return mDigits != null; + } + + public EditText getDigitsWidget() { + return mDigits; + } + + /** @return true when {@link #mDigits} is actually filled by the Intent. */ + private boolean fillDigitsIfNecessary(Intent intent) { + // Only fills digits from an intent if it is a new intent. + // Otherwise falls back to the previously used number. + if (!mFirstLaunch && !mStartedFromNewIntent) { + return false; + } + + final String action = intent.getAction(); + if (Intent.ACTION_DIAL.equals(action) || Intent.ACTION_VIEW.equals(action)) { + Uri uri = intent.getData(); + if (uri != null) { + if (PhoneAccount.SCHEME_TEL.equals(uri.getScheme())) { + // Put the requested number into the input area + String data = uri.getSchemeSpecificPart(); + // Remember it is filled via Intent. + mDigitsFilledByIntent = true; + final String converted = + PhoneNumberUtils.convertKeypadLettersToDigits( + PhoneNumberUtils.replaceUnicodeDigits(data)); + setFormattedDigits(converted, null); + return true; + } else { + if (!PermissionsUtil.hasContactsReadPermissions(getActivity())) { + return false; + } + String type = intent.getType(); + if (People.CONTENT_ITEM_TYPE.equals(type) || Phones.CONTENT_ITEM_TYPE.equals(type)) { + // Query the phone number + Cursor c = + getActivity() + .getContentResolver() + .query( + intent.getData(), + new String[] {PhonesColumns.NUMBER, PhonesColumns.NUMBER_KEY}, + null, + null, + null); + if (c != null) { + try { + if (c.moveToFirst()) { + // Remember it is filled via Intent. + mDigitsFilledByIntent = true; + // Put the number into the input area + setFormattedDigits(c.getString(0), c.getString(1)); + return true; + } + } finally { + c.close(); + } + } + } + } + } + } + return false; + } + + /** + * Checks the given Intent and changes dialpad's UI state. For example, if the Intent requires the + * screen to enter "Add Call" mode, this method will show correct UI for the mode. + */ + private void configureScreenFromIntent(Activity parent) { + // If we were not invoked with a DIAL intent + if (!Intent.ACTION_DIAL.equals(parent.getIntent().getAction())) { + setStartedFromNewIntent(false); + return; + } + + // See if we were invoked with a DIAL intent. If we were, fill in the appropriate + // digits in the dialer field. + Intent intent = parent.getIntent(); + + if (!isLayoutReady()) { + // This happens typically when parent's Activity#onNewIntent() is called while + // Fragment#onCreateView() isn't called yet, and thus we cannot configure Views at + // this point. onViewCreate() should call this method after preparing layouts, so + // just ignore this call now. + LogUtil.i( + "DialpadFragment.configureScreenFromIntent", + "Screen configuration is requested before onCreateView() is called. Ignored"); + return; + } + + boolean needToShowDialpadChooser = false; + + // Be sure *not* to show the dialpad chooser if this is an + // explicit "Add call" action, though. + final boolean isAddCallMode = isAddCallMode(intent); + if (!isAddCallMode) { + + // Don't show the chooser when called via onNewIntent() and phone number is present. + // i.e. User clicks a telephone link from gmail for example. + // In this case, we want to show the dialpad with the phone number. + final boolean digitsFilled = fillDigitsIfNecessary(intent); + if (!(mStartedFromNewIntent && digitsFilled)) { + + final String action = intent.getAction(); + if (Intent.ACTION_DIAL.equals(action) + || Intent.ACTION_VIEW.equals(action) + || Intent.ACTION_MAIN.equals(action)) { + // If there's already an active call, bring up an intermediate UI to + // make the user confirm what they really want to do. + if (isPhoneInUse()) { + needToShowDialpadChooser = true; + } + } + } + } + showDialpadChooser(needToShowDialpadChooser); + setStartedFromNewIntent(false); + } + + public void setStartedFromNewIntent(boolean value) { + mStartedFromNewIntent = value; + } + + public void clearCallRateInformation() { + setCallRateInformation(null, null); + } + + public void setCallRateInformation(String countryName, String displayRate) { + mDialpadView.setCallRateInformation(countryName, displayRate); + } + + /** Sets formatted digits to digits field. */ + private void setFormattedDigits(String data, String normalizedNumber) { + final String formatted = getFormattedDigits(data, normalizedNumber, mCurrentCountryIso); + if (!TextUtils.isEmpty(formatted)) { + Editable digits = mDigits.getText(); + digits.replace(0, digits.length(), formatted); + // for some reason this isn't getting called in the digits.replace call above.. + // but in any case, this will make sure the background drawable looks right + afterTextChanged(digits); + } + } + + private void configureKeypadListeners(View fragmentView) { + final int[] buttonIds = + new int[] { + R.id.one, + R.id.two, + R.id.three, + R.id.four, + R.id.five, + R.id.six, + R.id.seven, + R.id.eight, + R.id.nine, + R.id.star, + R.id.zero, + R.id.pound + }; + + DialpadKeyButton dialpadKey; + + for (int buttonId : buttonIds) { + dialpadKey = fragmentView.findViewById(buttonId); + dialpadKey.setOnPressedListener(this); + } + + // Long-pressing one button will initiate Voicemail. + final DialpadKeyButton one = fragmentView.findViewById(R.id.one); + one.setOnLongClickListener(this); + + // Long-pressing zero button will enter '+' instead. + final DialpadKeyButton zero = fragmentView.findViewById(R.id.zero); + zero.setOnLongClickListener(this); + } + + @Override + public void onStart() { + LogUtil.d("DialpadFragment.onStart", "first launch: %b", mFirstLaunch); + Trace.beginSection(TAG + " onStart"); + super.onStart(); + // if the mToneGenerator creation fails, just continue without it. It is + // a local audio signal, and is not as important as the dtmf tone itself. + final long start = System.currentTimeMillis(); + synchronized (mToneGeneratorLock) { + if (mToneGenerator == null) { + try { + mToneGenerator = new ToneGenerator(DIAL_TONE_STREAM_TYPE, TONE_RELATIVE_VOLUME); + } catch (RuntimeException e) { + LogUtil.e( + "DialpadFragment.onStart", + "Exception caught while creating local tone generator: " + e); + mToneGenerator = null; + } + } + } + final long total = System.currentTimeMillis() - start; + if (total > 50) { + LogUtil.i("DialpadFragment.onStart", "Time for ToneGenerator creation: " + total); + } + Trace.endSection(); + } + + @Override + public void onResume() { + LogUtil.d("DialpadFragment.onResume", ""); + Trace.beginSection(TAG + " onResume"); + super.onResume(); + + Resources res = getResources(); + int iconId = R.drawable.quantum_ic_call_vd_theme_24; + if (MotorolaUtils.isWifiCallingAvailable(getContext())) { + iconId = R.drawable.ic_wifi_calling; + } + mFloatingActionButtonController.changeIcon( + res.getDrawable(iconId, null), res.getString(R.string.description_dial_button)); + + mDialpadQueryListener = + FragmentUtils.getParentUnsafe(this, OnDialpadQueryChangedListener.class); + + final StopWatch stopWatch = StopWatch.start("Dialpad.onResume"); + + // Query the last dialed number. Do it first because hitting + // the DB is 'slow'. This call is asynchronous. + queryLastOutgoingCall(); + + stopWatch.lap("qloc"); + + final ContentResolver contentResolver = getActivity().getContentResolver(); + + // retrieve the DTMF tone play back setting. + mDTMFToneEnabled = + Settings.System.getInt(contentResolver, Settings.System.DTMF_TONE_WHEN_DIALING, 1) == 1; + + stopWatch.lap("dtwd"); + + stopWatch.lap("hptc"); + + mPressedDialpadKeys.clear(); + + configureScreenFromIntent(getActivity()); + + stopWatch.lap("fdin"); + + if (!isPhoneInUse()) { + // A sanity-check: the "dialpad chooser" UI should not be visible if the phone is idle. + showDialpadChooser(false); + } + + stopWatch.lap("hnt"); + + updateDeleteButtonEnabledState(); + + stopWatch.lap("bes"); + + stopWatch.stopAndLog(TAG, 50); + + // Populate the overflow menu in onResume instead of onCreate, so that if the SMS activity + // is disabled while Dialer is paused, the "Send a text message" option can be correctly + // removed when resumed. + mOverflowMenuButton = mDialpadView.getOverflowMenuButton(); + mOverflowPopupMenu = buildOptionsMenu(mOverflowMenuButton); + mOverflowMenuButton.setOnTouchListener(mOverflowPopupMenu.getDragToOpenListener()); + mOverflowMenuButton.setOnClickListener(this); + mOverflowMenuButton.setVisibility(isDigitsEmpty() ? View.INVISIBLE : View.VISIBLE); + + if (mFirstLaunch) { + // The onHiddenChanged callback does not get called the first time the fragment is + // attached, so call it ourselves here. + onHiddenChanged(false); + } + + mFirstLaunch = false; + Trace.endSection(); + } + + @Override + public void onPause() { + super.onPause(); + + // Make sure we don't leave this activity with a tone still playing. + stopTone(); + mPressedDialpadKeys.clear(); + + // TODO: I wonder if we should not check if the AsyncTask that + // lookup the last dialed number has completed. + mLastNumberDialed = EMPTY_NUMBER; // Since we are going to query again, free stale number. + + SpecialCharSequenceMgr.cleanup(); + mOverflowPopupMenu.dismiss(); + } + + @Override + public void onStop() { + super.onStop(); + + synchronized (mToneGeneratorLock) { + if (mToneGenerator != null) { + mToneGenerator.release(); + mToneGenerator = null; + } + } + + if (mClearDigitsOnStop) { + mClearDigitsOnStop = false; + clearDialpad(); + } + } + + @Override + public void onSaveInstanceState(Bundle outState) { + super.onSaveInstanceState(outState); + outState.putBoolean(PREF_DIGITS_FILLED_BY_INTENT, mDigitsFilledByIntent); + } + + @Override + public void onDestroy() { + super.onDestroy(); + if (mPseudoEmergencyAnimator != null) { + mPseudoEmergencyAnimator.destroy(); + mPseudoEmergencyAnimator = null; + } + getActivity().unregisterReceiver(mCallStateReceiver); + } + + private void keyPressed(int keyCode) { + if (getView() == null || getView().getTranslationY() != 0) { + return; + } + switch (keyCode) { + case KeyEvent.KEYCODE_1: + playTone(ToneGenerator.TONE_DTMF_1, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_2: + playTone(ToneGenerator.TONE_DTMF_2, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_3: + playTone(ToneGenerator.TONE_DTMF_3, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_4: + playTone(ToneGenerator.TONE_DTMF_4, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_5: + playTone(ToneGenerator.TONE_DTMF_5, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_6: + playTone(ToneGenerator.TONE_DTMF_6, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_7: + playTone(ToneGenerator.TONE_DTMF_7, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_8: + playTone(ToneGenerator.TONE_DTMF_8, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_9: + playTone(ToneGenerator.TONE_DTMF_9, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_0: + playTone(ToneGenerator.TONE_DTMF_0, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_POUND: + playTone(ToneGenerator.TONE_DTMF_P, TONE_LENGTH_INFINITE); + break; + case KeyEvent.KEYCODE_STAR: + playTone(ToneGenerator.TONE_DTMF_S, TONE_LENGTH_INFINITE); + break; + default: + break; + } + + getView().performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY); + KeyEvent event = new KeyEvent(KeyEvent.ACTION_DOWN, keyCode); + mDigits.onKeyDown(keyCode, event); + + // If the cursor is at the end of the text we hide it. + final int length = mDigits.length(); + if (length == mDigits.getSelectionStart() && length == mDigits.getSelectionEnd()) { + mDigits.setCursorVisible(false); + } + } + + @Override + public boolean onKey(View view, int keyCode, KeyEvent event) { + if (view.getId() == R.id.digits) { + if (keyCode == KeyEvent.KEYCODE_ENTER) { + handleDialButtonPressed(); + return true; + } + } + return false; + } + + /** + * When a key is pressed, we start playing DTMF tone, do vibration, and enter the digit + * immediately. When a key is released, we stop the tone. Note that the "key press" event will be + * delivered by the system with certain amount of delay, it won't be synced with user's actual + * "touch-down" behavior. + */ + @Override + public void onPressed(View view, boolean pressed) { + if (pressed) { + int resId = view.getId(); + if (resId == R.id.one) { + keyPressed(KeyEvent.KEYCODE_1); + } else if (resId == R.id.two) { + keyPressed(KeyEvent.KEYCODE_2); + } else if (resId == R.id.three) { + keyPressed(KeyEvent.KEYCODE_3); + } else if (resId == R.id.four) { + keyPressed(KeyEvent.KEYCODE_4); + } else if (resId == R.id.five) { + keyPressed(KeyEvent.KEYCODE_5); + } else if (resId == R.id.six) { + keyPressed(KeyEvent.KEYCODE_6); + } else if (resId == R.id.seven) { + keyPressed(KeyEvent.KEYCODE_7); + } else if (resId == R.id.eight) { + keyPressed(KeyEvent.KEYCODE_8); + } else if (resId == R.id.nine) { + keyPressed(KeyEvent.KEYCODE_9); + } else if (resId == R.id.zero) { + keyPressed(KeyEvent.KEYCODE_0); + } else if (resId == R.id.pound) { + keyPressed(KeyEvent.KEYCODE_POUND); + } else if (resId == R.id.star) { + keyPressed(KeyEvent.KEYCODE_STAR); + } else { + LogUtil.e( + "DialpadFragment.onPressed", "Unexpected onTouch(ACTION_DOWN) event from: " + view); + } + mPressedDialpadKeys.add(view); + } else { + mPressedDialpadKeys.remove(view); + if (mPressedDialpadKeys.isEmpty()) { + stopTone(); + } + } + } + + /** + * Called by the containing Activity to tell this Fragment to build an overflow options menu for + * display by the container when appropriate. + * + * @param invoker the View that invoked the options menu, to act as an anchor location. + */ + private PopupMenu buildOptionsMenu(View invoker) { + final PopupMenu popupMenu = + new PopupMenu(getActivity(), invoker) { + @Override + public void show() { + final Menu menu = getMenu(); + + boolean enable = !isDigitsEmpty(); + for (int i = 0; i < menu.size(); i++) { + MenuItem item = menu.getItem(i); + item.setEnabled(enable); + if (item.getItemId() == R.id.menu_call_with_note) { + item.setVisible(CallUtil.isCallWithSubjectSupported(getContext())); + } + } + super.show(); + } + }; + popupMenu.inflate(R.menu.dialpad_options); + popupMenu.setOnMenuItemClickListener(this); + return popupMenu; + } + + @Override + public void onClick(View view) { + int resId = view.getId(); + if (resId == R.id.dialpad_floating_action_button) { + view.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY); + handleDialButtonPressed(); + } else if (resId == R.id.deleteButton) { + keyPressed(KeyEvent.KEYCODE_DEL); + } else if (resId == R.id.digits) { + if (!isDigitsEmpty()) { + mDigits.setCursorVisible(true); + } + } else if (resId == R.id.dialpad_overflow) { + mOverflowPopupMenu.show(); + } else { + LogUtil.w("DialpadFragment.onClick", "Unexpected event from: " + view); + } + } + + @Override + public boolean onLongClick(View view) { + final Editable digits = mDigits.getText(); + final int id = view.getId(); + if (id == R.id.deleteButton) { + digits.clear(); + return true; + } else if (id == R.id.one) { + if (isDigitsEmpty() || TextUtils.equals(mDigits.getText(), "1")) { + // We'll try to initiate voicemail and thus we want to remove irrelevant string. + removePreviousDigitIfPossible('1'); + + List<PhoneAccountHandle> subscriptionAccountHandles = + PhoneAccountUtils.getSubscriptionPhoneAccounts(getActivity()); + boolean hasUserSelectedDefault = + subscriptionAccountHandles.contains( + TelecomUtil.getDefaultOutgoingPhoneAccount( + getActivity(), PhoneAccount.SCHEME_VOICEMAIL)); + boolean needsAccountDisambiguation = + subscriptionAccountHandles.size() > 1 && !hasUserSelectedDefault; + + if (needsAccountDisambiguation || isVoicemailAvailable()) { + // On a multi-SIM phone, if the user has not selected a default + // subscription, initiate a call to voicemail so they can select an account + // from the "Call with" dialog. + callVoicemail(); + } else if (getActivity() != null) { + // Voicemail is unavailable maybe because Airplane mode is turned on. + // Check the current status and show the most appropriate error message. + final boolean isAirplaneModeOn = + Settings.System.getInt( + getActivity().getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) + != 0; + if (isAirplaneModeOn) { + DialogFragment dialogFragment = + ErrorDialogFragment.newInstance(R.string.dialog_voicemail_airplane_mode_message); + dialogFragment.show(getFragmentManager(), "voicemail_request_during_airplane_mode"); + } else { + DialogFragment dialogFragment = + ErrorDialogFragment.newInstance(R.string.dialog_voicemail_not_ready_message); + dialogFragment.show(getFragmentManager(), "voicemail_not_ready"); + } + } + return true; + } + return false; + } else if (id == R.id.zero) { + if (mPressedDialpadKeys.contains(view)) { + // If the zero key is currently pressed, then the long press occurred by touch + // (and not via other means like certain accessibility input methods). + // Remove the '0' that was input when the key was first pressed. + removePreviousDigitIfPossible('0'); + } + keyPressed(KeyEvent.KEYCODE_PLUS); + stopTone(); + mPressedDialpadKeys.remove(view); + return true; + } else if (id == R.id.digits) { + mDigits.setCursorVisible(true); + return false; + } + return false; + } + + /** + * Remove the digit just before the current position of the cursor, iff the following conditions + * are true: 1) The cursor is not positioned at index 0. 2) The digit before the current cursor + * position matches the current digit. + * + * @param digit to remove from the digits view. + */ + private void removePreviousDigitIfPossible(char digit) { + final int currentPosition = mDigits.getSelectionStart(); + if (currentPosition > 0 && digit == mDigits.getText().charAt(currentPosition - 1)) { + mDigits.setSelection(currentPosition); + mDigits.getText().delete(currentPosition - 1, currentPosition); + } + } + + public void callVoicemail() { + DialerUtils.startActivityWithErrorToast( + getActivity(), + new CallIntentBuilder(CallUtil.getVoicemailUri(), CallInitiationType.Type.DIALPAD).build()); + hideAndClearDialpad(false); + } + + private void hideAndClearDialpad(boolean animate) { + FragmentUtils.getParentUnsafe(this, DialpadListener.class).hideDialpadFragment(animate, true); + } + + /** + * In most cases, when the dial button is pressed, there is a number in digits area. Pack it in + * the intent, start the outgoing call broadcast as a separate task and finish this activity. + * + * <p>When there is no digit and the phone is CDMA and off hook, we're sending a blank flash for + * CDMA. CDMA networks use Flash messages when special processing needs to be done, mainly for + * 3-way or call waiting scenarios. Presumably, here we're in a special 3-way scenario where the + * network needs a blank flash before being able to add the new participant. (This is not the case + * with all 3-way calls, just certain CDMA infrastructures.) + * + * <p>Otherwise, there is no digit, display the last dialed number. Don't finish since the user + * may want to edit it. The user needs to press the dial button again, to dial it (general case + * described above). + */ + private void handleDialButtonPressed() { + if (isDigitsEmpty()) { // No number entered. + // No real call made, so treat it as a click + PerformanceReport.recordClick(UiAction.Type.PRESS_CALL_BUTTON_WITHOUT_CALLING); + handleDialButtonClickWithEmptyDigits(); + } else { + final String number = mDigits.getText().toString(); + + // "persist.radio.otaspdial" is a temporary hack needed for one carrier's automated + // test equipment. + // TODO: clean it up. + if (number != null + && !TextUtils.isEmpty(mProhibitedPhoneNumberRegexp) + && number.matches(mProhibitedPhoneNumberRegexp)) { + PerformanceReport.recordClick(UiAction.Type.PRESS_CALL_BUTTON_WITHOUT_CALLING); + LogUtil.i( + "DialpadFragment.handleDialButtonPressed", + "The phone number is prohibited explicitly by a rule."); + if (getActivity() != null) { + DialogFragment dialogFragment = + ErrorDialogFragment.newInstance(R.string.dialog_phone_call_prohibited_message); + dialogFragment.show(getFragmentManager(), "phone_prohibited_dialog"); + } + + // Clear the digits just in case. + clearDialpad(); + } else { + final Intent intent = + new CallIntentBuilder(number, CallInitiationType.Type.DIALPAD).build(); + DialerUtils.startActivityWithErrorToast(getActivity(), intent); + hideAndClearDialpad(false); + } + } + } + + public void clearDialpad() { + if (mDigits != null) { + mDigits.getText().clear(); + } + } + + private void handleDialButtonClickWithEmptyDigits() { + if (phoneIsCdma() && isPhoneInUse()) { + // TODO: Move this logic into services/Telephony + // + // This is really CDMA specific. On GSM is it possible + // to be off hook and wanted to add a 3rd party using + // the redial feature. + startActivity(newFlashIntent()); + } else { + if (!TextUtils.isEmpty(mLastNumberDialed)) { + // Dialpad will be filled with last called number, + // but we don't want to record it as user action + PerformanceReport.setIgnoreActionOnce(UiAction.Type.TEXT_CHANGE_WITH_INPUT); + + // Recall the last number dialed. + mDigits.setText(mLastNumberDialed); + + // ...and move the cursor to the end of the digits string, + // so you'll be able to delete digits using the Delete + // button (just as if you had typed the number manually.) + // + // Note we use mDigits.getText().length() here, not + // mLastNumberDialed.length(), since the EditText widget now + // contains a *formatted* version of mLastNumberDialed (due to + // mTextWatcher) and its length may have changed. + mDigits.setSelection(mDigits.getText().length()); + } else { + // There's no "last number dialed" or the + // background query is still running. There's + // nothing useful for the Dial button to do in + // this case. Note: with a soft dial button, this + // can never happens since the dial button is + // disabled under these conditons. + playTone(ToneGenerator.TONE_PROP_NACK); + } + } + } + + /** Plays the specified tone for TONE_LENGTH_MS milliseconds. */ + private void playTone(int tone) { + playTone(tone, TONE_LENGTH_MS); + } + + /** + * Play the specified tone for the specified milliseconds + * + * <p>The tone is played locally, using the audio stream for phone calls. Tones are played only if + * the "Audible touch tones" user preference is checked, and are NOT played if the device is in + * silent mode. + * + * <p>The tone length can be -1, meaning "keep playing the tone." If the caller does so, it should + * call stopTone() afterward. + * + * @param tone a tone code from {@link ToneGenerator} + * @param durationMs tone length. + */ + private void playTone(int tone, int durationMs) { + // if local tone playback is disabled, just return. + if (!mDTMFToneEnabled) { + return; + } + + // Also do nothing if the phone is in silent mode. + // We need to re-check the ringer mode for *every* playTone() + // call, rather than keeping a local flag that's updated in + // onResume(), since it's possible to toggle silent mode without + // leaving the current activity (via the ENDCALL-longpress menu.) + AudioManager audioManager = + (AudioManager) getActivity().getSystemService(Context.AUDIO_SERVICE); + int ringerMode = audioManager.getRingerMode(); + if ((ringerMode == AudioManager.RINGER_MODE_SILENT) + || (ringerMode == AudioManager.RINGER_MODE_VIBRATE)) { + return; + } + + synchronized (mToneGeneratorLock) { + if (mToneGenerator == null) { + LogUtil.w("DialpadFragment.playTone", "mToneGenerator == null, tone: " + tone); + return; + } + + // Start the new tone (will stop any playing tone) + mToneGenerator.startTone(tone, durationMs); + } + } + + /** Stop the tone if it is played. */ + private void stopTone() { + // if local tone playback is disabled, just return. + if (!mDTMFToneEnabled) { + return; + } + synchronized (mToneGeneratorLock) { + if (mToneGenerator == null) { + LogUtil.w("DialpadFragment.stopTone", "mToneGenerator == null"); + return; + } + mToneGenerator.stopTone(); + } + } + + /** + * Brings up the "dialpad chooser" UI in place of the usual Dialer elements (the textfield/button + * and the dialpad underneath). + * + * <p>We show this UI if the user brings up the Dialer while a call is already in progress, since + * there's a good chance we got here accidentally (and the user really wanted the in-call dialpad + * instead). So in this situation we display an intermediate UI that lets the user explicitly + * choose between the in-call dialpad ("Use touch tone keypad") and the regular Dialer ("Add + * call"). (Or, the option "Return to call in progress" just goes back to the in-call UI with no + * dialpad at all.) + * + * @param enabled If true, show the "dialpad chooser" instead of the regular Dialer UI + */ + private void showDialpadChooser(boolean enabled) { + if (getActivity() == null) { + return; + } + // Check if onCreateView() is already called by checking one of View objects. + if (!isLayoutReady()) { + return; + } + + if (enabled) { + LogUtil.i("DialpadFragment.showDialpadChooser", "Showing dialpad chooser!"); + if (mDialpadView != null) { + mDialpadView.setVisibility(View.GONE); + } + + if (mOverflowPopupMenu != null) { + mOverflowPopupMenu.dismiss(); + } + + mFloatingActionButtonController.setVisible(false); + mDialpadChooser.setVisibility(View.VISIBLE); + + // Instantiate the DialpadChooserAdapter and hook it up to the + // ListView. We do this only once. + if (mDialpadChooserAdapter == null) { + mDialpadChooserAdapter = new DialpadChooserAdapter(getActivity()); + } + mDialpadChooser.setAdapter(mDialpadChooserAdapter); + } else { + LogUtil.i("DialpadFragment.showDialpadChooser", "Displaying normal Dialer UI."); + if (mDialpadView != null) { + mDialpadView.setVisibility(View.VISIBLE); + } else { + mDigits.setVisibility(View.VISIBLE); + } + + // mFloatingActionButtonController must also be 'scaled in', in order to be visible after + // 'scaleOut()' hidden method. + if (!mFloatingActionButtonController.isVisible()) { + // Just call 'scaleIn()' method if the mFloatingActionButtonController was not already + // previously visible. + mFloatingActionButtonController.scaleIn(0); + } + mDialpadChooser.setVisibility(View.GONE); + } + } + + /** @return true if we're currently showing the "dialpad chooser" UI. */ + private boolean isDialpadChooserVisible() { + return mDialpadChooser.getVisibility() == View.VISIBLE; + } + + /** Handle clicks from the dialpad chooser. */ + @Override + public void onItemClick(AdapterView<?> parent, View v, int position, long id) { + DialpadChooserAdapter.ChoiceItem item = + (DialpadChooserAdapter.ChoiceItem) parent.getItemAtPosition(position); + int itemId = item.id; + if (itemId == DialpadChooserAdapter.DIALPAD_CHOICE_USE_DTMF_DIALPAD) { + // Fire off an intent to go back to the in-call UI + // with the dialpad visible. + returnToInCallScreen(true); + } else if (itemId == DialpadChooserAdapter.DIALPAD_CHOICE_RETURN_TO_CALL) { + // Fire off an intent to go back to the in-call UI + // (with the dialpad hidden). + returnToInCallScreen(false); + } else if (itemId == DialpadChooserAdapter.DIALPAD_CHOICE_ADD_NEW_CALL) { + // Ok, guess the user really did want to be here (in the + // regular Dialer) after all. Bring back the normal Dialer UI. + showDialpadChooser(false); + } else { + LogUtil.w("DialpadFragment.onItemClick", "Unexpected itemId: " + itemId); + } + } + + /** + * Returns to the in-call UI (where there's presumably a call in progress) in response to the user + * selecting "use touch tone keypad" or "return to call" from the dialpad chooser. + */ + private void returnToInCallScreen(boolean showDialpad) { + TelecomUtil.showInCallScreen(getActivity(), showDialpad); + + // Finally, finish() ourselves so that we don't stay on the + // activity stack. + // Note that we do this whether or not the showCallScreenWithDialpad() + // call above had any effect or not! (That call is a no-op if the + // phone is idle, which can happen if the current call ends while + // the dialpad chooser is up. In this case we can't show the + // InCallScreen, and there's no point staying here in the Dialer, + // so we just take the user back where he came from...) + getActivity().finish(); + } + + /** + * @return true if the phone is "in use", meaning that at least one line is active (ie. off hook + * or ringing or dialing, or on hold). + */ + private boolean isPhoneInUse() { + return getContext() != null && TelecomUtil.isInCall(getContext()); + } + + /** @return true if the phone is a CDMA phone type */ + private boolean phoneIsCdma() { + return getTelephonyManager().getPhoneType() == TelephonyManager.PHONE_TYPE_CDMA; + } + + @Override + public boolean onMenuItemClick(MenuItem item) { + int resId = item.getItemId(); + if (resId == R.id.menu_2s_pause) { + updateDialString(PAUSE); + return true; + } else if (resId == R.id.menu_add_wait) { + updateDialString(WAIT); + return true; + } else if (resId == R.id.menu_call_with_note) { + CallSubjectDialog.start(getActivity(), mDigits.getText().toString()); + hideAndClearDialpad(false); + return true; + } else { + return false; + } + } + + /** + * Updates the dial string (mDigits) after inserting a Pause character (,) or Wait character (;). + */ + private void updateDialString(char newDigit) { + if (newDigit != WAIT && newDigit != PAUSE) { + throw new IllegalArgumentException("Not expected for anything other than PAUSE & WAIT"); + } + + int selectionStart; + int selectionEnd; + + // SpannableStringBuilder editable_text = new SpannableStringBuilder(mDigits.getText()); + int anchor = mDigits.getSelectionStart(); + int point = mDigits.getSelectionEnd(); + + selectionStart = Math.min(anchor, point); + selectionEnd = Math.max(anchor, point); + + if (selectionStart == -1) { + selectionStart = selectionEnd = mDigits.length(); + } + + Editable digits = mDigits.getText(); + + if (canAddDigit(digits, selectionStart, selectionEnd, newDigit)) { + digits.replace(selectionStart, selectionEnd, Character.toString(newDigit)); + + if (selectionStart != selectionEnd) { + // Unselect: back to a regular cursor, just pass the character inserted. + mDigits.setSelection(selectionStart + 1); + } + } + } + + /** Update the enabledness of the "Dial" and "Backspace" buttons if applicable. */ + private void updateDeleteButtonEnabledState() { + if (getActivity() == null) { + return; + } + final boolean digitsNotEmpty = !isDigitsEmpty(); + mDelete.setEnabled(digitsNotEmpty); + } + + /** + * Handle transitions for the menu button depending on the state of the digits edit text. + * Transition out when going from digits to no digits and transition in when the first digit is + * pressed. + * + * @param transitionIn True if transitioning in, False if transitioning out + */ + private void updateMenuOverflowButton(boolean transitionIn) { + mOverflowMenuButton = mDialpadView.getOverflowMenuButton(); + if (transitionIn) { + AnimUtils.fadeIn(mOverflowMenuButton, AnimUtils.DEFAULT_DURATION); + } else { + AnimUtils.fadeOut(mOverflowMenuButton, AnimUtils.DEFAULT_DURATION); + } + } + + /** + * Check if voicemail is enabled/accessible. + * + * @return true if voicemail is enabled and accessible. Note that this can be false "temporarily" + * after the app boot. + */ + private boolean isVoicemailAvailable() { + try { + PhoneAccountHandle defaultUserSelectedAccount = + TelecomUtil.getDefaultOutgoingPhoneAccount(getActivity(), PhoneAccount.SCHEME_VOICEMAIL); + if (defaultUserSelectedAccount == null) { + // In a single-SIM phone, there is no default outgoing phone account selected by + // the user, so just call TelephonyManager#getVoicemailNumber directly. + return !TextUtils.isEmpty(getTelephonyManager().getVoiceMailNumber()); + } else { + return !TextUtils.isEmpty( + TelecomUtil.getVoicemailNumber(getActivity(), defaultUserSelectedAccount)); + } + } catch (SecurityException se) { + // Possibly no READ_PHONE_STATE privilege. + LogUtil.w( + "DialpadFragment.isVoicemailAvailable", + "SecurityException is thrown. Maybe privilege isn't sufficient."); + } + return false; + } + + /** @return true if the widget with the phone number digits is empty. */ + private boolean isDigitsEmpty() { + return mDigits.length() == 0; + } + + /** + * Starts the asyn query to get the last dialed/outgoing number. When the background query + * finishes, mLastNumberDialed is set to the last dialed number or an empty string if none exists + * yet. + */ + private void queryLastOutgoingCall() { + mLastNumberDialed = EMPTY_NUMBER; + if (!PermissionsUtil.hasCallLogReadPermissions(getContext())) { + return; + } + FragmentUtils.getParentUnsafe(this, DialpadListener.class) + .getLastOutgoingCall( + number -> { + // TODO: Filter out emergency numbers if the carrier does not want redial for these. + + // If the fragment has already been detached since the last time we called + // queryLastOutgoingCall in onResume there is no point doing anything here. + if (getActivity() == null) { + return; + } + mLastNumberDialed = number; + updateDeleteButtonEnabledState(); + }); + } + + private Intent newFlashIntent() { + Intent intent = new CallIntentBuilder(EMPTY_NUMBER, CallInitiationType.Type.DIALPAD).build(); + intent.putExtra(EXTRA_SEND_EMPTY_FLASH, true); + return intent; + } + + @Override + public void onHiddenChanged(boolean hidden) { + super.onHiddenChanged(hidden); + if (getActivity() == null || getView() == null) { + return; + } + final DialpadView dialpadView = getView().findViewById(R.id.dialpad_view); + if (!hidden && !isDialpadChooserVisible()) { + if (mAnimate) { + dialpadView.animateShow(); + } + mFloatingActionButtonController.setVisible(false); + mFloatingActionButtonController.scaleIn(mAnimate ? mDialpadSlideInDuration : 0); + FragmentUtils.getParentUnsafe(this, DialpadListener.class).onDialpadShown(); + mDigits.requestFocus(); + } + if (hidden) { + if (mAnimate) { + mFloatingActionButtonController.scaleOut(); + } else { + mFloatingActionButtonController.setVisible(false); + } + } + } + + public boolean getAnimate() { + return mAnimate; + } + + public void setAnimate(boolean value) { + mAnimate = value; + } + + public void setYFraction(float yFraction) { + ((DialpadSlidingRelativeLayout) getView()).setYFraction(yFraction); + } + + public int getDialpadHeight() { + if (mDialpadView == null) { + return 0; + } + return mDialpadView.getHeight(); + } + + public void process_quote_emergency_unquote(String query) { + if (PseudoEmergencyAnimator.PSEUDO_EMERGENCY_NUMBER.equals(query)) { + if (mPseudoEmergencyAnimator == null) { + mPseudoEmergencyAnimator = + new PseudoEmergencyAnimator( + new PseudoEmergencyAnimator.ViewProvider() { + @Override + public View getFab() { + return mFloatingActionButton; + } + + @Override + public Context getContext() { + return DialpadFragment.this.getContext(); + } + }); + } + mPseudoEmergencyAnimator.start(); + } else { + if (mPseudoEmergencyAnimator != null) { + mPseudoEmergencyAnimator.end(); + } + } + } + + public interface OnDialpadQueryChangedListener { + + void onDialpadQueryChanged(String query); + } + + public interface HostInterface { + + /** + * Notifies the parent activity that the space above the dialpad has been tapped with no query + * in the dialpad present. In most situations this will cause the dialpad to be dismissed, + * unless there happens to be content showing. + */ + boolean onDialpadSpacerTouchWithEmptyQuery(); + } + + /** + * LinearLayout with getter and setter methods for the translationY property using floats, for + * animation purposes. + */ + public static class DialpadSlidingRelativeLayout extends RelativeLayout { + + public DialpadSlidingRelativeLayout(Context context) { + super(context); + } + + public DialpadSlidingRelativeLayout(Context context, AttributeSet attrs) { + super(context, attrs); + } + + public DialpadSlidingRelativeLayout(Context context, AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + } + + @UsedByReflection(value = "dialpad_fragment.xml") + public float getYFraction() { + final int height = getHeight(); + if (height == 0) { + return 0; + } + return getTranslationY() / height; + } + + @UsedByReflection(value = "dialpad_fragment.xml") + public void setYFraction(float yFraction) { + setTranslationY(yFraction * getHeight()); + } + } + + public static class ErrorDialogFragment extends DialogFragment { + + private static final String ARG_TITLE_RES_ID = "argTitleResId"; + private static final String ARG_MESSAGE_RES_ID = "argMessageResId"; + private int mTitleResId; + private int mMessageResId; + + public static ErrorDialogFragment newInstance(int messageResId) { + return newInstance(0, messageResId); + } + + public static ErrorDialogFragment newInstance(int titleResId, int messageResId) { + final ErrorDialogFragment fragment = new ErrorDialogFragment(); + final Bundle args = new Bundle(); + args.putInt(ARG_TITLE_RES_ID, titleResId); + args.putInt(ARG_MESSAGE_RES_ID, messageResId); + fragment.setArguments(args); + return fragment; + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + mTitleResId = getArguments().getInt(ARG_TITLE_RES_ID); + mMessageResId = getArguments().getInt(ARG_MESSAGE_RES_ID); + } + + @Override + public Dialog onCreateDialog(Bundle savedInstanceState) { + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + if (mTitleResId != 0) { + builder.setTitle(mTitleResId); + } + if (mMessageResId != 0) { + builder.setMessage(mMessageResId); + } + builder.setPositiveButton(android.R.string.ok, (dialog, which) -> dismiss()); + return builder.create(); + } + } + + /** + * Simple list adapter, binding to an icon + text label for each item in the "dialpad chooser" + * list. + */ + private static class DialpadChooserAdapter extends BaseAdapter { + + // IDs for the possible "choices": + static final int DIALPAD_CHOICE_USE_DTMF_DIALPAD = 101; + static final int DIALPAD_CHOICE_RETURN_TO_CALL = 102; + static final int DIALPAD_CHOICE_ADD_NEW_CALL = 103; + private static final int NUM_ITEMS = 3; + private LayoutInflater mInflater; + private ChoiceItem[] mChoiceItems = new ChoiceItem[NUM_ITEMS]; + + DialpadChooserAdapter(Context context) { + // Cache the LayoutInflate to avoid asking for a new one each time. + mInflater = LayoutInflater.from(context); + + // Initialize the possible choices. + // TODO: could this be specified entirely in XML? + + // - "Use touch tone keypad" + mChoiceItems[0] = + new ChoiceItem( + context.getString(R.string.dialer_useDtmfDialpad), + BitmapFactory.decodeResource( + context.getResources(), R.drawable.ic_dialer_fork_tt_keypad), + DIALPAD_CHOICE_USE_DTMF_DIALPAD); + + // - "Return to call in progress" + mChoiceItems[1] = + new ChoiceItem( + context.getString(R.string.dialer_returnToInCallScreen), + BitmapFactory.decodeResource( + context.getResources(), R.drawable.ic_dialer_fork_current_call), + DIALPAD_CHOICE_RETURN_TO_CALL); + + // - "Add call" + mChoiceItems[2] = + new ChoiceItem( + context.getString(R.string.dialer_addAnotherCall), + BitmapFactory.decodeResource( + context.getResources(), R.drawable.ic_dialer_fork_add_call), + DIALPAD_CHOICE_ADD_NEW_CALL); + } + + @Override + public int getCount() { + return NUM_ITEMS; + } + + /** Return the ChoiceItem for a given position. */ + @Override + public Object getItem(int position) { + return mChoiceItems[position]; + } + + /** Return a unique ID for each possible choice. */ + @Override + public long getItemId(int position) { + return position; + } + + /** Make a view for each row. */ + @Override + public View getView(int position, View convertView, ViewGroup parent) { + // When convertView is non-null, we can reuse it (there's no need + // to reinflate it.) + if (convertView == null) { + convertView = mInflater.inflate(R.layout.dialpad_chooser_list_item, null); + } + + TextView text = convertView.findViewById(R.id.text); + text.setText(mChoiceItems[position].text); + + ImageView icon = convertView.findViewById(R.id.icon); + icon.setImageBitmap(mChoiceItems[position].icon); + + return convertView; + } + + // Simple struct for a single "choice" item. + static class ChoiceItem { + + String text; + Bitmap icon; + int id; + + ChoiceItem(String s, Bitmap b, int i) { + text = s; + icon = b; + id = i; + } + } + } + + private class CallStateReceiver extends BroadcastReceiver { + + /** + * Receive call state changes so that we can take down the "dialpad chooser" if the phone + * becomes idle while the chooser UI is visible. + */ + @Override + public void onReceive(Context context, Intent intent) { + String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE); + if ((TextUtils.equals(state, TelephonyManager.EXTRA_STATE_IDLE) + || TextUtils.equals(state, TelephonyManager.EXTRA_STATE_OFFHOOK)) + && isDialpadChooserVisible()) { + // Note there's a race condition in the UI here: the + // dialpad chooser could conceivably disappear (on its + // own) at the exact moment the user was trying to select + // one of the choices, which would be confusing. (But at + // least that's better than leaving the dialpad chooser + // onscreen, but useless...) + showDialpadChooser(false); + } + } + } + + /** Listener for dialpad's parent. */ + public interface DialpadListener { + void getLastOutgoingCall(LastOutgoingCallCallback callback); + + void onDialpadShown(); + + void hideDialpadFragment(boolean animate, boolean value); + } + + /** Callback for async lookup of the last number dialed. */ + public interface LastOutgoingCallCallback { + + void lastOutgoingCall(String number); + } + + /** + * Input: the ISO 3166-1 two letters country code of the country the user is in + * + * <p>Output: PhoneNumberFormattingTextWatcher. Note: It is unusual to return a non-data value + * from a worker, but it is a limitation in libphonenumber API that the watcher cannot be + * initialized on the main thread. + */ + private static class InitPhoneNumberFormattingTextWatcherWorker + implements Worker<String, PhoneNumberFormattingTextWatcher> { + + @Nullable + @Override + public PhoneNumberFormattingTextWatcher doInBackground(@Nullable String countryCode) { + return new PhoneNumberFormattingTextWatcher(countryCode); + } + } +} diff --git a/java/com/android/dialer/dialpadview/DialpadView.java b/java/com/android/dialer/dialpadview/DialpadView.java index 4a9b500b7..0c53273a4 100644 --- a/java/com/android/dialer/dialpadview/DialpadView.java +++ b/java/com/android/dialer/dialpadview/DialpadView.java @@ -29,7 +29,6 @@ import android.text.Spannable; import android.text.TextUtils; import android.text.style.TtsSpan; import android.util.AttributeSet; -import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; @@ -40,6 +39,8 @@ import android.widget.ImageButton; import android.widget.LinearLayout; import android.widget.TextView; import com.android.dialer.animation.AnimUtils; +import com.android.dialer.common.LogUtil; +import com.android.dialer.compat.CompatUtils; import java.text.DecimalFormat; import java.text.NumberFormat; import java.util.Locale; @@ -153,7 +154,7 @@ public class DialpadView extends LinearLayout { // We translate dialpad numbers only for "fa" and not any other locale // ("ar" anybody ?). if ("fa".equals(currentLocale.getLanguage())) { - nf = DecimalFormat.getInstance(resources.getConfiguration().locale); + nf = DecimalFormat.getInstance(CompatUtils.getLocale(getContext())); } else { nf = DecimalFormat.getInstance(Locale.ENGLISH); } @@ -395,7 +396,7 @@ public class DialpadView extends LinearLayout { } } - Log.wtf(TAG, "Attempted to get animation delay for invalid key button id."); + LogUtil.e(TAG, "Attempted to get animation delay for invalid key button id."); return 0; } @@ -458,7 +459,7 @@ public class DialpadView extends LinearLayout { } } - Log.wtf(TAG, "Attempted to get animation duration for invalid key button id."); + LogUtil.e(TAG, "Attempted to get animation duration for invalid key button id."); return 0; } } diff --git a/java/com/android/dialer/dialpadview/PseudoEmergencyAnimator.java b/java/com/android/dialer/dialpadview/PseudoEmergencyAnimator.java new file mode 100644 index 000000000..16bdd24c1 --- /dev/null +++ b/java/com/android/dialer/dialpadview/PseudoEmergencyAnimator.java @@ -0,0 +1,142 @@ +/* + * Copyright (C) 2015 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.dialer.dialpadview; + +import android.animation.Animator; +import android.animation.Animator.AnimatorListener; +import android.animation.ArgbEvaluator; +import android.animation.ValueAnimator; +import android.content.Context; +import android.graphics.Color; +import android.graphics.ColorFilter; +import android.graphics.LightingColorFilter; +import android.os.Handler; +import android.os.Vibrator; +import android.view.View; + +/** Animates the dial button on "emergency" phone numbers. */ +public class PseudoEmergencyAnimator { + + static final String PSEUDO_EMERGENCY_NUMBER = "01189998819991197253"; + private static final int VIBRATE_LENGTH_MILLIS = 200; + private static final int ITERATION_LENGTH_MILLIS = 1000; + private static final int ANIMATION_ITERATION_COUNT = 6; + private ViewProvider mViewProvider; + private ValueAnimator mPseudoEmergencyColorAnimator; + + PseudoEmergencyAnimator(ViewProvider viewProvider) { + mViewProvider = viewProvider; + } + + public void destroy() { + end(); + mViewProvider = null; + } + + public void start() { + if (mPseudoEmergencyColorAnimator == null) { + Integer colorFrom = Color.BLUE; + Integer colorTo = Color.RED; + mPseudoEmergencyColorAnimator = + ValueAnimator.ofObject(new ArgbEvaluator(), colorFrom, colorTo); + + mPseudoEmergencyColorAnimator.addUpdateListener( + animator -> { + try { + int color = (int) animator.getAnimatedValue(); + ColorFilter colorFilter = new LightingColorFilter(Color.BLACK, color); + + if (mViewProvider.getFab() != null) { + mViewProvider.getFab().getBackground().setColorFilter(colorFilter); + } + } catch (Exception e) { + animator.cancel(); + } + }); + + mPseudoEmergencyColorAnimator.addListener( + new AnimatorListener() { + @Override + public void onAnimationCancel(Animator animation) {} + + @Override + public void onAnimationRepeat(Animator animation) { + try { + vibrate(VIBRATE_LENGTH_MILLIS); + } catch (Exception e) { + animation.cancel(); + } + } + + @Override + public void onAnimationStart(Animator animation) {} + + @Override + public void onAnimationEnd(Animator animation) { + try { + if (mViewProvider.getFab() != null) { + mViewProvider.getFab().getBackground().clearColorFilter(); + } + + new Handler() + .postDelayed( + () -> { + try { + vibrate(VIBRATE_LENGTH_MILLIS); + } catch (Exception e) { + // ignored + } + }, + ITERATION_LENGTH_MILLIS); + } catch (Exception e) { + animation.cancel(); + } + } + }); + + mPseudoEmergencyColorAnimator.setDuration(VIBRATE_LENGTH_MILLIS); + mPseudoEmergencyColorAnimator.setRepeatMode(ValueAnimator.REVERSE); + mPseudoEmergencyColorAnimator.setRepeatCount(ANIMATION_ITERATION_COUNT); + } + if (!mPseudoEmergencyColorAnimator.isStarted()) { + mPseudoEmergencyColorAnimator.start(); + } + } + + public void end() { + if (mPseudoEmergencyColorAnimator != null && mPseudoEmergencyColorAnimator.isStarted()) { + mPseudoEmergencyColorAnimator.end(); + } + } + + private void vibrate(long milliseconds) { + Context context = mViewProvider.getContext(); + if (context != null) { + Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE); + if (vibrator != null) { + vibrator.vibrate(milliseconds); + } + } + } + + interface ViewProvider { + + View getFab(); + + Context getContext(); + } +} diff --git a/java/com/android/dialer/dialpadview/SmartDialCursorLoader.java b/java/com/android/dialer/dialpadview/SmartDialCursorLoader.java new file mode 100644 index 000000000..271535fce --- /dev/null +++ b/java/com/android/dialer/dialpadview/SmartDialCursorLoader.java @@ -0,0 +1,183 @@ +/* + * Copyright (C) 2013 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.dialer.dialpadview; + +import android.content.AsyncTaskLoader; +import android.content.Context; +import android.database.Cursor; +import android.database.MatrixCursor; +import com.android.contacts.common.list.PhoneNumberListAdapter.PhoneQuery; +import com.android.dialer.common.LogUtil; +import com.android.dialer.database.Database; +import com.android.dialer.database.DialerDatabaseHelper; +import com.android.dialer.database.DialerDatabaseHelper.ContactNumber; +import com.android.dialer.smartdial.SmartDialNameMatcher; +import com.android.dialer.smartdial.SmartDialPrefix; +import com.android.dialer.util.PermissionsUtil; +import java.util.ArrayList; + +/** Implements a Loader<Cursor> class to asynchronously load SmartDial search results. */ +public class SmartDialCursorLoader extends AsyncTaskLoader<Cursor> { + + private static final String TAG = "SmartDialCursorLoader"; + private static final boolean DEBUG = false; + + private final Context mContext; + + private Cursor mCursor; + + private String mQuery; + private SmartDialNameMatcher mNameMatcher; + + private boolean mShowEmptyListForNullQuery = true; + + public SmartDialCursorLoader(Context context) { + super(context); + mContext = context; + } + + /** + * Configures the query string to be used to find SmartDial matches. + * + * @param query The query string user typed. + */ + public void configureQuery(String query) { + if (DEBUG) { + LogUtil.v(TAG, "Configure new query to be " + query); + } + mQuery = SmartDialNameMatcher.normalizeNumber(query, SmartDialPrefix.getMap()); + + /** Constructs a name matcher object for matching names. */ + mNameMatcher = new SmartDialNameMatcher(mQuery, SmartDialPrefix.getMap()); + mNameMatcher.setShouldMatchEmptyQuery(!mShowEmptyListForNullQuery); + } + + /** + * Queries the SmartDial database and loads results in background. + * + * @return Cursor of contacts that matches the SmartDial query. + */ + @Override + public Cursor loadInBackground() { + if (DEBUG) { + LogUtil.v(TAG, "Load in background " + mQuery); + } + + if (!PermissionsUtil.hasContactsReadPermissions(mContext)) { + return new MatrixCursor(PhoneQuery.PROJECTION_PRIMARY); + } + + /** Loads results from the database helper. */ + final DialerDatabaseHelper dialerDatabaseHelper = + Database.get(mContext).getDatabaseHelper(mContext); + final ArrayList<ContactNumber> allMatches = + dialerDatabaseHelper.getLooseMatches(mQuery, mNameMatcher); + + if (DEBUG) { + LogUtil.v(TAG, "Loaded matches " + allMatches.size()); + } + + /** Constructs a cursor for the returned array of results. */ + final MatrixCursor cursor = new MatrixCursor(PhoneQuery.PROJECTION_PRIMARY); + Object[] row = new Object[PhoneQuery.PROJECTION_PRIMARY.length]; + for (ContactNumber contact : allMatches) { + row[PhoneQuery.PHONE_ID] = contact.dataId; + row[PhoneQuery.PHONE_NUMBER] = contact.phoneNumber; + row[PhoneQuery.CONTACT_ID] = contact.id; + row[PhoneQuery.LOOKUP_KEY] = contact.lookupKey; + row[PhoneQuery.PHOTO_ID] = contact.photoId; + row[PhoneQuery.DISPLAY_NAME] = contact.displayName; + row[PhoneQuery.CARRIER_PRESENCE] = contact.carrierPresence; + cursor.addRow(row); + } + return cursor; + } + + @Override + public void deliverResult(Cursor cursor) { + if (isReset()) { + /** The Loader has been reset; ignore the result and invalidate the data. */ + releaseResources(cursor); + return; + } + + /** Hold a reference to the old data so it doesn't get garbage collected. */ + Cursor oldCursor = mCursor; + mCursor = cursor; + + if (isStarted()) { + /** If the Loader is in a started state, deliver the results to the client. */ + super.deliverResult(cursor); + } + + /** Invalidate the old data as we don't need it any more. */ + if (oldCursor != null && oldCursor != cursor) { + releaseResources(oldCursor); + } + } + + @Override + protected void onStartLoading() { + if (mCursor != null) { + /** Deliver any previously loaded data immediately. */ + deliverResult(mCursor); + } + if (mCursor == null) { + /** Force loads every time as our results change with queries. */ + forceLoad(); + } + } + + @Override + protected void onStopLoading() { + /** The Loader is in a stopped state, so we should attempt to cancel the current load. */ + cancelLoad(); + } + + @Override + protected void onReset() { + /** Ensure the loader has been stopped. */ + onStopLoading(); + + /** Release all previously saved query results. */ + if (mCursor != null) { + releaseResources(mCursor); + mCursor = null; + } + } + + @Override + public void onCanceled(Cursor cursor) { + super.onCanceled(cursor); + + /** The load has been canceled, so we should release the resources associated with 'data'. */ + releaseResources(cursor); + } + + private void releaseResources(Cursor cursor) { + if (cursor != null) { + cursor.close(); + } + } + + public void setShowEmptyListForNullQuery(boolean show) { + mShowEmptyListForNullQuery = show; + if (mNameMatcher != null) { + mNameMatcher.setShouldMatchEmptyQuery(!show); + } + } +} diff --git a/java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java b/java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java new file mode 100644 index 000000000..7ff0d084a --- /dev/null +++ b/java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java @@ -0,0 +1,497 @@ +/* + * Copyright (C) 2006 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.dialer.dialpadview; + +import android.Manifest; +import android.app.Activity; +import android.app.AlertDialog; +import android.app.DialogFragment; +import android.app.KeyguardManager; +import android.app.ProgressDialog; +import android.content.ActivityNotFoundException; +import android.content.ContentResolver; +import android.content.Context; +import android.content.DialogInterface; +import android.content.Intent; +import android.database.Cursor; +import android.net.Uri; +import android.provider.Settings; +import android.support.annotation.Nullable; +import android.telecom.PhoneAccount; +import android.telecom.PhoneAccountHandle; +import android.telephony.PhoneNumberUtils; +import android.telephony.TelephonyManager; +import android.text.TextUtils; +import android.view.WindowManager; +import android.widget.EditText; +import android.widget.Toast; +import com.android.common.io.MoreCloseables; +import com.android.contacts.common.database.NoNullCursorAsyncQueryHandler; +import com.android.contacts.common.util.ContactDisplayUtils; +import com.android.contacts.common.widget.SelectPhoneAccountDialogFragment; +import com.android.contacts.common.widget.SelectPhoneAccountDialogFragment.SelectPhoneAccountListener; +import com.android.dialer.calllogutils.PhoneAccountUtils; +import com.android.dialer.common.Assert; +import com.android.dialer.common.LogUtil; +import com.android.dialer.compat.telephony.TelephonyManagerCompat; +import com.android.dialer.oem.MotorolaUtils; +import com.android.dialer.telecom.TelecomUtil; +import com.android.dialer.util.PermissionsUtil; +import java.util.ArrayList; +import java.util.List; + +/** + * Helper class to listen for some magic character sequences that are handled specially by the + * dialer. + * + * <p>Note the Phone app also handles these sequences too (in a couple of relatively obscure places + * in the UI), so there's a separate version of this class under apps/Phone. + * + * <p>TODO: there's lots of duplicated code between this class and the corresponding class under + * apps/Phone. Let's figure out a way to unify these two classes (in the framework? in a common + * shared library?) + */ +public class SpecialCharSequenceMgr { + + private static final String TAG = "SpecialCharSequenceMgr"; + + private static final String TAG_SELECT_ACCT_FRAGMENT = "tag_select_acct_fragment"; + + private static final String MMI_IMEI_DISPLAY = "*#06#"; + private static final String MMI_REGULATORY_INFO_DISPLAY = "*#07#"; + /** ***** This code is used to handle SIM Contact queries ***** */ + private static final String ADN_PHONE_NUMBER_COLUMN_NAME = "number"; + + private static final String ADN_NAME_COLUMN_NAME = "name"; + private static final int ADN_QUERY_TOKEN = -1; + /** + * Remembers the previous {@link QueryHandler} and cancel the operation when needed, to prevent + * possible crash. + * + * <p>QueryHandler may call {@link ProgressDialog#dismiss()} when the screen is already gone, + * which will cause the app crash. This variable enables the class to prevent the crash on {@link + * #cleanup()}. + * + * <p>TODO: Remove this and replace it (and {@link #cleanup()}) with better implementation. One + * complication is that we have SpecialCharSequenceMgr in Phone package too, which has *slightly* + * different implementation. Note that Phone package doesn't have this problem, so the class on + * Phone side doesn't have this functionality. Fundamental fix would be to have one shared + * implementation and resolve this corner case more gracefully. + */ + private static QueryHandler sPreviousAdnQueryHandler; + + /** This class is never instantiated. */ + private SpecialCharSequenceMgr() {} + + public static boolean handleChars(Context context, String input, EditText textField) { + // get rid of the separators so that the string gets parsed correctly + String dialString = PhoneNumberUtils.stripSeparators(input); + + if (handleDeviceIdDisplay(context, dialString) + || handleRegulatoryInfoDisplay(context, dialString) + || handlePinEntry(context, dialString) + || handleAdnEntry(context, dialString, textField) + || handleSecretCode(context, dialString)) { + return true; + } + + if (MotorolaUtils.handleSpecialCharSequence(context, input)) { + return true; + } + + return false; + } + + /** + * Cleanup everything around this class. Must be run inside the main thread. + * + * <p>This should be called when the screen becomes background. + */ + public static void cleanup() { + Assert.isMainThread(); + + if (sPreviousAdnQueryHandler != null) { + sPreviousAdnQueryHandler.cancel(); + sPreviousAdnQueryHandler = null; + } + } + + /** + * Handles secret codes to launch arbitrary activities in the form of *#*#<code>#*#*. + * + * @param context the context to use + * @param input the text to check for a secret code in + * @return true if a secret code was encountered and handled + */ + static boolean handleSecretCode(Context context, String input) { + // Secret codes are accessed by dialing *#*#<code>#*#* + + int len = input.length(); + if (len <= 8 || !input.startsWith("*#*#") || !input.endsWith("#*#*")) { + return false; + } + String secretCode = input.substring(4, len - 4); + TelephonyManagerCompat.handleSecretCode(context, secretCode); + return true; + } + + /** + * Handle ADN requests by filling in the SIM contact number into the requested EditText. + * + * <p>This code works alongside the Asynchronous query handler {@link QueryHandler} and query + * cancel handler implemented in {@link SimContactQueryCookie}. + */ + static boolean handleAdnEntry(Context context, String input, EditText textField) { + /* ADN entries are of the form "N(N)(N)#" */ + TelephonyManager telephonyManager = + (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); + if (telephonyManager == null + || telephonyManager.getPhoneType() != TelephonyManager.PHONE_TYPE_GSM) { + return false; + } + + // if the phone is keyguard-restricted, then just ignore this + // input. We want to make sure that sim card contacts are NOT + // exposed unless the phone is unlocked, and this code can be + // accessed from the emergency dialer. + KeyguardManager keyguardManager = + (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE); + if (keyguardManager.inKeyguardRestrictedInputMode()) { + return false; + } + + int len = input.length(); + if ((len > 1) && (len < 5) && (input.endsWith("#"))) { + try { + // get the ordinal number of the sim contact + final int index = Integer.parseInt(input.substring(0, len - 1)); + + // The original code that navigated to a SIM Contacts list view did not + // highlight the requested contact correctly, a requirement for PTCRB + // certification. This behaviour is consistent with the UI paradigm + // for touch-enabled lists, so it does not make sense to try to work + // around it. Instead we fill in the the requested phone number into + // the dialer text field. + + // create the async query handler + final QueryHandler handler = new QueryHandler(context.getContentResolver()); + + // create the cookie object + final SimContactQueryCookie sc = + new SimContactQueryCookie(index - 1, handler, ADN_QUERY_TOKEN); + + // setup the cookie fields + sc.contactNum = index - 1; + sc.setTextField(textField); + + // create the progress dialog + sc.progressDialog = new ProgressDialog(context); + sc.progressDialog.setTitle(R.string.simContacts_title); + sc.progressDialog.setMessage(context.getText(R.string.simContacts_emptyLoading)); + sc.progressDialog.setIndeterminate(true); + sc.progressDialog.setCancelable(true); + sc.progressDialog.setOnCancelListener(sc); + sc.progressDialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND); + + List<PhoneAccountHandle> subscriptionAccountHandles = + PhoneAccountUtils.getSubscriptionPhoneAccounts(context); + Context applicationContext = context.getApplicationContext(); + boolean hasUserSelectedDefault = + subscriptionAccountHandles.contains( + TelecomUtil.getDefaultOutgoingPhoneAccount( + applicationContext, PhoneAccount.SCHEME_TEL)); + + if (subscriptionAccountHandles.size() <= 1 || hasUserSelectedDefault) { + Uri uri = TelecomUtil.getAdnUriForPhoneAccount(applicationContext, null); + handleAdnQuery(handler, sc, uri); + } else { + SelectPhoneAccountListener callback = + new HandleAdnEntryAccountSelectedCallback(applicationContext, handler, sc); + + DialogFragment dialogFragment = + SelectPhoneAccountDialogFragment.newInstance( + subscriptionAccountHandles, callback, null); + dialogFragment.show(((Activity) context).getFragmentManager(), TAG_SELECT_ACCT_FRAGMENT); + } + + return true; + } catch (NumberFormatException ex) { + // Ignore + } + } + return false; + } + + private static void handleAdnQuery(QueryHandler handler, SimContactQueryCookie cookie, Uri uri) { + if (handler == null || cookie == null || uri == null) { + LogUtil.w("SpecialCharSequenceMgr.handleAdnQuery", "queryAdn parameters incorrect"); + return; + } + + // display the progress dialog + cookie.progressDialog.show(); + + // run the query. + handler.startQuery( + ADN_QUERY_TOKEN, + cookie, + uri, + new String[] {ADN_PHONE_NUMBER_COLUMN_NAME}, + null, + null, + null); + + if (sPreviousAdnQueryHandler != null) { + // It is harmless to call cancel() even after the handler's gone. + sPreviousAdnQueryHandler.cancel(); + } + sPreviousAdnQueryHandler = handler; + } + + static boolean handlePinEntry(final Context context, final String input) { + if ((input.startsWith("**04") || input.startsWith("**05")) && input.endsWith("#")) { + List<PhoneAccountHandle> subscriptionAccountHandles = + PhoneAccountUtils.getSubscriptionPhoneAccounts(context); + boolean hasUserSelectedDefault = + subscriptionAccountHandles.contains( + TelecomUtil.getDefaultOutgoingPhoneAccount(context, PhoneAccount.SCHEME_TEL)); + + if (subscriptionAccountHandles.size() <= 1 || hasUserSelectedDefault) { + // Don't bring up the dialog for single-SIM or if the default outgoing account is + // a subscription account. + return TelecomUtil.handleMmi(context, input, null); + } else { + SelectPhoneAccountListener listener = new HandleMmiAccountSelectedCallback(context, input); + + DialogFragment dialogFragment = + SelectPhoneAccountDialogFragment.newInstance( + subscriptionAccountHandles, listener, null); + dialogFragment.show(((Activity) context).getFragmentManager(), TAG_SELECT_ACCT_FRAGMENT); + } + return true; + } + return false; + } + + // TODO: Use TelephonyCapabilities.getDeviceIdLabel() to get the device id label instead of a + // hard-coded string. + static boolean handleDeviceIdDisplay(Context context, String input) { + if (!PermissionsUtil.hasPermission(context, Manifest.permission.READ_PHONE_STATE)) { + return false; + } + TelephonyManager telephonyManager = + (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); + + if (telephonyManager != null && input.equals(MMI_IMEI_DISPLAY)) { + int labelResId = + (telephonyManager.getPhoneType() == TelephonyManager.PHONE_TYPE_GSM) + ? R.string.imei + : R.string.meid; + + List<String> deviceIds = new ArrayList<String>(); + if (TelephonyManagerCompat.getPhoneCount(telephonyManager) > 1) { + for (int slot = 0; slot < telephonyManager.getPhoneCount(); slot++) { + String deviceId = telephonyManager.getDeviceId(slot); + if (!TextUtils.isEmpty(deviceId)) { + deviceIds.add(deviceId); + } + } + } else { + deviceIds.add(telephonyManager.getDeviceId()); + } + + new AlertDialog.Builder(context) + .setTitle(labelResId) + .setItems(deviceIds.toArray(new String[deviceIds.size()]), null) + .setPositiveButton(android.R.string.ok, null) + .setCancelable(false) + .show(); + return true; + } + return false; + } + + private static boolean handleRegulatoryInfoDisplay(Context context, String input) { + if (input.equals(MMI_REGULATORY_INFO_DISPLAY)) { + LogUtil.i( + "SpecialCharSequenceMgr.handleRegulatoryInfoDisplay", "sending intent to settings app"); + Intent showRegInfoIntent = new Intent(Settings.ACTION_SHOW_REGULATORY_INFO); + try { + context.startActivity(showRegInfoIntent); + } catch (ActivityNotFoundException e) { + LogUtil.e( + "SpecialCharSequenceMgr.handleRegulatoryInfoDisplay", "startActivity() failed: ", e); + } + return true; + } + return false; + } + + public static class HandleAdnEntryAccountSelectedCallback extends SelectPhoneAccountListener { + + private final Context mContext; + private final QueryHandler mQueryHandler; + private final SimContactQueryCookie mCookie; + + public HandleAdnEntryAccountSelectedCallback( + Context context, QueryHandler queryHandler, SimContactQueryCookie cookie) { + mContext = context; + mQueryHandler = queryHandler; + mCookie = cookie; + } + + @Override + public void onPhoneAccountSelected( + PhoneAccountHandle selectedAccountHandle, boolean setDefault, @Nullable String callId) { + Uri uri = TelecomUtil.getAdnUriForPhoneAccount(mContext, selectedAccountHandle); + handleAdnQuery(mQueryHandler, mCookie, uri); + // TODO: Show error dialog if result isn't valid. + } + } + + public static class HandleMmiAccountSelectedCallback extends SelectPhoneAccountListener { + + private final Context mContext; + private final String mInput; + + public HandleMmiAccountSelectedCallback(Context context, String input) { + mContext = context.getApplicationContext(); + mInput = input; + } + + @Override + public void onPhoneAccountSelected( + PhoneAccountHandle selectedAccountHandle, boolean setDefault, @Nullable String callId) { + TelecomUtil.handleMmi(mContext, mInput, selectedAccountHandle); + } + } + + /** + * Cookie object that contains everything we need to communicate to the handler's onQuery + * Complete, as well as what we need in order to cancel the query (if requested). + * + * <p>Note, access to the textField field is going to be synchronized, because the user can + * request a cancel at any time through the UI. + */ + private static class SimContactQueryCookie implements DialogInterface.OnCancelListener { + + public ProgressDialog progressDialog; + public int contactNum; + + // Used to identify the query request. + private int mToken; + private QueryHandler mHandler; + + // The text field we're going to update + private EditText textField; + + public SimContactQueryCookie(int number, QueryHandler handler, int token) { + contactNum = number; + mHandler = handler; + mToken = token; + } + + /** Synchronized getter for the EditText. */ + public synchronized EditText getTextField() { + return textField; + } + + /** Synchronized setter for the EditText. */ + public synchronized void setTextField(EditText text) { + textField = text; + } + + /** + * Cancel the ADN query by stopping the operation and signaling the cookie that a cancel request + * is made. + */ + @Override + public synchronized void onCancel(DialogInterface dialog) { + // close the progress dialog + if (progressDialog != null) { + progressDialog.dismiss(); + } + + // setting the textfield to null ensures that the UI does NOT get + // updated. + textField = null; + + // Cancel the operation if possible. + mHandler.cancelOperation(mToken); + } + } + + /** + * Asynchronous query handler that services requests to look up ADNs + * + * <p>Queries originate from {@link #handleAdnEntry}. + */ + private static class QueryHandler extends NoNullCursorAsyncQueryHandler { + + private boolean mCanceled; + + public QueryHandler(ContentResolver cr) { + super(cr); + } + + /** Override basic onQueryComplete to fill in the textfield when we're handed the ADN cursor. */ + @Override + protected void onNotNullableQueryComplete(int token, Object cookie, Cursor c) { + try { + sPreviousAdnQueryHandler = null; + if (mCanceled) { + return; + } + + SimContactQueryCookie sc = (SimContactQueryCookie) cookie; + + // close the progress dialog. + sc.progressDialog.dismiss(); + + // get the EditText to update or see if the request was cancelled. + EditText text = sc.getTextField(); + + // if the TextView is valid, and the cursor is valid and positionable on the + // Nth number, then we update the text field and display a toast indicating the + // caller name. + if ((c != null) && (text != null) && (c.moveToPosition(sc.contactNum))) { + String name = c.getString(c.getColumnIndexOrThrow(ADN_NAME_COLUMN_NAME)); + String number = c.getString(c.getColumnIndexOrThrow(ADN_PHONE_NUMBER_COLUMN_NAME)); + + // fill the text in. + text.getText().replace(0, 0, number); + + // display the name as a toast + Context context = sc.progressDialog.getContext(); + CharSequence msg = + ContactDisplayUtils.getTtsSpannedPhoneNumber( + context.getResources(), R.string.menu_callNumber, name); + Toast.makeText(context, msg, Toast.LENGTH_SHORT).show(); + } + } finally { + MoreCloseables.closeQuietly(c); + } + } + + public void cancel() { + mCanceled = true; + // Ask AsyncQueryHandler to cancel the whole request. This will fail when the query is + // already started. + cancelOperation(ADN_QUERY_TOKEN); + } + } +} diff --git a/java/com/android/dialer/dialpadview/UnicodeDialerKeyListener.java b/java/com/android/dialer/dialpadview/UnicodeDialerKeyListener.java new file mode 100644 index 000000000..e9201c0c2 --- /dev/null +++ b/java/com/android/dialer/dialpadview/UnicodeDialerKeyListener.java @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2012 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.dialer.dialpadview; + +import android.telephony.PhoneNumberUtils; +import android.text.Spanned; +import android.text.method.DialerKeyListener; + +/** + * {@link DialerKeyListener} with Unicode support. Converts any Unicode(e.g. Arabic) characters that + * represent digits into digits before filtering the results so that we can support pasted digits + * from Unicode languages. + */ +public class UnicodeDialerKeyListener extends DialerKeyListener { + + public static final UnicodeDialerKeyListener INSTANCE = new UnicodeDialerKeyListener(); + + @Override + public CharSequence filter( + CharSequence source, int start, int end, Spanned dest, int dstart, int dend) { + final String converted = + PhoneNumberUtils.convertKeypadLettersToDigits( + PhoneNumberUtils.replaceUnicodeDigits(source.toString())); + // PhoneNumberUtils.replaceUnicodeDigits performs a character for character replacement, + // so we can assume that start and end positions should remain unchanged. + CharSequence result = super.filter(converted, start, end, dest, dstart, dend); + if (result == null) { + if (source.equals(converted)) { + // There was no conversion or filtering performed. Just return null according to + // the behavior of DialerKeyListener. + return null; + } else { + // filter returns null if the charsequence is to be returned unchanged/unfiltered. + // But in this case we do want to return a modified character string (even if + // none of the characters in the modified string are filtered). So if + // result == null we return the unfiltered but converted numeric string instead. + return converted.subSequence(start, end); + } + } + return result; + } +} diff --git a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_close_black_24dp.png b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_close_black_24dp.png Binary files differdeleted file mode 100644 index 1a9cd75a0..000000000 --- a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_close_black_24dp.png +++ /dev/null diff --git a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_add_call.png b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_add_call.png Binary files differnew file mode 100755 index 000000000..4e0d5649e --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_add_call.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_current_call.png b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_current_call.png Binary files differnew file mode 100755 index 000000000..2cf41d598 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_current_call.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_tt_keypad.png b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_tt_keypad.png Binary files differnew file mode 100755 index 000000000..043685fd9 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialer_fork_tt_keypad.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialpad_delete.png b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialpad_delete.png Binary files differdeleted file mode 100644 index e588d90e9..000000000 --- a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialpad_delete.png +++ /dev/null diff --git a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialpad_voicemail.png b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialpad_voicemail.png Binary files differdeleted file mode 100644 index 4706112d6..000000000 --- a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_dialpad_voicemail.png +++ /dev/null diff --git a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_overflow_menu.png b/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_overflow_menu.png Binary files differdeleted file mode 100644 index 262e9df91..000000000 --- a/java/com/android/dialer/dialpadview/res/drawable-hdpi/ic_overflow_menu.png +++ /dev/null diff --git a/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_add_call.png b/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_add_call.png Binary files differnew file mode 100644 index 000000000..56ac2a33a --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_add_call.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_current_call.png b/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_current_call.png Binary files differnew file mode 100644 index 000000000..16a44a078 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_current_call.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_tt_keypad.png b/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_tt_keypad.png Binary files differnew file mode 100644 index 000000000..66df69eac --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-mdpi/ic_dialer_fork_tt_keypad.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_add_call.png b/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_add_call.png Binary files differnew file mode 100644 index 000000000..aff140fcd --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_add_call.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_current_call.png b/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_current_call.png Binary files differnew file mode 100644 index 000000000..8975727e0 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_current_call.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_tt_keypad.png b/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_tt_keypad.png Binary files differnew file mode 100644 index 000000000..4d48ea9ea --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-xhdpi/ic_dialer_fork_tt_keypad.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_add_call.png b/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_add_call.png Binary files differnew file mode 100644 index 000000000..1657da4e2 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_add_call.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_current_call.png b/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_current_call.png Binary files differnew file mode 100644 index 000000000..f25cce695 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_current_call.png diff --git a/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_tt_keypad.png b/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_tt_keypad.png Binary files differnew file mode 100644 index 000000000..7ac4d8b58 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable-xxhdpi/ic_dialer_fork_tt_keypad.png diff --git a/java/com/android/dialer/dialpadview/res/drawable/dialpad_scrim.xml b/java/com/android/dialer/dialpadview/res/drawable/dialpad_scrim.xml deleted file mode 100644 index ee0f40ab5..000000000 --- a/java/com/android/dialer/dialpadview/res/drawable/dialpad_scrim.xml +++ /dev/null @@ -1,7 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<shape xmlns:android="http://schemas.android.com/apk/res/android"> - <gradient - android:angle="270" - android:endColor="@android:color/darker_gray" - android:startColor="@android:color/transparent"/> -</shape> diff --git a/java/com/android/dialer/dialpadview/res/drawable/ic_wifi_calling.xml b/java/com/android/dialer/dialpadview/res/drawable/ic_wifi_calling.xml new file mode 100644 index 000000000..968713376 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable/ic_wifi_calling.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2017 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:height="24dp" + android:tint="?attr/colorControlNormal" + android:viewportHeight="30" + android:viewportWidth="30" + android:width="24dp"> + <path + android:fillColor="@android:color/white" + android:pathData="M14.88,16.3h0L25,3.66a16.51,16.51 0,0 0,-20.3 0L14.88,16.3Z"/> + <path + android:fillColor="@android:color/white" + android:pathData="M26.42,18.88a1.25,1.25 0,0 0,-0.89 -0.36,1.28 1.28,0 0,0 -0.87,0.35 14.26,14.26 0,0 1,-3.32 2.31,1.24 1.24,0 0,0 -0.7,1.12v3.87a18.27,18.27 0,0 1,-5.75 0.91,18.63 18.63,0 0,1 -5.75,-0.9v-3.87a1.26,1.26 0,0 0,-0.7 -1.12,14.73 14.73,0 0,1 -3.34,-2.31 1.23,1.23 0,0 0,-0.87 -0.35,1.25 1.25,0 0,0 -0.89,0.36L0.24,22a1.24,1.24 0,0 0,-0.36 0.89,1.23 1.23,0 0,0 0.37,0.87 21.26,21.26 0,0 0,29.26 0,1.27 1.27,0 0,0 0,-1.77Z"/> +</vector>
\ No newline at end of file diff --git a/java/com/android/dialer/dialpadview/res/drawable/shadow_fade_left.xml b/java/com/android/dialer/dialpadview/res/drawable/shadow_fade_left.xml new file mode 100644 index 000000000..6271a8f86 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable/shadow_fade_left.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2014 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<shape xmlns:android="http://schemas.android.com/apk/res/android" + android:shape="rectangle"> + <gradient + android:angle="0" + android:endColor="#1a000000" + android:startColor="@null" + android:type="linear"/> +</shape> diff --git a/java/com/android/dialer/dialpadview/res/drawable/shadow_fade_up.xml b/java/com/android/dialer/dialpadview/res/drawable/shadow_fade_up.xml new file mode 100644 index 000000000..86d37a9bc --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/drawable/shadow_fade_up.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2012 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<shape xmlns:android="http://schemas.android.com/apk/res/android" + android:shape="rectangle"> + <gradient + android:angle="90" + android:endColor="@null" + android:startColor="#1a000000" + android:type="linear"/> +</shape>
\ No newline at end of file diff --git a/java/com/android/dialer/dialpadview/res/layout-land/dialpad_fragment.xml b/java/com/android/dialer/dialpadview/res/layout-land/dialpad_fragment.xml new file mode 100644 index 000000000..6389853d9 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/layout-land/dialpad_fragment.xml @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2011 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<view xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + class="com.android.dialer.dialpadview.DialpadFragment$DialpadSlidingRelativeLayout" + android:layout_width="match_parent" + android:layout_height="wrap_content"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="horizontal"> + + <!-- spacer view --> + <View + android:id="@+id/spacer" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="4" + android:background="#00000000"/> + + <!-- Dialpad shadow --> + <View + android:layout_width="@dimen/shadow_length" + android:layout_height="match_parent" + android:background="@drawable/shadow_fade_left"/> + + <RelativeLayout + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="6"> + + <include + layout="@layout/dialpad_view" + android:layout_width="match_parent" + android:layout_height="match_parent"/> + + <!-- "Dialpad chooser" UI, shown only when the user brings up the + Dialer while a call is already in progress. + When this UI is visible, the other Dialer elements + (the textfield/button and the dialpad) are hidden. --> + + <ListView + android:id="@+id/dialpadChooser" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="@color/background_dialer_light" + android:visibility="gone"/> + + <!-- Margin bottom and alignParentBottom don't work well together, so use a Space instead. --> + <Space + android:id="@+id/dialpad_floating_action_button_margin_bottom" + android:layout_width="match_parent" + android:layout_height="@dimen/floating_action_button_margin_bottom" + android:layout_alignParentBottom="true"/> + + <android.support.design.widget.FloatingActionButton + android:id="@+id/dialpad_floating_action_button" + android:layout_width="@dimen/floating_action_button_width" + android:layout_height="@dimen/floating_action_button_height" + android:layout_above="@id/dialpad_floating_action_button_margin_bottom" + android:layout_centerHorizontal="true" + android:src="@drawable/quantum_ic_call_white_24" + android:contentDescription="@string/description_dial_button" + app:elevation="@dimen/floating_action_button_translation_z" + app:backgroundTint="@color/dialpad_fab_green"/> + </RelativeLayout> + </LinearLayout> +</view> diff --git a/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key_one.xml b/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key_one.xml index 6f178f0e1..135624681 100644 --- a/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key_one.xml +++ b/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key_one.xml @@ -35,7 +35,7 @@ <ImageView android:id="@+id/dialpad_key_voicemail" android:layout_width="wrap_content" - android:layout_height="wrap_content" + android:layout_height="@dimen/dialpad_voicemail_icon_size" android:scaleType="fitCenter" android:src="@drawable/quantum_ic_voicemail_white_24" android:tint="@color/dialpad_voicemail_tint"/> diff --git a/java/com/android/dialer/dialpadview/res/layout/dialpad_chooser_list_item.xml b/java/com/android/dialer/dialpadview/res/layout/dialpad_chooser_list_item.xml new file mode 100644 index 000000000..e00529614 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/layout/dialpad_chooser_list_item.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2008 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<!-- Layout of a single item in the Dialer's "Dialpad chooser" UI. --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="horizontal"> + + <ImageView + android:id="@+id/icon" + android:layout_width="64dp" + android:layout_height="64dp" + android:scaleType="center"/> + + <TextView + android:id="@+id/text" + android:layout_width="0dip" + android:layout_height="wrap_content" + android:layout_weight="1" + android:layout_gravity="center_vertical" + android:textAppearance="?android:attr/textAppearanceMedium" + android:textColor="@color/dialpad_primary_text_color"/> + +</LinearLayout> diff --git a/java/com/android/dialer/dialpadview/res/layout/dialpad_fragment.xml b/java/com/android/dialer/dialpadview/res/layout/dialpad_fragment.xml new file mode 100644 index 000000000..2f62e1407 --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/layout/dialpad_fragment.xml @@ -0,0 +1,72 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2011 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<view xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + class="com.android.dialer.dialpadview.DialpadFragment$DialpadSlidingRelativeLayout" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="horizontal"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical"> + + <!-- spacer view --> + <View + android:id="@+id/spacer" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:background="#00000000"/> + <!-- Dialpad shadow --> + <View + android:layout_width="match_parent" + android:layout_height="@dimen/shadow_length" + android:background="@drawable/shadow_fade_up"/> + <include layout="@layout/dialpad_view"/> + <!-- "Dialpad chooser" UI, shown only when the user brings up the + Dialer while a call is already in progress. + When this UI is visible, the other Dialer elements + (the textfield/button and the dialpad) are hidden. --> + <ListView + android:id="@+id/dialpadChooser" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="@color/background_dialer_light" + android:visibility="gone"/> + + </LinearLayout> + + <!-- Margin bottom and alignParentBottom don't work well together, so use a Space instead. --> + <Space + android:id="@+id/dialpad_floating_action_button_margin_bottom" + android:layout_width="match_parent" + android:layout_height="@dimen/floating_action_button_margin_bottom" + android:layout_alignParentBottom="true"/> + + <android.support.design.widget.FloatingActionButton + android:id="@+id/dialpad_floating_action_button" + android:layout_width="@dimen/floating_action_button_width" + android:layout_height="@dimen/floating_action_button_height" + android:layout_above="@id/dialpad_floating_action_button_margin_bottom" + android:layout_centerHorizontal="true" + android:contentDescription="@string/description_dial_button" + android:src="@drawable/quantum_ic_call_vd_theme_24" + app:backgroundTint="@color/dialpad_fab_green" + app:colorControlNormal="#ffffff" + app:elevation="@dimen/floating_action_button_translation_z"/> +</view> diff --git a/java/com/android/dialer/dialpadview/res/layout/dialpad_key_one.xml b/java/com/android/dialer/dialpadview/res/layout/dialpad_key_one.xml index 88594401f..4401c5bbd 100644 --- a/java/com/android/dialer/dialpadview/res/layout/dialpad_key_one.xml +++ b/java/com/android/dialer/dialpadview/res/layout/dialpad_key_one.xml @@ -18,7 +18,8 @@ android:id="@+id/one" style="@style/DialpadKeyButtonStyle"> <LinearLayout - style="@style/DialpadKeyInternalLayoutStyle"> + android:layout_marginTop="1dp" + style="@style/DialpadKeyInternalLayoutStyle"> <com.android.dialer.dialpadview.DialpadTextView android:id="@+id/dialpad_key_number" style="@style/DialpadKeyNumberStyle"/> @@ -28,9 +29,8 @@ <ImageView android:id="@+id/dialpad_key_voicemail" android:layout_width="wrap_content" - android:layout_height="wrap_content" + android:layout_height="@dimen/dialpad_voicemail_icon_size" android:layout_centerInParent="true" - android:paddingTop="@dimen/dialpad_voicemail_icon_padding_top" android:scaleType="fitCenter" android:src="@drawable/quantum_ic_voicemail_white_24" android:tint="?attr/dialpad_voicemail_tint"/> diff --git a/java/com/android/dialer/dialpadview/res/layout/dialpad_view_unthemed.xml b/java/com/android/dialer/dialpadview/res/layout/dialpad_view_unthemed.xml index 838f1eca5..13c11f1ce 100644 --- a/java/com/android/dialer/dialpadview/res/layout/dialpad_view_unthemed.xml +++ b/java/com/android/dialer/dialpadview/res/layout/dialpad_view_unthemed.xml @@ -14,141 +14,142 @@ limitations under the License. --> <view xmlns:android="http://schemas.android.com/apk/res/android" - android:id="@+id/dialpad_view" - class="com.android.dialer.dialpadview.DialpadView" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:layout_gravity="bottom" - android:background="?attr/dialpad_background" - android:clickable="true" - android:elevation="?attr/dialpad_elevation" - android:layoutDirection="ltr" - android:orientation="vertical"> + android:id="@+id/dialpad_view" + class="com.android.dialer.dialpadview.DialpadView" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_gravity="bottom" + android:background="?attr/dialpad_background" + android:clickable="true" + android:elevation="?attr/dialpad_elevation" + android:layoutDirection="ltr" + android:orientation="vertical"> <!-- Text field where call rate is displayed for ILD calls. --> <LinearLayout - android:id="@+id/rate_container" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="vertical" - android:visibility="gone"> + android:id="@+id/rate_container" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical" + android:visibility="gone"> <LinearLayout - android:id="@+id/ild_container" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginTop="@dimen/ild_margin_height" - android:layout_marginBottom="@dimen/ild_margin_height" - android:layout_gravity="center_horizontal" - android:orientation="horizontal"> + android:id="@+id/ild_container" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="@dimen/ild_margin_height" + android:layout_marginBottom="@dimen/ild_margin_height" + android:layout_gravity="center_horizontal" + android:orientation="horizontal"> <TextView - android:id="@+id/ild_country" - android:layout_width="wrap_content" - android:layout_height="wrap_content"/> + android:id="@+id/ild_country" + android:layout_width="wrap_content" + android:layout_height="wrap_content"/> <TextView - android:id="@+id/ild_rate" - android:textStyle="bold" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginStart="4dp"/> + android:id="@+id/ild_rate" + android:textStyle="bold" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginStart="4dp"/> </LinearLayout> <View - android:layout_width="match_parent" - android:layout_height="1dp" - android:background="#e3e3e3"/> + android:layout_width="match_parent" + android:layout_height="1dp" + android:background="#e3e3e3"/> </LinearLayout> <!-- Text field and possibly soft menu button above the keypad where the digits are displayed. --> <LinearLayout - android:id="@+id/digits_container" - android:layout_width="match_parent" - android:layout_height="?attr/dialpad_digits_adjustable_height" - android:orientation="horizontal"> + android:id="@+id/digits_container" + android:layout_width="match_parent" + android:layout_height="?attr/dialpad_digits_adjustable_height" + android:orientation="horizontal"> <ImageButton - android:id="@+id/dialpad_back" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_margin="@dimen/dialpad_overflow_margin" - android:paddingLeft="@dimen/dialpad_digits_menu_left_padding" - android:paddingRight="@dimen/dialpad_digits_menu_right_padding" - android:background="@drawable/btn_dialpad_key" - android:contentDescription="@string/description_dialpad_back" - android:gravity="center" - android:src="@drawable/quantum_ic_close_white_24" - android:tint="?attr/dialpad_icon_tint" - android:tintMode="src_in" - android:visibility="gone"/> + android:id="@+id/dialpad_back" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_margin="@dimen/dialpad_overflow_margin" + android:paddingLeft="@dimen/dialpad_digits_menu_left_padding" + android:paddingRight="@dimen/dialpad_digits_menu_right_padding" + android:background="@drawable/btn_dialpad_key" + android:contentDescription="@string/description_dialpad_back" + android:gravity="center" + android:src="@drawable/quantum_ic_close_white_24" + android:tint="?attr/dialpad_icon_tint" + android:tintMode="src_in" + android:visibility="gone"/> <ImageButton - android:id="@+id/dialpad_overflow" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:layout_margin="@dimen/dialpad_overflow_margin" - android:paddingLeft="@dimen/dialpad_digits_menu_left_padding" - android:paddingRight="@dimen/dialpad_digits_menu_right_padding" - android:background="@drawable/btn_dialpad_key" - android:contentDescription="@string/description_dialpad_overflow" - android:gravity="center" - android:src="@drawable/quantum_ic_more_vert_white_24" - android:tint="?attr/dialpad_icon_tint" - android:tintMode="src_in" - android:visibility="gone"/> + android:id="@+id/dialpad_overflow" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_margin="@dimen/dialpad_overflow_margin" + android:paddingLeft="@dimen/dialpad_digits_menu_left_padding" + android:paddingRight="@dimen/dialpad_digits_menu_right_padding" + android:background="@drawable/btn_dialpad_key" + android:contentDescription="@string/description_dialpad_overflow" + android:gravity="center" + android:src="@drawable/quantum_ic_more_vert_white_24" + android:tint="?attr/dialpad_icon_tint" + android:tintMode="src_in" + android:visibility="gone"/> <view xmlns:ex="http://schemas.android.com/apk/res-auto" - android:id="@+id/digits" - class="com.android.dialer.dialpadview.DigitsEditText" - android:textStyle="normal" - android:layout_width="0dp" - android:layout_height="match_parent" - android:layout_weight="1" - android:background="@android:color/transparent" - android:cursorVisible="false" - android:focusableInTouchMode="true" - android:fontFamily="sans-serif" - android:freezesText="true" - android:gravity="center" - android:maxLines="1" - android:scrollHorizontally="true" - android:singleLine="true" - android:textColor="?attr/dialpad_text_color" - android:textCursorDrawable="@null" - android:textSize="?attr/dialpad_digits_adjustable_text_size" - ex:resizing_text_min_size="@dimen/dialpad_digits_text_min_size"/> + android:id="@+id/digits" + class="com.android.dialer.dialpadview.DigitsEditText" + android:textStyle="normal" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:background="@android:color/transparent" + android:cursorVisible="false" + android:focusableInTouchMode="true" + android:fontFamily="sans-serif" + android:freezesText="true" + android:gravity="center" + android:importantForAutofill="no" + android:maxLines="1" + android:scrollHorizontally="true" + android:singleLine="true" + android:textColor="?attr/dialpad_text_color" + android:textCursorDrawable="@null" + android:textSize="?attr/dialpad_digits_adjustable_text_size" + ex:resizing_text_min_size="@dimen/dialpad_digits_text_min_size"/> <ImageButton - android:id="@+id/deleteButton" - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:paddingLeft="@dimen/dialpad_digits_padding" - android:paddingRight="@dimen/dialpad_digits_padding" - android:background="@drawable/btn_dialpad_key" - android:contentDescription="@string/description_delete_button" - android:src="@drawable/quantum_ic_backspace_white_24" - android:state_enabled="false" - android:tint="?attr/dialpad_icon_tint" - android:tintMode="src_in"/> + android:id="@+id/deleteButton" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:paddingLeft="@dimen/dialpad_digits_padding" + android:paddingRight="@dimen/dialpad_digits_padding" + android:background="@drawable/btn_dialpad_key" + android:contentDescription="@string/description_delete_button" + android:src="@drawable/quantum_ic_backspace_white_24" + android:state_enabled="false" + android:tint="?attr/dialpad_icon_tint" + android:tintMode="src_in"/> </LinearLayout> <View - android:layout_width="match_parent" - android:layout_height="1dp" - android:background="#e3e3e3"/> + android:layout_width="match_parent" + android:layout_height="1dp" + android:background="#e3e3e3"/> <Space - android:layout_width="match_parent" - android:layout_height="@dimen/dialpad_space_above_keys"/> + android:layout_width="match_parent" + android:layout_height="@dimen/dialpad_space_above_keys"/> <include layout="@layout/dialpad"/> <Space - android:layout_width="match_parent" - android:layout_height="@dimen/dialpad_space_below_keys"/> + android:layout_width="match_parent" + android:layout_height="@dimen/dialpad_space_below_keys"/> </view> diff --git a/java/com/android/dialer/dialpadview/res/menu/dialpad_options.xml b/java/com/android/dialer/dialpadview/res/menu/dialpad_options.xml new file mode 100644 index 000000000..2921ea3bb --- /dev/null +++ b/java/com/android/dialer/dialpadview/res/menu/dialpad_options.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2011 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<menu xmlns:android="http://schemas.android.com/apk/res/android"> + + <item + android:id="@+id/menu_2s_pause" + android:showAsAction="withText" + android:title="@string/add_2sec_pause"/> + <item + android:id="@+id/menu_add_wait" + android:showAsAction="withText" + android:title="@string/add_wait"/> + <item + android:id="@+id/menu_call_with_note" + android:showAsAction="withText" + android:title="@string/call_with_a_note"/> +</menu> diff --git a/java/com/android/dialer/dialpadview/res/values-af/strings.xml b/java/com/android/dialer/dialpadview/res/values-af/strings.xml index b2d03a07f..c5c72e094 100644 --- a/java/com/android/dialer/dialpadview/res/values-af/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-af/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"stemboodskap"</string> + <string name="description_dial_button" msgid="6826108965053146374">"bel"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Om stemboodskapdiens te bel, skakel eers vliegtuigmodus af."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Om stemboodskapdiens op te stel, gaan na Kieslys > Instellings."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Voeg 2-sek.-pouse by"</string> + <string name="add_wait" msgid="2278146476349811062">"Voeg wagtyd by"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Gebruik raak-nommerbord"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Keer terug na oproep wat besig is"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Voeg oproep by"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Laai tans van SIM-kaart af …"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM-kaartkontakte"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Bel <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Kan nie hierdie nommer bel nie"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-am/strings.xml b/java/com/android/dialer/dialpadview/res/values-am/strings.xml index 04f6022d8..efbdb1de9 100644 --- a/java/com/android/dialer/dialpadview/res/values-am/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-am/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"የኋሊት ደምሳሽ"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"የመደመር ምልክት"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"የድምፅ መልዕክት"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ይደውሉ"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"የድምጽ መልዕክት ጥሪ ለማድረግ፣ በመጀመሪያ የአውሮፕላን ሁነታን ያጥፉ።"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"የድምጽ መልዕክትን ለማዘጋጀት፣ ወደ ምናሌ > ቅንብሮች ይሂዱ።"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 ሴኮንድ ፋታ አክል"</string> + <string name="add_wait" msgid="2278146476349811062">"ቆይታ አክል"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ባለድምጽ የንኪ ቁልፍ ሰሌዳን ይጠቀሙ"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"በመካሄድ ላይ ወዳለው ጥሪ ተመለስ"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"ጥሪ አክል"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"ከSIM ካርድ ላይ በመጫን ላይ…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"የSIM ካርድ ዕውቂያዎች"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"ወደ <xliff:g id="NUMBER">%s</xliff:g> ደውል"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ይህን ቁጥር መደወል አልተቻለም"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ar/strings.xml b/java/com/android/dialer/dialpadview/res/values-ar/strings.xml index 9caea157e..649280a99 100644 --- a/java/com/android/dialer/dialpadview/res/values-ar/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ar/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"مسافة للخلف"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"علامة الجمع"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"بريد صوتي"</string> + <string name="description_dial_button" msgid="6826108965053146374">"طلب"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"للاتصال بالبريد الصوتي، يجب أولاً إيقاف وضع الطائرة."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"لإعداد البريد الصوتي، انتقل إلى القائمة > الإعدادات."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"إضافة ثانيتين إيقاف مؤقت"</string> + <string name="add_wait" msgid="2278146476349811062">"إضافة انتظار"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"استخدام لوحة مفاتيح نغمات باللمس"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"عودة إلى المكالمة الجارية"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"إضافة مكالمة"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"جارٍ التحميل من شريحة SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"شريحة SIM وجهات الاتصال"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"الاتصال بالرقم <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"لا يمكن الاتصال بهذا الرقم"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-az/strings.xml b/java/com/android/dialer/dialpadview/res/values-az/strings.xml index 46f218e09..8de688d05 100644 --- a/java/com/android/dialer/dialpadview/res/values-az/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-az/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"geri düyməsi"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"səsli məktub"</string> + <string name="description_dial_button" msgid="6826108965053146374">"nömrə yığın"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Səsli e-poçta zəng etmək üçün Təyyarə rejimini deaktiv edin."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Səsli e-poçtu ayarlamaq üçün Menyu > Ayarlar bölməsinə daxil olun."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 saniyəlik pauza əlavə edin"</string> + <string name="add_wait" msgid="2278146476349811062">"Gözləmə əlavə edin"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Toxunuş ton klaviaturasından istifadə edin"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Davam edən zəngə qayıdın"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Zəng əlavə edin"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM kartdan yüklənir..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM kart kontaktları"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> nömrəsinə zəng edin"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Bu nömrəyə zəng etmək mümkün deyil"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/dialpadview/res/values-b+sr+Latn/strings.xml index 24ea30816..c15aee4bf 100644 --- a/java/com/android/dialer/dialpadview/res/values-b+sr+Latn/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-b+sr+Latn/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"govorna pošta"</string> + <string name="description_dial_button" msgid="6826108965053146374">"birajte broj"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Da biste pozvali govornu poštu, prvo isključite režim rada u avionu."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Da biste podesili govornu poštu, idite u Meni > Podešavanja."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Dodaj pauzu od 2 sekunde"</string> + <string name="add_wait" msgid="2278146476349811062">"Dodaj čekanje"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Koristi tastaturu za tonsko biranje"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Nazad u poziv koji je u toku"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Dodaj poziv"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Učitava se sa SIM kartice…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakti na SIM kartici"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Pozovi <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Nije moguće pozvati ovaj broj"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-be/strings.xml b/java/com/android/dialer/dialpadview/res/values-be/strings.xml index db504555e..cbe85f517 100644 --- a/java/com/android/dialer/dialpadview/res/values-be/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-be/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"плюс"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"галасавая пошта"</string> + <string name="description_dial_button" msgid="6826108965053146374">"набор"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Каб пазваніць на галасавую пошту, спачатку адключыце Рэжым палёту."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Каб наладзіць галасавую пошту, перайдзіце ў раздзел \"Меню > Налады\"."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Дадаць 2-секундную паўзу"</string> + <string name="add_wait" msgid="2278146476349811062">"Дадаць чаканне"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Выкарыстанне тонавай клавіятуры"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Вярнуцца да бягучага выкліку"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Дадаць выклік"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Загрузка з SIM-карты..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Кантакты SIM-карты"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Выклікаць <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Немагчыма выклікаць гэты нумар"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-bg/strings.xml b/java/com/android/dialer/dialpadview/res/values-bg/strings.xml index 7a3073d77..1188d7959 100644 --- a/java/com/android/dialer/dialpadview/res/values-bg/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-bg/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"плюс"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"гласова поща"</string> + <string name="description_dial_button" msgid="6826108965053146374">"набиране"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"За да чуете гласовата си поща, първо изключете самолетния режим."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"За да настроите гласовата поща, отворете „Меню“ > „Настройки“."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Добавяне на пауза от 2 сек"</string> + <string name="add_wait" msgid="2278146476349811062">"Добавяне на изчакване"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Използване на тонова клавиатура"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Назад към текущото обаждане"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Добавяне на обаждане"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Зарежда се от SIM картата…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Контакти от SIM картата"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Обаждане на <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Не можете да се обадите на този номер"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-bn/strings.xml b/java/com/android/dialer/dialpadview/res/values-bn/strings.xml index 98171cfc2..9f3713f6e 100644 --- a/java/com/android/dialer/dialpadview/res/values-bn/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-bn/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"ব্যাক-স্পেস"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"যোগ চিহ্ন"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ভয়েসমেল"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ডায়াল করুন"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"ভয়েসমেলে কল করতে, সবার আগে বিমানমোড বন্ধ করুন৷"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"ভয়েসমেল সেট-আপ করতে, মেনু > সেটিংসে যান৷"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"২-সেকেন্ড বিরতি যোগ করুন"</string> + <string name="add_wait" msgid="2278146476349811062">"অপেক্ষা যোগ করুন"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"টাচ-টোন কীপ্যাড ব্যবহার করুন"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"আগের কলে ফিরে যান"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"কল যোগ করুন"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"সিম কার্ড থেকে লোড করা হচ্ছে…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"সিম কার্ডের পরিচিতিগুলি"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> নম্বরে কল করুন"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"এই নম্বরে কল করা যাবে না"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-bs/strings.xml b/java/com/android/dialer/dialpadview/res/values-bs/strings.xml index 976866285..4c0527b59 100644 --- a/java/com/android/dialer/dialpadview/res/values-bs/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-bs/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"tipka za brisanje"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"govorna pošta"</string> + <string name="description_dial_button" msgid="6826108965053146374">"biranje"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Da pozovete govornu poštu, isključite Način rada u avionu."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Da postavite govornu poštu, idite na Meni > Postavke."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Dodajte pauzu od 2 sekunde"</string> + <string name="add_wait" msgid="2278146476349811062">"Dodajte čekanje"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Korištenje tastature za tonsko biranje"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Povratak na poziv"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Dodajte poziv"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Učitavanje sa SIM kartice…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakti sa SIM kartice"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Pozivanje broja <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Nije moguće pozvati ovaj broj"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ca/strings.xml b/java/com/android/dialer/dialpadview/res/values-ca/strings.xml index 2bd6c711c..eda95b474 100644 --- a/java/com/android/dialer/dialpadview/res/values-ca/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ca/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"retrocés"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"més"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"missatge de veu"</string> + <string name="description_dial_button" msgid="6826108965053146374">"marca"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Per trucar a la bústia de veu, primer has de desactivar el mode d\'avió."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Per configurar la bústia de veu, ves a Menú > Configuració."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Afegeix una pausa de 2 segons"</string> + <string name="add_wait" msgid="2278146476349811062">"Afegeix una espera"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Utilitza el teclat de tons"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Torna a la trucada en curs"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Afegeix una trucada"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"S\'està carregant des de la targeta SIM..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contactes de la targeta SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Truca al <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"No es pot trucar a aquest número"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-cs/strings.xml b/java/com/android/dialer/dialpadview/res/values-cs/strings.xml index 6c13e1c47..a97d2132b 100644 --- a/java/com/android/dialer/dialpadview/res/values-cs/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-cs/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"Backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"hlasová zpráva"</string> + <string name="description_dial_button" msgid="6826108965053146374">"vytočit"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Pokud chcete volat do hlasové schránky, vypněte nejdříve režim letadla."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Pokud chcete nastavit hlasovou schránku, přejděte na nabídku > Nastavení."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Přidat pauzu 2 s"</string> + <string name="add_wait" msgid="2278146476349811062">"Přidat čekání"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Použít dotykovou tónovou klávesnici"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Vrátit se k probíhajícímu hovoru"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Přidat hovor"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Načítání ze SIM karty…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakty na SIM kartě"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Zavolat <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Na toto číslo není možné zavolat"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-da/strings.xml b/java/com/android/dialer/dialpadview/res/values-da/strings.xml index 1df734896..45eb87238 100644 --- a/java/com/android/dialer/dialpadview/res/values-da/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-da/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"tilbagetast"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"telefonsvarer"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ring op"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Hvis du vil ringe til telefonsvareren, skal du først slå Flytilstand fra."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Gå til Menu > Indstillinger for at konfigurere telefonsvareren."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Tilføj pause på 2 sek."</string> + <string name="add_wait" msgid="2278146476349811062">"Tilføj ventetid"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Brug trykknaptastatur"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Vend tilbage til igangværende opkald"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Tilføj opkald"</string> + <string name="imei" msgid="7961343816043247280">"IMEI-nummer"</string> + <string name="meid" msgid="5274167198744847659">"MEID-nummer"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Der indlæses fra SIM-kortet…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontaktpersoner på SIM-kortet"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Ring til <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Det er ikke muligt at ringe til dette nummer"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-de/strings.xml b/java/com/android/dialer/dialpadview/res/values-de/strings.xml index c93ce4d4f..c350c9484 100644 --- a/java/com/android/dialer/dialpadview/res/values-de/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-de/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"Rücktaste"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"Plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"Mailboxnachricht"</string> + <string name="description_dial_button" msgid="6826108965053146374">"Wählen"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Deaktiviere zunächst den Flugmodus, um die Mailbox anzurufen."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Konfiguriere deine Mailbox unter \"Menü\" > \"Einstellungen\"."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 Sekunden Pause hinzufügen"</string> + <string name="add_wait" msgid="2278146476349811062">"Warten hinzufügen"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Tonwahltasten verwenden"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Zurück zum aktuellen Anruf"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Anruf hinzufügen"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Ladevorgang von SIM-Karte läuft…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakte auf SIM-Karte"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> anrufen"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Diese Nummer kann nicht angerufen werden"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-el/strings.xml b/java/com/android/dialer/dialpadview/res/values-el/strings.xml index 1bce64b93..0205f7694 100644 --- a/java/com/android/dialer/dialpadview/res/values-el/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-el/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"συν"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"αυτόματος τηλεφωνητής"</string> + <string name="description_dial_button" msgid="6826108965053146374">"κλήση"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Για κλήση αυτόματου τηλεφωνητή, πρώτα απενεργοποιήστε τη λειτουργία πτήσης."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Για τη ρύθμιση του αυτόματου τηλεφωνητή, μεταβείτε στο στοιχείο Μενού > Ρυθμίσεις."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Προσθήκη παύσης 2 δευτερολέπτων"</string> + <string name="add_wait" msgid="2278146476349811062">"Προσθήκη αναμονής"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Χρησιμοποιήστε το πληκτρολόγιο αφής ηχητικών τόνων"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Επιστροφή στην κλήση που βρίσκεται σε εξέλιξη"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Προσθήκη κλήσης"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Φόρτωση από κάρτα SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Επαφές στην κάρτα SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Κλήση <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Δεν μπορείτε να καλέσετε αυτόν τον αριθμό"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-en-rAU/strings.xml b/java/com/android/dialer/dialpadview/res/values-en-rAU/strings.xml index 62fc54747..3f16055d7 100644 --- a/java/com/android/dialer/dialpadview/res/values-en-rAU/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-en-rAU/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"voicemail"</string> + <string name="description_dial_button" msgid="6826108965053146374">"dial"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"To call voicemail, first turn off Aeroplane mode."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"To set up voicemail, go to Menu > Settings."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Add 2-sec pause"</string> + <string name="add_wait" msgid="2278146476349811062">"Add wait"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Use touch tone keypad"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Return to call in progress"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Add call"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Loading from SIM card…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM card contacts"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Call <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Can\'t call this number"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-en-rGB/strings.xml b/java/com/android/dialer/dialpadview/res/values-en-rGB/strings.xml index 62fc54747..3f16055d7 100644 --- a/java/com/android/dialer/dialpadview/res/values-en-rGB/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-en-rGB/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"voicemail"</string> + <string name="description_dial_button" msgid="6826108965053146374">"dial"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"To call voicemail, first turn off Aeroplane mode."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"To set up voicemail, go to Menu > Settings."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Add 2-sec pause"</string> + <string name="add_wait" msgid="2278146476349811062">"Add wait"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Use touch tone keypad"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Return to call in progress"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Add call"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Loading from SIM card…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM card contacts"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Call <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Can\'t call this number"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-en-rIN/strings.xml b/java/com/android/dialer/dialpadview/res/values-en-rIN/strings.xml index 62fc54747..3f16055d7 100644 --- a/java/com/android/dialer/dialpadview/res/values-en-rIN/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-en-rIN/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"voicemail"</string> + <string name="description_dial_button" msgid="6826108965053146374">"dial"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"To call voicemail, first turn off Aeroplane mode."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"To set up voicemail, go to Menu > Settings."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Add 2-sec pause"</string> + <string name="add_wait" msgid="2278146476349811062">"Add wait"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Use touch tone keypad"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Return to call in progress"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Add call"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Loading from SIM card…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM card contacts"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Call <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Can\'t call this number"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-es-rUS/strings.xml b/java/com/android/dialer/dialpadview/res/values-es-rUS/strings.xml index 4c2908852..5bf2ae8bd 100644 --- a/java/com/android/dialer/dialpadview/res/values-es-rUS/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-es-rUS/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"retroceso"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"más"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"buzón de voz"</string> + <string name="description_dial_button" msgid="6826108965053146374">"marcar"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Para escuchar los mensajes de tu buzón de voz, desactiva primero el modo avión."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Para configurar el buzón de voz, ve a Menú > Configuración."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Agregar pausa de 2 segundos"</string> + <string name="add_wait" msgid="2278146476349811062">"Agregar espera"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Usar teclado numérico"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Regresar a la llamada en curso"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Agregar llamada"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Cargando desde tarjeta SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contactos de la tarjeta SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Llamar al <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"No se puede llamar a este número"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-es/strings.xml b/java/com/android/dialer/dialpadview/res/values-es/strings.xml index 7fd6355b2..af3590874 100644 --- a/java/com/android/dialer/dialpadview/res/values-es/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-es/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"retroceso"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"más"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"mensaje de voz"</string> + <string name="description_dial_button" msgid="6826108965053146374">"marcar"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Para llamar al buzón de voz, debes desactivar el modo avión."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Para configurar el buzón de voz, ve a Menú > Ajustes."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Añadir pausa de 2 segundos"</string> + <string name="add_wait" msgid="2278146476349811062">"Añadir espera"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Usar teclado táctil"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Volver a la llamada en curso"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Añadir llamada"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Cargando el número de teléfono de la tarjeta SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contactos de la tarjeta SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Llamar al <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"No se puede llamar a este número"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-et/strings.xml b/java/com/android/dialer/dialpadview/res/values-et/strings.xml index e71bd717b..c5e4f5f38 100644 --- a/java/com/android/dialer/dialpadview/res/values-et/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-et/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"tagasilüke"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"pluss"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"kõnepostisõnum"</string> + <string name="description_dial_button" msgid="6826108965053146374">"helista"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Kõnepostisõnumite kuulamiseks lülitage esmalt välja lennukirežiim."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Kõneposti seadistamiseks tehke valikud Menüü > Seaded."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Lisa kahesekundiline paus"</string> + <string name="add_wait" msgid="2278146476349811062">"Lisa ootamine"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Kasuta puutetooniga klahvistikku"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Naase käimasolevale kõnele"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Lisa kõne"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Laadimine SIM-kaardilt …"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM-kaardi kontaktid"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Helistamine numbrile <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Sellele numbrile ei saa helistada"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-eu/strings.xml b/java/com/android/dialer/dialpadview/res/values-eu/strings.xml index c70948b2e..778b199f8 100644 --- a/java/com/android/dialer/dialpadview/res/values-eu/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-eu/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"atzera tekla"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"gehi"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"erantzungailua"</string> + <string name="description_dial_button" msgid="6826108965053146374">"markatu"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Ahots-mezuak entzuteko, Hegaldi modua desaktibatu behar duzu."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Erantzungailua konfiguratzeko, joan Menua > Ezarpenak atalera."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Gehitu 2 segundoko pausa"</string> + <string name="add_wait" msgid="2278146476349811062">"Gehitu itxaronaldia"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Erabili ukipen-tonuak dituen teklatua"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Itzuli abian den deira"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Gehitu deia"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM txarteletik kargatzen…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM txarteleko kontaktuak"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Deitu <xliff:g id="NUMBER">%s</xliff:g> zenbakira"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Ezin da deitu zenbaki honetara"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-fa/strings.xml b/java/com/android/dialer/dialpadview/res/values-fa/strings.xml index 716360f99..070ca0059 100644 --- a/java/com/android/dialer/dialpadview/res/values-fa/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-fa/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"برگشت به عقب"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"بهعلاوه"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"پست صوتی"</string> + <string name="description_dial_button" msgid="6826108965053146374">"شمارهگیری"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"برای تماس با پست صوتی، ابتدا حالت هواپیما را غیرفعال کنید."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"برای راهاندازی پست صوتی به منو > تنظیمات بروید."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"افزودن یک مکث ۲ ثانیهای"</string> + <string name="add_wait" msgid="2278146476349811062">"افزودن انتظار"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"استفاده از صفحهکلید لمسی"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"برگشت به تماس درحال انجام"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"افزودن تماس"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"در حال بارگیری سیم کارت..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"مخاطبین سیمکارت"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"تماس با <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"تماس با این شماره ممکن نیست"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-fi/strings.xml b/java/com/android/dialer/dialpadview/res/values-fi/strings.xml index 63e96f639..0a7a7912b 100644 --- a/java/com/android/dialer/dialpadview/res/values-fi/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-fi/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"askelpalautin"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ääniviesti"</string> + <string name="description_dial_button" msgid="6826108965053146374">"soita"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Poista lentokonetila käytöstä ennen vastaajaan soittamista."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Määritä puhelinvastaajan asetukset kohdassa Valikko > Asetukset."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Lisää 2 sekunnin tauko"</string> + <string name="add_wait" msgid="2278146476349811062">"Lisää tauko"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Käytä näppäimistöä"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Palaa meneillään olevaan puheluun"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Lisää puhelu"</string> + <string name="imei" msgid="7961343816043247280">"IMEI-koodi"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Ladataan SIM-kortilta…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM-kortin yhteystiedot"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Soita <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Numeroon ei voi soittaa."</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-fr-rCA/strings.xml b/java/com/android/dialer/dialpadview/res/values-fr-rCA/strings.xml index bb0454552..3080169ac 100644 --- a/java/com/android/dialer/dialpadview/res/values-fr-rCA/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-fr-rCA/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"retour arrière"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"messagerie vocale"</string> + <string name="description_dial_button" msgid="6826108965053146374">"composer"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Veuillez désactiver le mode Avion avant d\'appeler la messagerie vocale."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Pour configurer la messagerie vocale, accédez à Menu > Paramètres."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Ajouter une pause de 2 s"</string> + <string name="add_wait" msgid="2278146476349811062">"Ajouter une attente"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Utiliser le clavier DTMF"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Reprendre l\'appel en cours"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Ajouter un appel"</string> + <string name="imei" msgid="7961343816043247280">"IIEM"</string> + <string name="meid" msgid="5274167198744847659">"IDEM"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Chargement à partir de la carte SIM en cours…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contacts de la carte SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Appeler le <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Vous ne pouvez pas appeler ce numéro"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-fr/strings.xml b/java/com/android/dialer/dialpadview/res/values-fr/strings.xml index ea3e67c61..b4fc15222 100644 --- a/java/com/android/dialer/dialpadview/res/values-fr/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-fr/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"retour arrière"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"message vocal"</string> + <string name="description_dial_button" msgid="6826108965053146374">"composer"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Pour pouvoir appeler la messagerie vocale, vous devez désactiver le mode Avion."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Pour configurer la messagerie vocale, accédez à Menu > Paramètres."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Ajouter une pause de 2 s"</string> + <string name="add_wait" msgid="2278146476349811062">"Ajouter une attente"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Utiliser le clavier DTMF"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Reprendre l\'appel en cours"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Ajouter un appel"</string> + <string name="imei" msgid="7961343816043247280">"Code IMEI"</string> + <string name="meid" msgid="5274167198744847659">"Code MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Chargement depuis la carte SIM..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contacts de la carte SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Appeler le <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Impossible d\'appeler ce numéro"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-gl/strings.xml b/java/com/android/dialer/dialpadview/res/values-gl/strings.xml index d3901949b..25ffc278d 100644 --- a/java/com/android/dialer/dialpadview/res/values-gl/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-gl/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"retroceso"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"máis"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"correo de voz"</string> + <string name="description_dial_button" msgid="6826108965053146374">"marca"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Para chamar ao correo de voz, primeiro desactiva o modo avión."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Para configurar o correo de voz, accede a Menú > Configuración."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Engadir pausa de 2 segundos"</string> + <string name="add_wait" msgid="2278146476349811062">"Engadir espera"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Usar teclado de tons táctiles"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Volver á chamada en curso"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Engadir chamada"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Cargando número da tarxeta SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contactos da tarxeta SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Chamar ao <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Non é posible chamar a este número"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-gu/strings.xml b/java/com/android/dialer/dialpadview/res/values-gu/strings.xml index 8962694f9..e4e13b3eb 100644 --- a/java/com/android/dialer/dialpadview/res/values-gu/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-gu/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"પ્લસ"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"વૉઇસમેઇલ"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ડાયલ કરો"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"વૉઇસમેઇલ પર કૉલ કરવા માટે, પહેલાં એરપ્લેન મોડને બંધ કરો."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"વૉઇસમેઇલ સેટ કરવા માટે, મેનૂ > સેટિંગ્સ પર જાઓ."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2-સેકંડનો વિરામ ઉમેરો"</string> + <string name="add_wait" msgid="2278146476349811062">"પ્રતીક્ષા ઉમેરો"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ટચ ટોન કીપેડનો ઉપયોગ કરો"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"કૉલ પર પાછા આવવું પ્રગતિ પર છે"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"કૉલ ઉમેરો"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM કાર્ડમાંથી લોડ કરી રહ્યાં છીએ…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM કાર્ડ સંપર્કો"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> પર કૉલ કરો"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"આ નંબર પર કૉલ કરી શકાતો નથી"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-hi/strings.xml b/java/com/android/dialer/dialpadview/res/values-hi/strings.xml index 4388ec2fa..529f8c729 100644 --- a/java/com/android/dialer/dialpadview/res/values-hi/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-hi/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"धन का चिह्न"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"वॉइसमेल"</string> + <string name="description_dial_button" msgid="6826108965053146374">"डायल करें"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"वॉइसमेल कॉल करने के लिए, पहले हवाई जहाज़ मोड बंद करें."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"वॉइसमेल सेट अप करने के लिए, मेनू > सेटिंग पर जाएं."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2-सेकंड का विराम जोड़ें"</string> + <string name="add_wait" msgid="2278146476349811062">"प्रतीक्षा का समय बढ़ाएं"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"टच टोन कीपैड का उपयोग करें"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"कॉल पर लौटने का कार्य प्रगति पर"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"कॉल जोड़ें"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM कार्ड से लोड हो रहा है…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM कार्ड के संपर्क"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> पर कॉल करें"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"इस नंबर पर कॉल नहीं किया जा सकता"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-hr/strings.xml b/java/com/android/dialer/dialpadview/res/values-hr/strings.xml index b904d2303..6ec34d29e 100644 --- a/java/com/android/dialer/dialpadview/res/values-hr/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-hr/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"povratna tipka"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"govorna pošta"</string> + <string name="description_dial_button" msgid="6826108965053146374">"biraj"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Da biste nazvali govornu poštu, najprije isključite način rada u zrakoplovu."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Da biste postavili govornu poštu, idite na Izbornik > Postavke."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Dodaj pauzu od 2 s."</string> + <string name="add_wait" msgid="2278146476349811062">"Dodaj čekanje"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Koristite dodirnu zvučnu tipkovnicu"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Natrag na poziv u tijeku"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Dodaj poziv"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Učitavanje sa SIM kartice..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakti na SIM kartici"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Nazovite <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Nije moguće nazvati taj broj"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-hu/strings.xml b/java/com/android/dialer/dialpadview/res/values-hu/strings.xml index 4b1c854bc..7ef242410 100644 --- a/java/com/android/dialer/dialpadview/res/values-hu/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-hu/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"Backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plusz"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"hangposta"</string> + <string name="description_dial_button" msgid="6826108965053146374">"tárcsázás"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Hangposta hívásához kapcsolja ki a Repülőgép üzemmódot."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"A hangposta beállításához válassza a Menü > Beállítások pontot."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 mp-es szünet hozzáadása"</string> + <string name="add_wait" msgid="2278146476349811062">"Várakozás hozzáadása"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Hangkódos telefonbillentyűzet használata"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Vissza a folyamatban lévő híváshoz"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Hívás hozzáadása"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Betöltés a SIM-kártyáról…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Névjegyek a SIM-kártyán"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Hívás: <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Nem lehet felhívni ezt a számot"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-hy/strings.xml b/java/com/android/dialer/dialpadview/res/values-hy/strings.xml index 4433c7016..0839922ec 100644 --- a/java/com/android/dialer/dialpadview/res/values-hy/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-hy/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"հետշարժ"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"գումարում"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ձայնային փոստ"</string> + <string name="description_dial_button" msgid="6826108965053146374">"համարհավաքել"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Ձայնային փոստին զանգելու համար նախ անջատեք Ինքնաթիռի ռեժիմը:"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Ձայնային փոստը կարգավորելու համար անցեք Ընտրացնակ > Կարգավորումներ:"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Ավելացնել 2 վայրկյան դադար"</string> + <string name="add_wait" msgid="2278146476349811062">"Ավելացնել սպասելաժամանակ"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Օգտագործել տոնային ստեղնաշարը"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Վերադառնալ ընթացիկ զանգին"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Ավելացնել զանգ"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Բեռնվում է SIM քարտից…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM քարտի կոնտակտներ"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Զանգել <xliff:g id="NUMBER">%s</xliff:g> համարին"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Հնարավոր չէ զանգել այս համարին"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-in/strings.xml b/java/com/android/dialer/dialpadview/res/values-in/strings.xml index 7aa47580a..4f7a05fc1 100644 --- a/java/com/android/dialer/dialpadview/res/values-in/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-in/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"tambah"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"pesan suara"</string> + <string name="description_dial_button" msgid="6826108965053146374">"panggil"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Untuk memanggil pesan suara, nonaktifkan mode Pesawat terlebih dahulu."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Untuk menyiapkan pesan suara, buka Menu > Setelan."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Tambahkan jeda 2 dtk"</string> + <string name="add_wait" msgid="2278146476349811062">"Tambahkan tunggu"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Gunakan keypad nada sentuh"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Kembali ke panggilan sedang berlangsung"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Tambahkan panggilan"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Memuat dari kartu SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontak di kartu SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Telepon <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Tidak dapat menelepon nomor ini"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-is/strings.xml b/java/com/android/dialer/dialpadview/res/values-is/strings.xml index 00f7cefe0..de6b9a239 100644 --- a/java/com/android/dialer/dialpadview/res/values-is/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-is/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"bakklykill"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plús"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"talhólfsskilaboð"</string> + <string name="description_dial_button" msgid="6826108965053146374">"hringja"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Til að hringja í talhólfið þarftu fyrst að slökkva á flugstillingu."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Til að setja upp talhólf þarftu að opna valmyndina og velja Stillingar."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Bæta við 2 sekúndna töf"</string> + <string name="add_wait" msgid="2278146476349811062">"Bæta töf við"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Nota snertitónatakkaborð"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Fara aftur í símtal í gangi"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Bæta símtali við"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Hleður af SIM-kortinu…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Tengiliðir á SIM-korti"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Hringja í <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Ekki er hægt að hringja í þetta númer"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-it/strings.xml b/java/com/android/dialer/dialpadview/res/values-it/strings.xml index 9c4302af3..cb1b75216 100644 --- a/java/com/android/dialer/dialpadview/res/values-it/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-it/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"più"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"messaggio vocale"</string> + <string name="description_dial_button" msgid="6826108965053146374">"componi"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Per chiamare la segreteria, disattiva la modalità aereo."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Per configurare la segreteria, seleziona Menu > Impostazioni."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Aggiungi pausa 2 sec"</string> + <string name="add_wait" msgid="2278146476349811062">"Aggiungi attesa"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Usa tastierino per selezione a toni"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Torna alla chiamata in corso"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Aggiungi chiamata"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Caricamento da SIM..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contatti della scheda SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Chiama <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Impossibile chiamare questo numero"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-iw/strings.xml b/java/com/android/dialer/dialpadview/res/values-iw/strings.xml index c27af37cb..a8e784e97 100644 --- a/java/com/android/dialer/dialpadview/res/values-iw/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-iw/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"Backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"פלוס"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"דואר קולי"</string> + <string name="description_dial_button" msgid="6826108965053146374">"חיוג"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"כדי להתקשר לתא הקולי, קודם עליך להשבית את מצב הטיסה."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"כדי להגדיר את התא הקולי, עליך להיכנס לתפריט > הגדרות."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"הוספת השהיה של 2 שניות"</string> + <string name="add_wait" msgid="2278146476349811062">"הוספת השהיה"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"שימוש במקלדת עם צלילי חיוג"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"חזרה לשיחה הפעילה"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"הוספת שיחה"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"אנחנו טוענים מכרטיס ה-SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"אנשי הקשר בכרטיס ה-SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"התקשרות אל <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"לא ניתן להתקשר אל המספר הזה"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ja/strings.xml b/java/com/android/dialer/dialpadview/res/values-ja/strings.xml index d560c88b2..78ab67a4c 100644 --- a/java/com/android/dialer/dialpadview/res/values-ja/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ja/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"Backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"足す"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ボイスメール"</string> + <string name="description_dial_button" msgid="6826108965053146374">"発信"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"機内モードを OFF にしてからボイスメールを呼び出してください。"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"ボイスメールを設定するには、[メニュー] > [設定] の順に開いてください。"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 秒間の停止を追加"</string> + <string name="add_wait" msgid="2278146476349811062">"待機を追加"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"プッシュホン式キーパッドを使う"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"通話に戻る"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"通話を追加"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM カードから読み込み中…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM カードの連絡先"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> に発信"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"この番号に発信できません"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ka/strings.xml b/java/com/android/dialer/dialpadview/res/values-ka/strings.xml index 28e0319fd..2e3b25bf7 100644 --- a/java/com/android/dialer/dialpadview/res/values-ka/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ka/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"უკუშლა"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"პლუსი"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ხმოვანი ფოსტა"</string> + <string name="description_dial_button" msgid="6826108965053146374">"აკრეფა"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"ხმოვან ფოსტასთან დასაკავშირებლად, პირველ რიგში, გამორთეთ თვითმფრინავის რეჟიმი."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"ხმოვანი ფოსტის დასაყენებლად გადადით: მენიუ > პარამეტრები."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"ორწამიანი პაუზის დამატება"</string> + <string name="add_wait" msgid="2278146476349811062">"ლოდინის დამატება"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ტონური რეჟიმის კლავიატურის გამოყენება"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"მიმდინარე ზარზე დაბრუნება"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"ზარის დამატება"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"მიმდინარეობს ჩატვირთვა SIM ბარათიდან…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM ბარათის კონტაქტები"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"დარეკვა <xliff:g id="NUMBER">%s</xliff:g>-ზე"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ამ ნომერზე დარეკვა შეუძლებელია"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-kk/strings.xml b/java/com/android/dialer/dialpadview/res/values-kk/strings.xml index 902a41f59..3906017af 100644 --- a/java/com/android/dialer/dialpadview/res/values-kk/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-kk/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"Backspace пернесі"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"қосу"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"дауыстық пошта"</string> + <string name="description_dial_button" msgid="6826108965053146374">"теру"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Дауыстық поштаға қоңырау шалу мүмкін болуы үшін, ұшақ режимін өшіру қажет."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Дауыстық поштаны орнату үшін, \"Mәзір > Параметрлер\" тармағына өтіңіз."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 секундтық үзіліс қосу"</string> + <string name="add_wait" msgid="2278146476349811062">"\"Күту\" мүмкіндігін қосу"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Сенсорлы және дыбысты пернетақта"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Басталған қоңырауға оралу"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Жаңа қоңырау қосу"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM картасынан жүктелуде..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM контактілері"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> нөміріне қоңырау шалу"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Бұл нөмірге қоңырау шалу мүмкін емес"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-km/strings.xml b/java/com/android/dialer/dialpadview/res/values-km/strings.xml index be9483ef9..12b04a579 100644 --- a/java/com/android/dialer/dialpadview/res/values-km/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-km/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"លុបថយក្រោយ"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"សារជាសំឡេង"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ចុច"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"ដើម្បីហៅសារជាសំឡេង ដំបូងត្រូវបិទមុខងារពេលជិះយន្តហោះ។"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"ដើម្បីកំណត់សារជាសំឡេង ចូលម៉ឺនុយ > ការកំណត់។"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"បញ្ចូលការផ្អាក 2 វិនាទី"</string> + <string name="add_wait" msgid="2278146476349811062">"បញ្ចូលការរង់ចាំ"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ប្រើសំឡេងប៉ះបន្ទះលេខ"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"កំពុងត្រឡប់ទៅកាន់ការហៅ"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"បញ្ចូលការហៅទូរសព្ទ"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"កំពុងផ្ទុកពីស៊ីមកាត..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"ទំនាក់ទំនងនៅក្នុងស៊ីមកាត"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"ហៅទៅកាន់ <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"មិនអាចហៅទៅកាន់លេខនេះបានទេ"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-kn/strings.xml b/java/com/android/dialer/dialpadview/res/values-kn/strings.xml index 843058026..afc99b62b 100644 --- a/java/com/android/dialer/dialpadview/res/values-kn/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-kn/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"ಸಂಕಲನ"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ಧ್ವನಿಮೇಲ್"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ಡಯಲ್"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"ಧ್ವನಿಮೇಲ್ಗೆ ಕರೆ ಮಾಡಲು, ಮೊದಲು ಏರ್ಪ್ಲೇನ್ ಮೋಡ್ ಆಫ್ ಮಾಡಿ."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"ಧ್ವನಿಮೇಲ್ ಹೊಂದಿಸಲು, ಮೆನು > ಸೆಟ್ಟಿಂಗ್ಗಳುಗೆ ಹೋಗಿ."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2-ಸೆ ವಿರಾಮವನ್ನು ಸೇರಿಸಿ"</string> + <string name="add_wait" msgid="2278146476349811062">"ನಿರೀಕ್ಷೆಯನ್ನು ಸೇರಿಸಿ"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ಸ್ಪರ್ಶ ಟೋನ್ ಕೀಪ್ಯಾಡ್ ಬಳಸಿ"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"ಪ್ರತ್ಯತ್ತರ ಕರೆಯು ಪ್ರಗತಿಯಲ್ಲಿದೆ"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"ಕರೆಯನ್ನು ಸೇರಿಸಿ"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"ಸಿಮ್ ಕಾರ್ಡ್ನಿಂದ ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"ಸಿಮ್ ಕಾರ್ಡ್ ಸಂಪರ್ಕಗಳು"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> ಕರೆ ಮಾಡಿ"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ಈ ಸಂಖ್ಯೆಗೆ ಕರೆ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ko/strings.xml b/java/com/android/dialer/dialpadview/res/values-ko/strings.xml index 748843c60..8366ec5f6 100644 --- a/java/com/android/dialer/dialpadview/res/values-ko/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ko/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"백스페이스"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"더하기"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"음성사서함"</string> + <string name="description_dial_button" msgid="6826108965053146374">"전화걸기"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"음성사서함 메시지를 확인하려면 먼저 비행기 모드를 해제하세요."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"음성사서함을 설정하려면 메뉴 > 설정으로 이동하세요."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2초간 일시중지 추가"</string> + <string name="add_wait" msgid="2278146476349811062">"대기 시간 추가"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"터치톤 키패드 사용"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"진행 중인 통화로 돌아가기"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"통화 추가"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM 카드에서 로딩 중…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM 카드 연락처"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g>에 전화걸기"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"이 번호에 전화를 걸 수 없습니다."</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ky/strings.xml b/java/com/android/dialer/dialpadview/res/values-ky/strings.xml index 703abdb1c..8ce17279e 100644 --- a/java/com/android/dialer/dialpadview/res/values-ky/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ky/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"артка карай өчүрүү"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"кошуу"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"үн почтасы"</string> + <string name="description_dial_button" msgid="6826108965053146374">"терүү"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Үн почтасын текшерүү үчүн, алгач Учак режимин өчүрүңүз."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Үн почтасын жөндөө үчүн Меню > Жөндөөлөргө кириңиз."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2-сек. тыныгууну кошуңуз"</string> + <string name="add_wait" msgid="2278146476349811062">"Тыныгуу кошуу"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Тоналдык терүү тактасын колдонуу"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Аткарылып жаткан чалууга кайтуу"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Чалууну кошуу"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM-картадан жүктөлүүдө…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM картадагы байланыштар"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> номерине чалуу"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Бул номерге чалуу мүмкүн болбой жатат"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-lo/strings.xml b/java/com/android/dialer/dialpadview/res/values-lo/strings.xml index aefc70199..a69e28e99 100644 --- a/java/com/android/dialer/dialpadview/res/values-lo/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-lo/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"ປຸ່ມ backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"ບວກ"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ຂໍ້ຄວາມສຽງ"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ໂທ"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"ທ່ານຕ້ອງປິດໂໝດຢູ່ເທິງຍົນກ່ອນເພື່ອໂທຫາເບີຂໍ້ຄວາມສຽງ."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"ເພື່ອຕັ້ງຄ່າຂໍ້ຄວາມສຽງ ໃຫ້ໄປທີ່ ເມນູ > ການຕັ້ງຄ່າ."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"ເພີ່ມການຂັ້ນເວລາ 2 ວິນາທີ"</string> + <string name="add_wait" msgid="2278146476349811062">"ເພີ່ມການລໍຖ້າ"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ໃຊ້ປຸ່ມກົດສັນຍານສຽງ"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"ກັບໄປການໂທທີ່ກຳລັງດຳເນີນຢູ່"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"ເພີ່ມການໂທ"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"ກຳລັງໂຫລດຈາກ SIM card..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"ລາຍຊື່ຜູ້ຕິດຕໍ່ SIM card"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"ໂທຫາ <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ບໍ່ສາມາດໂທຫາເບີນີ້ໄດ້"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-lt/strings.xml b/java/com/android/dialer/dialpadview/res/values-lt/strings.xml index 0e352d032..3f09cdc78 100644 --- a/java/com/android/dialer/dialpadview/res/values-lt/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-lt/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"naikinimo klavišas"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"sudėties ženklas"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"balso pašto pranešimas"</string> + <string name="description_dial_button" msgid="6826108965053146374">"rinkti numerį"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Jei norite skambinti į balso paštą, išjunkite lėktuvo režimą."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Jei norite nustatyti balso paštą, eikite į meniu > „Nustatymai“."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Pridėti 2 sek. pauzę"</string> + <string name="add_wait" msgid="2278146476349811062">"Pridėti laukimą"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Naudoti jutiklinę tonų klaviatūrą"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Grįžti prie vykdomo skambučio"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Pridėti skambutį"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Įkeliama iš SIM kortelės..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM kortelės kontaktai"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Skambinti <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Negalima skambinti šiuo numeriu"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-lv/strings.xml b/java/com/android/dialer/dialpadview/res/values-lv/strings.xml index 4af53a3e5..bcc2039e6 100644 --- a/java/com/android/dialer/dialpadview/res/values-lv/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-lv/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"atpakaļatkāpe"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"pluszīme"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"balss pasts"</string> + <string name="description_dial_button" msgid="6826108965053146374">"sastādīt numuru"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Lai piekļūtu balss pastam, vispirms izslēdziet lidojuma režīmu."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Lai iestatītu balss pastu, atveriet sadaļu Izvēlne > Iestatījumi."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Pievienot 2 sekundes ilgu pauzi"</string> + <string name="add_wait" msgid="2278146476349811062">"Pievienot gaidīšanas funkciju"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Izmantot skārientastatūru"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Atgriezties pie pašreizējā zvana"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Pievienot zvanu"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Notiek ielāde no SIM kartes..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM kartes kontaktpersonas"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Zvanīt: <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Uz šo numuru nevar piezvanīt."</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-mk/strings.xml b/java/com/android/dialer/dialpadview/res/values-mk/strings.xml index 2780e8aff..f98deb479 100644 --- a/java/com/android/dialer/dialpadview/res/values-mk/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-mk/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"избриши"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"плус"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"говорна пошта"</string> + <string name="description_dial_button" msgid="6826108965053146374">"бирај"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"За да се јавите во говорна пошта, исклучете го авионскиот режим."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"За поставување говорна пошта, одете во Мени > Поставки."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Додај пауза од 2 сек."</string> + <string name="add_wait" msgid="2278146476349811062">"Додај чекање"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Користете тастатура со тонско бирање"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Вратете се на повик во тек"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Додај повик"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Се вчитува од SIM-картичка…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Контакти од SIM-картичка"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Повикај <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Бројот не може да се повика"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ml/strings.xml b/java/com/android/dialer/dialpadview/res/values-ml/strings.xml index 7ef8313d6..77033aa48 100644 --- a/java/com/android/dialer/dialpadview/res/values-ml/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ml/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"ബാക്ക്സ്പെയ്സ്"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"പ്ലസ്"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"വോയ്സ്മെയിൽ"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ഡയൽ ചെയ്യുക"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"വോയ്സ്മെയിൽ വിളിക്കാൻ ആദ്യം ഫ്ലൈറ്റ് മോഡ് ഓഫാക്കുക."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"വോയ്സ്മെയിൽ സജ്ജീകരിക്കുന്നതിന്, മെനു > ക്രമീകരണങ്ങൾ എന്നതിലേക്ക് പോകുക."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 സെക്കൻഡ് താൽക്കാലികമായി നിർത്തൽ ചേർക്കുക"</string> + <string name="add_wait" msgid="2278146476349811062">"കാത്തിരിക്കൽ ചേർക്കുക"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ടച്ച് ടോൺ കീപാഡ് ഉപയോഗിക്കുക"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"വിളിച്ചുകൊണ്ടിരിക്കുന്ന കോളിലേക്ക് മടങ്ങുക"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"കോൾ ചേർക്കുക"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"സിം കാർഡിൽ നിന്നും ലോഡുചെയ്യുന്നു…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"സിം കാർഡ് കോൺടാക്റ്റുകൾ"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"വിളിക്കുക <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ഈ നമ്പറിലേക്ക് കോൾ ചെയ്യാനാവില്ല"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-mn/strings.xml b/java/com/android/dialer/dialpadview/res/values-mn/strings.xml index 5bc3bb7db..d03bb9379 100644 --- a/java/com/android/dialer/dialpadview/res/values-mn/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-mn/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"ухраах"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"нэмэх"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"дуут шуудан"</string> + <string name="description_dial_button" msgid="6826108965053146374">"залгах"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Дуут шуудан руу залгахын тулд эхлээд Нислэгийн горимыг идэвхгүй болгоно уу."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Дуут шууданг тохируулахын тулд Цэс > Тохиргоо руу очно уу."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2-сек зогсолт нэмэх"</string> + <string name="add_wait" msgid="2278146476349811062">"Хүлээлт нэмэх"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Хүрэлтээр дуугардаг гар ашиглах"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Үргэлжилж буй дуудлага руу буцах"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Дуудлага нэмэх"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM картаас ачаалж байна…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM картны харилцагч"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> руу залгах"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Энэ дугаар руу залгах боломжгүй"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-mr/strings.xml b/java/com/android/dialer/dialpadview/res/values-mr/strings.xml index 6f629e1a8..7b466a426 100644 --- a/java/com/android/dialer/dialpadview/res/values-mr/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-mr/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"अधिक"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"व्हॉइसमेल"</string> + <string name="description_dial_button" msgid="6826108965053146374">"डायल"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"व्हॉइसमेलला कॉल करण्यासाठी, प्रथम विमान मोड बंद करा."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"व्हॉइसमेल सेट करण्यासाठी, मेनू > सेटिंग्ज वर जा."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2-सेकंदांचा विराम जोडा"</string> + <string name="add_wait" msgid="2278146476349811062">"वाट पाहणे जोडा"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"स्पर्श टोन कीपॅडचा वापर करा"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"चालू असलेल्या कॉलवर परत जा"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"कॉल जोडा"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"सिम कार्ड मधून लोड करत आहे…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"सिम कार्ड संपर्क"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> वर कॉल करा"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"या नंबरवर कॉल करू शकत नाही"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ms/strings.xml b/java/com/android/dialer/dialpadview/res/values-ms/strings.xml index f767a2587..a3cbbea88 100644 --- a/java/com/android/dialer/dialpadview/res/values-ms/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ms/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"undur ruang"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"tambah"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"mel suara"</string> + <string name="description_dial_button" msgid="6826108965053146374">"dail"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Untuk membuat panggilan ke mel suara, mula-mula matikan mod Pesawat."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Untuk menyediakan mel suara, pergi ke Menu > Tetapan."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Tambah jeda 2 saat"</string> + <string name="add_wait" msgid="2278146476349811062">"Tambah penungguan"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Gunakan pad kekunci nada sentuh"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Kembali ke panggilan yang sedang berlangsung"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Tambah panggilan"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Memuatkan daripada kad SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kenalan kad SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Panggil <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Tidak dapat menghubungi nombor ini"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-my/strings.xml b/java/com/android/dialer/dialpadview/res/values-my/strings.xml index 877805680..4ece9fa18 100644 --- a/java/com/android/dialer/dialpadview/res/values-my/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-my/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"နောက်ပြန်ဖျက်ခလုတ်"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"အပေါင်း လက္ခဏာ"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"အသံမေးလ်"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ဖုန်းခေါ်ရန်"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"အသံမေးလ်ခေါ်ဆိုရန်အတွက် လေယာဉ်ပျံမုဒ်ကို ဦးစွာပိတ်ပါ။"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"အသံမေးလ်စနစ်ကို စီစဉ်သတ်မှတ်ရန် မီနူး > ဆက်တင်များသို့ သွားပါ။"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"၂-စက္ကန့် ခဏရပ်ရန်"</string> + <string name="add_wait" msgid="2278146476349811062">"စောင့်ဆိုင်းရန်"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"အသံမြည်ခလုတ်ခုံကို အသုံးပြုရန်"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"လက်ရှိဖုန်းပြောနေမှုသို့ ပြန်သွားရန်"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"နောက်ထပ်ဖုန်းတစ်ခု ခေါ်ဆိုရန်"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"ဆင်းမ်ကဒ်မှ ဖွင့်နေသည်…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"ဆင်းမ်ကဒ်အဆက်အသွယ်များ"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> ကို ဖုန်းခေါ်ရန်"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ဤနံပါတ်ကို မခေါ်ဆိုနိုင်ပါ"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-nb/strings.xml b/java/com/android/dialer/dialpadview/res/values-nb/strings.xml index c0756b25d..0f78eb7cf 100644 --- a/java/com/android/dialer/dialpadview/res/values-nb/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-nb/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"tilbaketast"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"pluss"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"talepost"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ring"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Du må slå av flymodus før du kan sjekke talepostkassen."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"For å konfigurere talepostfunksjonen, gå til Meny > Innstillinger."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Legg til pause på 2 sek."</string> + <string name="add_wait" msgid="2278146476349811062">"Legg til Vent"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Bruk tonetastatur"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Gå tilbake til aktiv samtale"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Nytt anrop"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Henter fra SIM-kort …"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakter på SIM-kort"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Ring <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Kan ikke ringe dette nummeret"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ne/strings.xml b/java/com/android/dialer/dialpadview/res/values-ne/strings.xml index 713c6ad96..6369eb7fd 100644 --- a/java/com/android/dialer/dialpadview/res/values-ne/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ne/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"ब्याकस्पेस"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"जोड"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"भ्वाइसमेल"</string> + <string name="description_dial_button" msgid="6826108965053146374">"डायल गर्नुहोस्"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"भ्वाइसमेल जाँच गर्न पहिले हवाइजहाज मोडलाई निष्क्रिय पार्नुहोस्।"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"भ्वाइसमेल सेट गर्न मेनु > सेटिङहरूमा जानुहोस्।"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"२ सेकन्डको पज थप्नुहोस्"</string> + <string name="add_wait" msgid="2278146476349811062">"प्रतीक्षाको समय थप्नुहोस्"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"टच टोन किप्याड प्रयोग गर्नुहोस्"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"जारी रहेको कलमा फर्किनुहोस्"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"कल थप्नुहोस्"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM कार्डबाट लोड हुँदै"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM कार्डका सम्पर्क ठेगानाहरू"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> मा कल गर्नुहोस्"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"यस नम्बरमा कल गर्न सकिँदैन"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-nl/strings.xml b/java/com/android/dialer/dialpadview/res/values-nl/strings.xml index c7e058409..19911a1fc 100644 --- a/java/com/android/dialer/dialpadview/res/values-nl/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-nl/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"voicemail"</string> + <string name="description_dial_button" msgid="6826108965053146374">"bellen"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Als je je voicemail wilt bellen, moet je eerst de vliegtuigmodus uitschakelen."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Voor het instellen van voicemail ga je naar Menu > Instellingen."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Pauze van 2 seconden toevoegen"</string> + <string name="add_wait" msgid="2278146476349811062">"Wachten toevoegen"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Toetsenblok voor toetsgeluid gebruiken"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Terug naar actieve oproep"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Oproep toevoegen"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Laden vanaf simkaart…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contacten op simkaart"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> bellen"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Kan dit nummer niet bellen"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-no/strings.xml b/java/com/android/dialer/dialpadview/res/values-no/strings.xml index c0756b25d..0f78eb7cf 100644 --- a/java/com/android/dialer/dialpadview/res/values-no/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-no/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"tilbaketast"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"pluss"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"talepost"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ring"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Du må slå av flymodus før du kan sjekke talepostkassen."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"For å konfigurere talepostfunksjonen, gå til Meny > Innstillinger."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Legg til pause på 2 sek."</string> + <string name="add_wait" msgid="2278146476349811062">"Legg til Vent"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Bruk tonetastatur"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Gå tilbake til aktiv samtale"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Nytt anrop"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Henter fra SIM-kort …"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakter på SIM-kort"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Ring <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Kan ikke ringe dette nummeret"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-pa/strings.xml b/java/com/android/dialer/dialpadview/res/values-pa/strings.xml index 66378e238..be5dc626f 100644 --- a/java/com/android/dialer/dialpadview/res/values-pa/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-pa/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"ਬੈਕਸਪੇਸ"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"ਪਲਸ"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ਵੌਇਸਮੇਲ"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ਡਾਇਲ ਕਰੋ"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"ਵੌਇਸਮੇਲ ਨੂੰ ਕਾਲ ਕਰਨ ਲਈ, ਪਹਿਲਾਂ ਜਹਾਜ਼ ਮੋਡ ਬੰਦ ਕਰੋ।"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"ਵੌਇਸਮੇਲ ਸਥਾਪਤ ਕਰਨ ਲਈ, ਮੀਨੂ > ਸੈਟਿੰਗਾਂ \'ਤੇ ਜਾਓ।"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2-ਸਕਿੰਟ ਦਾ ਵਿਰਾਮ ਸ਼ਾਮਲ ਕਰੋ"</string> + <string name="add_wait" msgid="2278146476349811062">"ਉਡੀਕ ਦਾ ਸਮਾਂ ਸ਼ਾਮਲ ਕਰੋ"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ਸਪਰੱਸ਼ ਧੁਨੀ ਕੀ-ਪੈਡ ਵਰਤੋ"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"ਜਾਰੀ ਕਾਲ \'ਤੇ ਵਾਪਸ ਜਾਓ"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"ਕਾਲ ਸ਼ਾਮਲ ਕਰੋ"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"ਸਿਮ ਕਾਰਡ ਤੋਂ ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"ਸਿਮ ਕਾਰਡ ਸੰਪਰਕ"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> ਨੂੰ ਕਾਲ ਕਰੋ"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ਇਸ ਨੰਬਰ \'ਤੇ ਕਾਲ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-pl/strings.xml b/java/com/android/dialer/dialpadview/res/values-pl/strings.xml index b91c2c3d4..e3045b32f 100644 --- a/java/com/android/dialer/dialpadview/res/values-pl/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-pl/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"usuń"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"poczta głosowa"</string> + <string name="description_dial_button" msgid="6826108965053146374">"wybierz numer"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Aby połączyć się z pocztą głosową, najpierw wyłącz tryb samolotowy."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Aby skonfigurować pocztę głosową, kliknij Menu > Ustawienia."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Dodaj 2-sekundową pauzę"</string> + <string name="add_wait" msgid="2278146476349811062">"Dodaj oczekiwanie"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Użyj klawiatury tonowej"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Wróć do aktywnego połączenia"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Dodaj połączenie"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Wczytuję z karty SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakty z karty SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Zadzwoń: <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Nie można zadzwonić pod ten numer"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-pt-rBR/strings.xml b/java/com/android/dialer/dialpadview/res/values-pt-rBR/strings.xml index f5d6b9767..dc530fbd7 100644 --- a/java/com/android/dialer/dialpadview/res/values-pt-rBR/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-pt-rBR/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"voltar"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"mais"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"correio de voz"</string> + <string name="description_dial_button" msgid="6826108965053146374">"discar"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Para ligar para o correio de voz, primeiro desative o modo avião."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Para configurar o correio de voz, acesse Menu > Configurações."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Adicionar pausa de 2 segundos"</string> + <string name="add_wait" msgid="2278146476349811062">"Adicionar espera"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Usar teclado multifrequencial"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Retornar para a chamada em espera"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Adicionar chamada"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Carregando do cartão SIM..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contatos do cartão SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Ligar para <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Não é possível ligar para este número"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-pt-rPT/strings.xml b/java/com/android/dialer/dialpadview/res/values-pt-rPT/strings.xml index 8d98b07ba..aa3989272 100644 --- a/java/com/android/dialer/dialpadview/res/values-pt-rPT/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-pt-rPT/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"retrocesso"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"mais"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"mensagem de correio de voz"</string> + <string name="description_dial_button" msgid="6826108965053146374">"marcar"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Para efetuar uma chamada para o correio de voz, desative primeiro o modo de avião."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Para configurar o correio de voz, aceda a Menu > Definições."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Adicionar pausa de 2 seg."</string> + <string name="add_wait" msgid="2278146476349811062">"Adicionar espera"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Utilizar teclado numérico com tons de toque"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Voltar à chamada em curso"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Adic. cham."</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"A carregar a partir do cartão SIM..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contactos do cartão SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Telefonar para <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Não é possível ligar para este número"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-pt/strings.xml b/java/com/android/dialer/dialpadview/res/values-pt/strings.xml index f5d6b9767..dc530fbd7 100644 --- a/java/com/android/dialer/dialpadview/res/values-pt/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-pt/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"voltar"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"mais"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"correio de voz"</string> + <string name="description_dial_button" msgid="6826108965053146374">"discar"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Para ligar para o correio de voz, primeiro desative o modo avião."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Para configurar o correio de voz, acesse Menu > Configurações."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Adicionar pausa de 2 segundos"</string> + <string name="add_wait" msgid="2278146476349811062">"Adicionar espera"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Usar teclado multifrequencial"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Retornar para a chamada em espera"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Adicionar chamada"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Carregando do cartão SIM..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Contatos do cartão SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Ligar para <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Não é possível ligar para este número"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ro/strings.xml b/java/com/android/dialer/dialpadview/res/values-ro/strings.xml index 96075062e..87f48361d 100644 --- a/java/com/android/dialer/dialpadview/res/values-ro/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ro/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"tasta backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"mesaj vocal"</string> + <string name="description_dial_button" msgid="6826108965053146374">"apelați"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Pentru a apela mesageria vocală, mai întâi dezactivați modul Avion."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Pentru a configura mesageria vocală, accesați Meniu > Setări."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Adăugați o pauză de 2 secunde"</string> + <string name="add_wait" msgid="2278146476349811062">"Adăugați interval de așteptare"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Tastatura tactilă cu sunet"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Reveniți la apelul în curs"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Adăugați un apel"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Se încarcă de pe cardul SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Agenda de pe cardul SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Apelați <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Nu puteți apela acest număr"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ru/strings.xml b/java/com/android/dialer/dialpadview/res/values-ru/strings.xml index 5f1721d0b..24dd23c44 100644 --- a/java/com/android/dialer/dialpadview/res/values-ru/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ru/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"клавиша Backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"плюс"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"голосовая почта"</string> + <string name="description_dial_button" msgid="6826108965053146374">"набор номера"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Сначала отключите режим полета."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Чтобы настроить голосовую почту, выберите \"Меню > Настройки\"."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Добавить двухсекундную паузу"</string> + <string name="add_wait" msgid="2278146476349811062">"Добавить паузу"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Открыть панель тонального набора"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Вернуться к текущему вызову"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Добавить вызов"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Загрузка с SIM-карты…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Контакты на SIM-карте"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Позвонить: <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"На этот номер нельзя позвонить"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-si/strings.xml b/java/com/android/dialer/dialpadview/res/values-si/strings.xml index 54ba2d712..f9c65b2a0 100644 --- a/java/com/android/dialer/dialpadview/res/values-si/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-si/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace බොත්තම"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"ධන"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"හඬ තැපෑල"</string> + <string name="description_dial_button" msgid="6826108965053146374">"අමතන්න"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"හඬ තැපෑල ඇමතීමට, මුලින්ම ගුවන්යානා ප්රකාරය වසන්න."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"හඬ තැපෑල පිහිටුවීමට, මෙනුව > සැකසීම් වෙත යන්න."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"තත්පර 2ක විරාමයක් එක් කරන්න"</string> + <string name="add_wait" msgid="2278146476349811062">"රැඳී සිටීම එක් කරන්න"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ස්පර්ශ නාද යතුරුපෑඩය භාවිතා කරන්න"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"පවතින ඇමතුමට නැවත යන්න"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"ඇමතුම එක් කරන්න"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM කාඩ්පතෙන් පූරණය කරමින්…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM කාඩ්පත් සම්බන්ධතා"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> අමතන්න"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"මෙම අංකයට ඇමතිය නොහැකිය"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-sk/strings.xml b/java/com/android/dialer/dialpadview/res/values-sk/strings.xml index ed584ce82..f8d2ae63c 100644 --- a/java/com/android/dialer/dialpadview/res/values-sk/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-sk/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"spätné mazanie"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"hlasová správa"</string> + <string name="description_dial_button" msgid="6826108965053146374">"vytáčanie"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Ak chcete volať hlasovú schránku, najprv vypnite režim v lietadle."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Ak chcete nastaviť hlasovú schránku, prejdite na ponuku > Nastavenia."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Pridať dvojsekundovú pauzu"</string> + <string name="add_wait" msgid="2278146476349811062">"Pridať čakanie"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Použiť dotykovú tónovú klávesnicu"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Vrátiť sa k prebiehajúcemu hovoru"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Pridať hovor"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Načítava sa zo SIM karty..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakty na SIM karte"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Volať na číslo <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Na toto číslo sa nedá zavolať"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-sl/strings.xml b/java/com/android/dialer/dialpadview/res/values-sl/strings.xml index 795a023a7..e406034bb 100644 --- a/java/com/android/dialer/dialpadview/res/values-sl/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-sl/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"vračalka"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"sporočilo v odzivniku"</string> + <string name="description_dial_button" msgid="6826108965053146374">"pokliči"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Če želite poklicati odzivnik, najprej izklopite način za letalo."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Če želite nastaviti odzivnik, odprite »Meni« > »Nastavitve«."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Dodaj 2 sekundi premora"</string> + <string name="add_wait" msgid="2278146476349811062">"Dodaj čakanje"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Uporabi številčnico za tonsko izbiranje"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Nazaj na klic, ki poteka"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Dodaj klic"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Nalaganje s kartice SIM …"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Stiki na kartici SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Pokliči <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Te številke ni mogoče poklicati"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-sq/strings.xml b/java/com/android/dialer/dialpadview/res/values-sq/strings.xml index 7eb6af5c6..fd112593d 100644 --- a/java/com/android/dialer/dialpadview/res/values-sq/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-sq/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"kthim prapa"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"postë zanore"</string> + <string name="description_dial_button" msgid="6826108965053146374">"formo numrin"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Për të telefonuar postën zanore, në fillim çaktivizo modalitetin \"në aeroplan\"."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Për të konfiguruar postën zanore, shko te \"Menyja\" > \"Cilësimet\"."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Shto një ndërprerje 2-sekondëshe"</string> + <string name="add_wait" msgid="2278146476349811062">"Shto një pritje"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Përdor bllokun e tasteve me prekje"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Kthehu te telefonata në vazhdim"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Shto telefonatë"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Po ngarkon nga karta SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontaktet e kartës SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Telefono <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Ky numër nuk mund të telefonohet"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-sr/strings.xml b/java/com/android/dialer/dialpadview/res/values-sr/strings.xml index fc9d941c9..706881309 100644 --- a/java/com/android/dialer/dialpadview/res/values-sr/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-sr/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"плус"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"говорна пошта"</string> + <string name="description_dial_button" msgid="6826108965053146374">"бирајте број"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Да бисте позвали говорну пошту, прво искључите режим рада у авиону."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Да бисте подесили говорну пошту, идите у Мени > Подешавања."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Додај паузу од 2 секунде"</string> + <string name="add_wait" msgid="2278146476349811062">"Додај чекање"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Користи тастатуру за тонско бирање"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Назад у позив који је у току"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Додај позив"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Учитава се са SIM картице…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Контакти на SIM картици"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Позови <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Није могуће позвати овај број"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-sv/strings.xml b/java/com/android/dialer/dialpadview/res/values-sv/strings.xml index 7554b522f..00524a89d 100644 --- a/java/com/android/dialer/dialpadview/res/values-sv/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-sv/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backsteg"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"röstbrevlåda"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ring"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Om du vill ringa röstbrevlådan måste du först inaktivera flygplansläget."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Välj Meny > Inställningar om du vill konfigurera röstbrevlådan."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Lägg till en paus på 2 sek."</string> + <string name="add_wait" msgid="2278146476349811062">"Lägg till väntetid"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Använd tonvalstelefon"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Återvänd till pågående samtal"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Lägg till samtal"</string> + <string name="imei" msgid="7961343816043247280">"IMEI-kod"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Läser in från SIM-kort …"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Kontakter från SIM-kort"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Ring <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Det går inte att ringa det här numret"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-sw/strings.xml b/java/com/android/dialer/dialpadview/res/values-sw/strings.xml index 84479f0fa..98ed9cea8 100644 --- a/java/com/android/dialer/dialpadview/res/values-sw/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-sw/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"nafasi ya nyuma"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"jumlisha"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ujumbe wa sauti"</string> + <string name="description_dial_button" msgid="6826108965053146374">"piga simu"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Ili usikilize ujumbe wa sauti, kwanza zima Hali ya Ndegeni."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Ili uweke mipangilio ya ujumbe wa sauti, nenda kwenye Menyu > Mipangilio."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Ongeza usitishaji wa sekunde 2"</string> + <string name="add_wait" msgid="2278146476349811062">"Ongeza muda wa kusubiri"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Tumia kibao cha kuchapa cha sauti na kugusa"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Rudi kwenye simu inayoendelea"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Ongeza simu"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Inapakia kutoka kwenye SIM kadi…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Anwani za SIM kadi"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Piga simu <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Haiwezi kupiga simu kwa nambari hii"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ta/strings.xml b/java/com/android/dialer/dialpadview/res/values-ta/strings.xml index aad784b58..667010db6 100644 --- a/java/com/android/dialer/dialpadview/res/values-ta/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ta/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"பேக்ஸ்பேஸ்"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"பிளஸ்"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"குரலஞ்சல்"</string> + <string name="description_dial_button" msgid="6826108965053146374">"டயல் பொத்தான்"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"குரலஞ்சலை அழைக்க, முதலில் விமானப் பயன்முறையை முடக்கவும்."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"குரலஞ்சலை அமைக்க, மெனு > அமைப்புகள் என்பதற்குச் செல்லவும்."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 வினாடி இடைநிறுத்தத்தைச் சேர்"</string> + <string name="add_wait" msgid="2278146476349811062">"காத்திருப்பைச் சேர்"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"டச் டோன் விசைத்தளத்தைப் பயன்படுத்து"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"செயலிலுள்ள அழைப்பிற்குத் திரும்பு"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"அழைப்பைச் சேர்"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"சிம் கார்டிலிருந்து ஏற்றுகிறது…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"சிம் கார்டு தொடர்புகள்"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> எண்ணை அழை"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"இந்த எண்ணை அழைக்க முடியாது"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-te/strings.xml b/java/com/android/dialer/dialpadview/res/values-te/strings.xml index eced150a0..5e24667aa 100644 --- a/java/com/android/dialer/dialpadview/res/values-te/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-te/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"బ్యాక్స్పేస్"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"కూడిక"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"వాయిస్ మెయిల్"</string> + <string name="description_dial_button" msgid="6826108965053146374">"డయల్ చేయండి"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"వాయిస్ మెయిల్ కాల్ చేయడానికి, మొదట విమానం మోడ్ను ఆపివేయండి."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"వాయిస్ మెయిల్ సెటప్ చేయడానికి, మెను > సెట్టింగ్లకు వెళ్లండి."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2-సెకన్ల పాజ్ను జోడించండి"</string> + <string name="add_wait" msgid="2278146476349811062">"నిరీక్షణ సమయాన్ని జోడించండి"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"టచ్ టోన్ కీప్యాడ్ను ఉపయోగించండి"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"ప్రస్తుతం నడుస్తున్న కాల్కు తిరిగి వెళ్లండి"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"కాల్ జోడించండి"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"సిమ్ కార్డు నుండి లోడ్ చేస్తోంది…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM కార్డ్ పరిచయాలు"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g>కు కాల్ చేయండి"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ఈ నంబర్కు కాల్ చేయలేరు"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-th/strings.xml b/java/com/android/dialer/dialpadview/res/values-th/strings.xml index db2c4959e..bb4cabd70 100644 --- a/java/com/android/dialer/dialpadview/res/values-th/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-th/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"ลบถอยหลัง"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"บวก"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ข้อความเสียง"</string> + <string name="description_dial_button" msgid="6826108965053146374">"หมุนหมายเลข"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"หากต้องการฟังข้อความเสียง ให้ปิดโหมดใช้งานบนเครื่องบินก่อน"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"หากต้องการตั้งค่าข้อความเสียง ให้ไปที่เมนู > การตั้งค่า"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"เพิ่มช่วงคั่น 2 วินาที"</string> + <string name="add_wait" msgid="2278146476349811062">"เพิ่มการรอ"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ใช้ปุ่มกดสัญญาณเสียง"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"กลับไปคุยสายต่อ"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"เพิ่มการโทร"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"กำลังโหลดจากซิมการ์ด…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"รายชื่อติดต่อในซิมการ์ด"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"โทร <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"ไม่สามารถโทรไปยังหมายเลขนี้"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-tl/strings.xml b/java/com/android/dialer/dialpadview/res/values-tl/strings.xml index 223f81e06..d23823e16 100644 --- a/java/com/android/dialer/dialpadview/res/values-tl/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-tl/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"plus"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"voicemail"</string> + <string name="description_dial_button" msgid="6826108965053146374">"mag-dial"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Upang tumawag sa voicemail, i-off muna ang Airplane mode."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Upang mag-set up ng voicemail, pumunta sa Menu > Mga Setting."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Magdagdag ng pag-pause na 2-seg"</string> + <string name="add_wait" msgid="2278146476349811062">"Magdagdag ng paghihintay"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Gumamit ng touch tone na keypad"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Bumalik sa kasalukuyang tawag"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Magdagdag ng tawag"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Naglo-load mula sa SIM card…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Mga contact sa SIM card"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Tawagan ang <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Hindi matawagan ang numerong ito"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-tr/strings.xml b/java/com/android/dialer/dialpadview/res/values-tr/strings.xml index ae8151178..b7b85013c 100644 --- a/java/com/android/dialer/dialpadview/res/values-tr/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-tr/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"geri tuşu"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"artı"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"sesli mesaj"</string> + <string name="description_dial_button" msgid="6826108965053146374">"telefonu arar"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Sesli mesajı aramak için öncelikle Uçak modunu kapatın."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Sesli mesajı yapılandırmak için Menü > Ayarlar\'a gidin."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 saniyelik duraklama ekle"</string> + <string name="add_wait" msgid="2278146476349811062">"Bekleme ekle"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Telefon tuş takımını kullan"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Devam eden çağrıya dön"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Çağrı ekle"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM karttan yükleniyor…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM kart kişileri"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Telefon et: <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Bu numara aranamaz"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-uk/strings.xml b/java/com/android/dialer/dialpadview/res/values-uk/strings.xml index 7841c4ca6..c862fcedf 100644 --- a/java/com/android/dialer/dialpadview/res/values-uk/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-uk/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"видалення символів перед курсором"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"плюс"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"голосова пошта"</string> + <string name="description_dial_button" msgid="6826108965053146374">"дзвонити"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Щоб перевірити голосову пошту, спочатку вимкніть режим польоту."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Щоб налаштувати голосову пошту, перейдіть у Меню > Налаштування."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Додати 2-секундну паузу"</string> + <string name="add_wait" msgid="2278146476349811062">"Додати паузу"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Використовувати тональний набір"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Повернутися до поточного виклику"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Додати виклик"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Завантаження із SIM-карти…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Контакти із SIM-карти"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Зателефонувати на номер <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Не можна телефонувати на цей номер"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-ur/strings.xml b/java/com/android/dialer/dialpadview/res/values-ur/strings.xml index 6a537be9b..a7db8ec2b 100644 --- a/java/com/android/dialer/dialpadview/res/values-ur/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-ur/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"بیک اسپیس"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"جمع"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"صوتی میل"</string> + <string name="description_dial_button" msgid="6826108965053146374">"ڈائل کریں"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"صوتی میل کو کال کرنے کیلئے، پہلے ہوائی جہاز طرز آف کریں۔"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"صوتی میل سیٹ کرنے کے لئے، مینو > ترتیبات میں جائیں۔"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 سیکنڈ کا توقف شامل کریں"</string> + <string name="add_wait" msgid="2278146476349811062">"انتظار شامل کریں"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"ٹچ ٹون کی پیڈ کا استعمال کریں"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"جاری کال پر واپس لوٹیں"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"کال شامل کریں"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM کارڈ سے لوڈ ہو رہا ہے…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM کارڈ کے رابطے"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> کو کال کریں"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"اس نمبر پر کال نہیں کر سکتے"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-uz/strings.xml b/java/com/android/dialer/dialpadview/res/values-uz/strings.xml index 6985893d7..2230c2c1e 100644 --- a/java/com/android/dialer/dialpadview/res/values-uz/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-uz/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"orqaga"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"qo‘shuv belgisi"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ovozli pochta"</string> + <string name="description_dial_button" msgid="6826108965053146374">"raqam terish"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Ovozli pochtaga qo‘ng‘iroq qilish uchun parvoz rejimidan chiqing."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Ovozli pochtani sozlab olish uchun Menyu > Sozlamalarga o‘ting."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"2 soniyalik pauza qo‘shish"</string> + <string name="add_wait" msgid="2278146476349811062">"Pauza qo‘shish"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Tovushli raqam tergichni ochish"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Davom etayotgan chaqiruvga qaytish"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Chaqiruv qo‘shish"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"SIM kartadan yuklanmoqda…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM kartadagi kontaktlar"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"<xliff:g id="NUMBER">%s</xliff:g> raqamiga qo‘ng‘iroq qilish"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Bu raqamga qo‘ng‘iroq qilib bo‘lmaydi"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-vi/strings.xml b/java/com/android/dialer/dialpadview/res/values-vi/strings.xml index e68a0b5da..5022e79ec 100644 --- a/java/com/android/dialer/dialpadview/res/values-vi/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-vi/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"phím lùi"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"cộng"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"thư thoại"</string> + <string name="description_dial_button" msgid="6826108965053146374">"quay số"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Để gọi thư thoại, trước tiên hãy tắt Chế độ trên máy bay."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Để thiết lập thư thoại, hãy đi tới Menu > Cài đặt."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Thêm tạm dừng 2 giây"</string> + <string name="add_wait" msgid="2278146476349811062">"Thêm chờ"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Sử dụng bàn phím số cảm ứng có âm"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Quay lại cuộc gọi đang thực hiện"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Thêm cuộc gọi"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Đang tải từ thẻ SIM…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"Danh bạ trên thẻ SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Gọi <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Không thể gọi số này"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-zh-rCN/strings.xml b/java/com/android/dialer/dialpadview/res/values-zh-rCN/strings.xml index 262362dd9..8d50e8ec3 100644 --- a/java/com/android/dialer/dialpadview/res/values-zh-rCN/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-zh-rCN/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"删除"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"加号"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"语音邮件"</string> + <string name="description_dial_button" msgid="6826108965053146374">"拨号"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"要呼叫语音信箱,请先关闭飞行模式。"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"要设置语音信箱,请转到“菜单”>“设置”。"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"加入 2 秒暂停时间"</string> + <string name="add_wait" msgid="2278146476349811062">"加入等待时间"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"使用按键式键盘"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"返回正在进行的通话"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"添加通话"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"正从 SIM 卡中加载…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM 卡联系人"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"拨打 <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"无法拨打此号码"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-zh-rHK/strings.xml b/java/com/android/dialer/dialpadview/res/values-zh-rHK/strings.xml index e7bc60682..320217b3e 100644 --- a/java/com/android/dialer/dialpadview/res/values-zh-rHK/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-zh-rHK/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"退格鍵"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"加號"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"留言"</string> + <string name="description_dial_button" msgid="6826108965053146374">"撥號"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"如要致電留言信箱,請先關閉飛行模式。"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"如要設定留言信箱,請移至 [選單] > [設定]。"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"新增 2 秒暫停功能"</string> + <string name="add_wait" msgid="2278146476349811062">"新增插播"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"使用觸控音頻鍵盤"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"返回進行中的通話"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"新增通話"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"正在從 SIM 卡載入…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM 卡聯絡人"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"撥打 <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"無法撥打此號碼"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-zh-rTW/strings.xml b/java/com/android/dialer/dialpadview/res/values-zh-rTW/strings.xml index 21d2b8b1b..b87048f3c 100644 --- a/java/com/android/dialer/dialpadview/res/values-zh-rTW/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-zh-rTW/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"Backspace 鍵"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"加號"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"語音留言"</string> + <string name="description_dial_button" msgid="6826108965053146374">"撥號"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"如要撥打語音信箱聽取留言,請先關閉飛航模式。"</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"如要設定語音信箱,請依序前往 [選單] > [設定]。"</string> + <string name="add_2sec_pause" msgid="395591627218789322">"新增 2 秒暫停功能"</string> + <string name="add_wait" msgid="2278146476349811062">"新增插播功能"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"使用觸控音鍵盤"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"返回進行中的通話"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"新增通話"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"正在從 SIM 卡載入…"</string> + <string name="simContacts_title" msgid="8972942600800349990">"SIM 卡聯絡人"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"撥打 <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"無法撥打這個號碼"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values-zu/strings.xml b/java/com/android/dialer/dialpadview/res/values-zu/strings.xml index 458781f4a..6b1c5f5d7 100644 --- a/java/com/android/dialer/dialpadview/res/values-zu/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values-zu/strings.xml @@ -22,4 +22,18 @@ <string name="description_delete_button" msgid="8431313818404527096">"i-backspace"</string> <string name="description_image_button_plus" msgid="8936338119824589388">"hlanganisa"</string> <string name="description_voicemail_button" msgid="4187006295368768215">"ivoyisimeyili"</string> + <string name="description_dial_button" msgid="6826108965053146374">"dayela"</string> + <string name="dialog_voicemail_airplane_mode_message" msgid="1728176091017802282">"Ukushayela i-voicemail, vala kuqala imodi Yendiza."</string> + <string name="dialog_voicemail_not_ready_message" msgid="4287602816589585704">"Ukuya emyalezweni wephimbo, yana ezisethweni > zemenyu."</string> + <string name="add_2sec_pause" msgid="395591627218789322">"Faka ukumisa okwesikhashana kwamasekhondi angu-2"</string> + <string name="add_wait" msgid="2278146476349811062">"Yengeza ukulinda"</string> + <string name="dialer_useDtmfDialpad" msgid="6919241568926709507">"Sebenzisa ikhiphedi yethoni yokuthinta"</string> + <string name="dialer_returnToInCallScreen" msgid="4111111633248125741">"Buyela kukholi eqhubekayo"</string> + <string name="dialer_addAnotherCall" msgid="6842534741272651900">"Engeza ikholi"</string> + <string name="imei" msgid="7961343816043247280">"IMEI"</string> + <string name="meid" msgid="5274167198744847659">"MEID"</string> + <string name="simContacts_emptyLoading" msgid="4158651660353159679">"Ilayisha kusuka ekhadini le-SIM..."</string> + <string name="simContacts_title" msgid="8972942600800349990">"Othintana nabo bekhadi le-SIM"</string> + <string name="menu_callNumber" msgid="1898333075466418368">"Shayela <xliff:g id="NUMBER">%s</xliff:g>"</string> + <string name="dialog_phone_call_prohibited_message" msgid="4806479823793649894">"Ayikwazi ukushayela le nombolo"</string> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values/colors.xml b/java/com/android/dialer/dialpadview/res/values/colors.xml index d27468db7..8bea35710 100644 --- a/java/com/android/dialer/dialpadview/res/values/colors.xml +++ b/java/com/android/dialer/dialpadview/res/values/colors.xml @@ -17,11 +17,9 @@ <resources> <!-- Colors for the dialpad --> <color name="background_dialpad">#fcfcfc</color> - <color name="background_dialpad_pressed">#ececec</color> <color name="dialpad_primary_text_color">@color/dialer_theme_color</color> <color name="dialpad_secondary_text_color">#737373</color> <color name="dialpad_digits_text_color">#333</color> - <color name="dialpad_separator_line_color">#dadada</color> <color name="dialpad_icon_tint">#89000000</color> <color name="dialpad_voicemail_tint">#919191</color> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values/dimens.xml b/java/com/android/dialer/dialpadview/res/values/dimens.xml index 210c81697..1e5880a3e 100644 --- a/java/com/android/dialer/dialpadview/res/values/dimens.xml +++ b/java/com/android/dialer/dialpadview/res/values/dimens.xml @@ -16,7 +16,7 @@ <resources> <!-- Text dimensions for dialpad keys --> - <dimen name="dialpad_key_numbers_default_size">36sp</dimen> + <dimen name="dialpad_key_numbers_default_size">36dp</dimen> <dimen name="dialpad_key_letters_size">12sp</dimen> <dimen name="dialpad_key_pound_size">23sp</dimen> <dimen name="dialpad_key_star_size">36sp</dimen> @@ -25,17 +25,13 @@ <!-- Zero key should have less space between self and text because "+" is smaller --> <dimen name="dialpad_zero_key_number_default_margin_bottom">1dp</dimen> <dimen name="dialpad_symbol_margin_bottom">13dp</dimen> - <dimen name="dialpad_key_plus_size">18sp</dimen> - <dimen name="dialpad_horizontal_padding">5dp</dimen> <dimen name="dialpad_digits_text_size">34sp</dimen> <dimen name="dialpad_digits_text_min_size">24sp</dimen> <dimen name="dialpad_digits_height">60dp</dimen> <dimen name="dialpad_digits_padding">16dp</dimen> <dimen name="dialpad_digits_menu_left_padding">8dp</dimen> <dimen name="dialpad_digits_menu_right_padding">10dp</dimen> - <dimen name="dialpad_center_margin">3dp</dimen> - <dimen name="dialpad_button_margin">2dp</dimen> - <dimen name="dialpad_voicemail_icon_padding_top">2dp</dimen> + <dimen name="dialpad_voicemail_icon_size">18dp</dimen> <dimen name="dialpad_key_button_translate_y">100dp</dimen> <dimen name="dialpad_overflow_margin">8dp</dimen> <dimen name="dialpad_space_above_keys">14dp</dimen> @@ -45,4 +41,7 @@ <!-- Top/Bottom padding around the ILD rate display box. --> <dimen name="ild_margin_height">10dp</dimen> + + <!-- Length of dialpad's shadows in dialer. --> + <dimen name="shadow_length">10dp</dimen> </resources> diff --git a/java/com/android/dialer/dialpadview/res/values/strings.xml b/java/com/android/dialer/dialpadview/res/values/strings.xml index 920e6e25c..b3e92f1d9 100644 --- a/java/com/android/dialer/dialpadview/res/values/strings.xml +++ b/java/com/android/dialer/dialpadview/res/values/strings.xml @@ -14,7 +14,7 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License --> -<resources> +<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="dialpad_star_number" translatable="false">*</string> <string name="dialpad_pound_number" translatable="false">#</string> @@ -50,4 +50,61 @@ --> <string name="description_voicemail_button">voicemail</string> + <!-- String describing the Dial ImageButton + + Used by AccessibilityService to announce the purpose of the button. + --> + <string name="description_dial_button">dial</string> + + <!-- Dialog message which is shown when the user tries to check voicemail + while the system is in airplane mode. The user cannot access to + voicemail service in Airplane mode. [CHAR LIMI=NONE] --> + <string name="dialog_voicemail_airplane_mode_message">To call voicemail, first turn off Airplane mode.</string> + + <!-- Dialog message which is shown when the user tries to check voicemail + while the system isn't ready for the access. [CHAR LIMIT=NONE] --> + <string name="dialog_voicemail_not_ready_message">To set up voicemail, go to Menu > Settings.</string> + + <!-- Menu items for dialpad options as part of Pause and Wait ftr [CHAR LIMIT=30] --> + <string name="add_2sec_pause">Add 2-sec pause</string> + <string name="add_wait">Add wait</string> + + <!-- Item label: jump to the in-call DTMF dialpad. + (Part of a list of options shown in the dialer when another call + is already in progress.) --> + <string name="dialer_useDtmfDialpad">Use touch tone keypad</string> + + <!-- Item label: jump to the in-call UI. + (Part of a list of options shown in the dialer when another call + is already in progress.) --> + <string name="dialer_returnToInCallScreen">Return to call in progress</string> + + <!-- Item label: use the Dialer's keypad to add another call. + (Part of a list of options shown in the dialer when another call + is already in progress.) --> + <string name="dialer_addAnotherCall">Add call</string> + + <!-- The title of a dialog that displays the IMEI of the phone --> + <string name="imei">IMEI</string> + + <!-- The title of a dialog that displays the MEID of the CDMA phone --> + <string name="meid">MEID</string> + + <!-- Dialog text displayed when loading a phone number from the SIM card for speed dial --> + <string name="simContacts_emptyLoading">Loading from SIM card\u2026</string> + + <!-- Dialog title displayed when loading a phone number from the SIM card for speed dial --> + <string name="simContacts_title">SIM card contacts</string> + + <!-- Menu item used to call a contact, containing the number of the contact to call --> + <string name="menu_callNumber">Call <xliff:g id="number">%s</xliff:g></string> + + + <!-- Regular expression for prohibiting certain phone numbers in dialpad. + Ignored if empty. --> + <string name="config_prohibited_phone_number_regexp" translatable="false"></string> + + <!-- Dialog message which is shown when the user tries to make a phone call + to prohibited phone numbers [CHAR LIMIT=NONE] --> + <string msgid="4313552620858880999" name="dialog_phone_call_prohibited_message">Can\'t call this number</string> </resources> |