diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2017-05-15 23:21:05 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2017-05-15 23:21:06 +0000 |
commit | 0c9dbf507b53a12bdf577ff3e55c1686a2e089de (patch) | |
tree | 3849f2add85d7abe11151436b3f03f99783157a8 /java/com/android/dialer/app | |
parent | e724c7b6376be660abf2113f97c7cbfc34515da8 (diff) | |
parent | c857f90590e7d7fcffa89511982eb33afd34805f (diff) |
Merge "Update Dialer to v10 RC32" into oc-dev
Diffstat (limited to 'java/com/android/dialer/app')
104 files changed, 413 insertions, 205 deletions
diff --git a/java/com/android/dialer/app/DialtactsActivity.java b/java/com/android/dialer/app/DialtactsActivity.java index 3318c506d..6e2c6be7d 100644 --- a/java/com/android/dialer/app/DialtactsActivity.java +++ b/java/com/android/dialer/app/DialtactsActivity.java @@ -162,7 +162,6 @@ public class DialtactsActivity extends TransactionSafeActivity private static final int ACTIVITY_REQUEST_CODE_VOICE_SEARCH = 1; public static final int ACTIVITY_REQUEST_CODE_CALL_COMPOSE = 2; - public static final int ACTIVITY_REQUEST_CODE_LIGHTBRINGER = 3; private static final int FAB_SCALE_IN_DELAY_MS = 300; @@ -1489,7 +1488,7 @@ public class DialtactsActivity extends TransactionSafeActivity Menu menu = getMenu(); MenuItem clearFrequents = menu.findItem(R.id.menu_clear_frequents); clearFrequents.setVisible( - PermissionsUtil.hasContactsPermissions(DialtactsActivity.this) + PermissionsUtil.hasContactsReadPermissions(DialtactsActivity.this) && mListsFragment != null && mListsFragment.hasFrequents()); diff --git a/java/com/android/dialer/app/calllog/CallLogAdapter.java b/java/com/android/dialer/app/calllog/CallLogAdapter.java index b433e6529..2f8a58c8a 100644 --- a/java/com/android/dialer/app/calllog/CallLogAdapter.java +++ b/java/com/android/dialer/app/calllog/CallLogAdapter.java @@ -108,6 +108,9 @@ public class CallLogAdapter extends GroupingListAdapter public static final String LOAD_DATA_TASK_IDENTIFIER = "load_data"; + public static final String ENABLE_CALL_LOG_MULTI_SELECT = "enable_call_log_multiselect"; + public static final boolean ENABLE_CALL_LOG_MULTI_SELECT_FLAG = false; + protected final Activity mActivity; protected final VoicemailPlaybackPresenter mVoicemailPlaybackPresenter; /** Cache for repeated requests to Telecom/Telephony. */ @@ -228,7 +231,7 @@ public class CallLogAdapter extends GroupingListAdapter @Override public boolean onLongClick(View v) { if (ConfigProviderBindings.get(v.getContext()) - .getBoolean("enable_call_log_multiselect", true) + .getBoolean(ENABLE_CALL_LOG_MULTI_SELECT, ENABLE_CALL_LOG_MULTI_SELECT_FLAG) && mVoicemailPlaybackPresenter != null) { if (v.getId() == R.id.primary_action_view || v.getId() == R.id.quick_contact_photo) { if (mActionMode == null) { @@ -373,7 +376,7 @@ public class CallLogAdapter extends GroupingListAdapter mContactInfoCache = contactInfoCache; - if (!PermissionsUtil.hasContactsPermissions(activity)) { + if (!PermissionsUtil.hasContactsReadPermissions(activity)) { mContactInfoCache.disableRequestProcessing(); } diff --git a/java/com/android/dialer/app/calllog/CallLogFragment.java b/java/com/android/dialer/app/calllog/CallLogFragment.java index 874aeeac8..6e4b23fc1 100644 --- a/java/com/android/dialer/app/calllog/CallLogFragment.java +++ b/java/com/android/dialer/app/calllog/CallLogFragment.java @@ -200,9 +200,18 @@ public class CallLogFragment extends Fragment final ContentResolver resolver = activity.getContentResolver(); mCallLogQueryHandler = new CallLogQueryHandler(activity, resolver, this, mLogLimit); mKeyguardManager = (KeyguardManager) activity.getSystemService(Context.KEYGUARD_SERVICE); - resolver.registerContentObserver(CallLog.CONTENT_URI, true, mCallLogObserver); - resolver.registerContentObserver( - ContactsContract.Contacts.CONTENT_URI, true, mContactsObserver); + + if (PermissionsUtil.hasCallLogReadPermissions(getContext())) { + resolver.registerContentObserver(CallLog.CONTENT_URI, true, mCallLogObserver); + } else { + LogUtil.w("CallLogFragment.onCreate", "call log permission not available"); + } + if (PermissionsUtil.hasContactsReadPermissions(getContext())) { + resolver.registerContentObserver( + ContactsContract.Contacts.CONTENT_URI, true, mContactsObserver); + } else { + LogUtil.w("CallLogFragment.onCreate", "contacts permission not available."); + } setHasOptionsMenu(true); } @@ -494,7 +503,7 @@ public class CallLogFragment extends Fragment if (mKeyguardManager != null && !mKeyguardManager.inKeyguardRestrictedInputMode() && mCallTypeFilter == Calls.VOICEMAIL_TYPE) { - CallLogNotificationsQueryHelper.updateVoicemailNotifications(getActivity()); + CallLogNotificationsService.markNewVoicemailsAsOld(getActivity(), null); } } diff --git a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java index 278caba92..1daccd1a4 100644 --- a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java +++ b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java @@ -17,7 +17,6 @@ package com.android.dialer.app.calllog; import android.app.Activity; -import android.content.ActivityNotFoundException; import android.content.Context; import android.content.Intent; import android.content.res.Resources; @@ -45,7 +44,6 @@ import android.widget.ImageButton; import android.widget.ImageView; import android.widget.QuickContactBadge; import android.widget.TextView; -import android.widget.Toast; import com.android.contacts.common.ClipboardUtils; import com.android.contacts.common.ContactPhotoManager; import com.android.contacts.common.compat.PhoneNumberUtilsCompat; @@ -62,6 +60,7 @@ import com.android.dialer.blocking.FilteredNumbersUtil; import com.android.dialer.callcomposer.CallComposerActivity; import com.android.dialer.callcomposer.CallComposerContact; import com.android.dialer.calldetails.CallDetailsEntries; +import com.android.dialer.common.ConfigProviderBindings; import com.android.dialer.common.LogUtil; import com.android.dialer.compat.CompatUtils; import com.android.dialer.lightbringer.Lightbringer; @@ -258,7 +257,11 @@ public final class CallLogListItemViewHolder extends RecyclerView.ViewHolder } primaryActionButtonView.setOnClickListener(this); primaryActionView.setOnClickListener(mExpandCollapseListener); - if (mVoicemailPlaybackPresenter != null) { + if (mVoicemailPlaybackPresenter != null + && ConfigProviderBindings.get(mContext) + .getBoolean( + CallLogAdapter.ENABLE_CALL_LOG_MULTI_SELECT, + CallLogAdapter.ENABLE_CALL_LOG_MULTI_SELECT_FLAG)) { primaryActionView.setOnLongClickListener(longPressListener); quickContactView.setOnLongClickListener(longPressListener); } else { @@ -792,38 +795,17 @@ public final class CallLogListItemViewHolder extends RecyclerView.ViewHolder mVoicemailPlaybackPresenter.shareVoicemail(); } else { logCallLogAction(view.getId()); - final IntentProvider intentProvider = (IntentProvider) view.getTag(); - if (intentProvider == null) { - return; - } - - final Intent intent = intentProvider.getIntent(mContext); - // See IntentProvider.getCallDetailIntentProvider() for why this may be null. - if (intent == null) { - return; - } - - // We check to see if we are starting a Lightbringer intent. The reason is Lightbringer - // intents need to be started using startActivityForResult instead of the usual startActivity - String packageName = intent.getPackage(); - if (packageName != null && packageName.equals(getLightbringer().getPackageName(mContext))) { - startLightbringerActivity(intent); - } else { - DialerUtils.startActivityWithErrorToast(mContext, intent); + if (intentProvider != null) { + final Intent intent = intentProvider.getIntent(mContext); + // See IntentProvider.getCallDetailIntentProvider() for why this may be null. + if (intent != null) { + DialerUtils.startActivityWithErrorToast(mContext, intent); + } } } } - private void startLightbringerActivity(Intent intent) { - try { - Activity activity = (Activity) mContext; - activity.startActivityForResult(intent, DialtactsActivity.ACTIVITY_REQUEST_CODE_LIGHTBRINGER); - } catch (ActivityNotFoundException e) { - Toast.makeText(mContext, R.string.activity_not_available, Toast.LENGTH_SHORT).show(); - } - } - private CallComposerContact buildContact() { CallComposerContact.Builder contact = CallComposerContact.newBuilder(); contact.setPhotoId(info.photoId); diff --git a/java/com/android/dialer/app/calllog/CallLogNotificationsActivity.java b/java/com/android/dialer/app/calllog/CallLogNotificationsActivity.java index c08d2c02b..0b4da7521 100644 --- a/java/com/android/dialer/app/calllog/CallLogNotificationsActivity.java +++ b/java/com/android/dialer/app/calllog/CallLogNotificationsActivity.java @@ -57,7 +57,7 @@ public class CallLogNotificationsActivity extends AppCompatActivity { String action = intent.getAction(); switch (action) { case ACTION_SEND_SMS_FROM_MISSED_CALL_NOTIFICATION: - MissedCallNotifier.getInstance(this) + MissedCallNotifier.getIstance(this) .sendSmsFromMissedCall( intent.getStringExtra(EXTRA_MISSED_CALL_NUMBER), intent.getData()); break; diff --git a/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java b/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java index 4127d1f0b..e169b8de9 100644 --- a/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java +++ b/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java @@ -114,11 +114,6 @@ public class CallLogNotificationsQueryHelper { MissedCallNotifier.NOTIFICATION_TAG); } - /** Update the voice mail notifications. */ - public static void updateVoicemailNotifications(Context context) { - CallLogNotificationsService.updateVoicemailNotifications(context); - } - /** Create a new instance of {@link NewCallsQuery}. */ public static NewCallsQuery createNewCallsQuery( Context context, ContentResolver contentResolver) { diff --git a/java/com/android/dialer/app/calllog/CallLogNotificationsService.java b/java/com/android/dialer/app/calllog/CallLogNotificationsService.java index f67837f8a..7dfd2cb69 100644 --- a/java/com/android/dialer/app/calllog/CallLogNotificationsService.java +++ b/java/com/android/dialer/app/calllog/CallLogNotificationsService.java @@ -26,7 +26,6 @@ import android.support.annotation.Nullable; import com.android.dialer.common.LogUtil; import com.android.dialer.telecom.TelecomUtil; import com.android.dialer.util.PermissionsUtil; -import me.leolin.shortcutbadger.ShortcutBadger; /** * Provides operations for managing call-related notifications. @@ -47,17 +46,6 @@ public class CallLogNotificationsService extends IntentService { /** Action to mark all the new voicemails as old. */ public static final String ACTION_MARK_NEW_VOICEMAILS_AS_OLD = "com.android.dialer.calllog.ACTION_MARK_NEW_VOICEMAILS_AS_OLD"; - /** Action to update voicemail notifications. */ - public static final String ACTION_UPDATE_VOICEMAIL_NOTIFICATIONS = - "com.android.dialer.calllog.UPDATE_VOICEMAIL_NOTIFICATIONS"; - /** - * Action to update the missed call notifications. - * - * <p>Includes optional extras {@link #EXTRA_MISSED_CALL_NUMBER} and {@link - * #EXTRA_MISSED_CALL_COUNT}. - */ - public static final String ACTION_UPDATE_MISSED_CALL_NOTIFICATIONS = - "com.android.dialer.calllog.UPDATE_MISSED_CALL_NOTIFICATIONS"; /** Action to mark all the new missed calls as old. */ public static final String ACTION_MARK_NEW_MISSED_CALLS_AS_OLD = @@ -72,22 +60,6 @@ public class CallLogNotificationsService extends IntentService { "com.android.dialer.calllog.CALL_BACK_FROM_MISSED_CALL_NOTIFICATION"; /** - * Extra to be included with {@link #ACTION_UPDATE_MISSED_CALL_NOTIFICATIONS} and {@link - * #ACTION_CALL_BACK_FROM_MISSED_CALL_NOTIFICATION} to identify the number to display, call or - * text back. - * - * <p>It must be a {@link String}. - */ - public static final String EXTRA_MISSED_CALL_NUMBER = "MISSED_CALL_NUMBER"; - /** - * Extra to be included with {@link #ACTION_UPDATE_MISSED_CALL_NOTIFICATIONS} to represent the - * number of missed calls. - * - * <p>It must be a {@link Integer} - */ - public static final String EXTRA_MISSED_CALL_COUNT = "MISSED_CALL_COUNT"; - - /** * Extra to be included with {@link #ACTION_INCOMING_POST_CALL} to represent a post call note. * * <p>It must be a {@link String} @@ -109,40 +81,6 @@ public class CallLogNotificationsService extends IntentService { super("CallLogNotificationsService"); } - /** - * Updates notifications for any new voicemails. - * - * @param context a valid context. - */ - public static void updateVoicemailNotifications(Context context) { - if (!TelecomUtil.isDefaultDialer(context)) { - LogUtil.i( - "CallLogNotificationsService.updateVoicemailNotifications", - "not default dialer, ignoring voicemail notifications"); - return; - } - if (TelecomUtil.hasReadWriteVoicemailPermissions(context)) { - Intent serviceIntent = new Intent(context, CallLogNotificationsService.class); - serviceIntent.setAction(CallLogNotificationsService.ACTION_UPDATE_VOICEMAIL_NOTIFICATIONS); - context.startService(serviceIntent); - } - } - - /** - * Updates notifications for any new missed calls. - * - * @param context A valid context. - * @param count The number of new missed calls. - * @param number The phone number of the newest missed call. - */ - public static void updateMissedCallNotifications(Context context, int count, String number) { - Intent serviceIntent = new Intent(context, CallLogNotificationsService.class); - serviceIntent.setAction(CallLogNotificationsService.ACTION_UPDATE_MISSED_CALL_NOTIFICATIONS); - serviceIntent.putExtra(EXTRA_MISSED_CALL_COUNT, count); - serviceIntent.putExtra(EXTRA_MISSED_CALL_NUMBER, number); - context.startService(serviceIntent); - } - public static void insertPostCallNote(Context context, String number, String postCallNote) { Intent serviceIntent = new Intent(context, CallLogNotificationsService.class); serviceIntent.setAction(ACTION_INCOMING_POST_CALL); @@ -165,16 +103,6 @@ public class CallLogNotificationsService extends IntentService { context.startService(serviceIntent); } - public static boolean updateBadgeCount(Context context, int count) { - boolean success = ShortcutBadger.applyCount(context, count); - LogUtil.i( - "CallLogNotificationsService.updateBadgeCount", - "update badge count: %d success: %b", - count, - success); - return success; - } - @Override protected void onHandleIntent(Intent intent) { if (intent == null) { @@ -200,28 +128,21 @@ public class CallLogNotificationsService extends IntentService { mVoicemailQueryHandler.markNewVoicemailsAsOld(intent.getData()); }); break; - case ACTION_UPDATE_VOICEMAIL_NOTIFICATIONS: - DefaultVoicemailNotifier.getInstance(this).updateNotification(); - break; - case ACTION_UPDATE_MISSED_CALL_NOTIFICATIONS: - int count = intent.getIntExtra(EXTRA_MISSED_CALL_COUNT, UNKNOWN_MISSED_CALL_COUNT); - String number = intent.getStringExtra(EXTRA_MISSED_CALL_NUMBER); - MissedCallNotifier.getInstance(this).updateMissedCallNotification(count, number); - updateBadgeCount(this, count); - break; case ACTION_INCOMING_POST_CALL: String note = intent.getStringExtra(EXTRA_POST_CALL_NOTE); String phoneNumber = intent.getStringExtra(EXTRA_POST_CALL_NUMBER); - MissedCallNotifier.getInstance(this).insertPostCallNotification(phoneNumber, note); + MissedCallNotifier.getIstance(this).insertPostCallNotification(phoneNumber, note); break; case ACTION_MARK_NEW_MISSED_CALLS_AS_OLD: CallLogNotificationsQueryHelper.removeMissedCallNotifications(this, intent.getData()); TelecomUtil.cancelMissedCallsNotification(this); break; case ACTION_CALL_BACK_FROM_MISSED_CALL_NOTIFICATION: - MissedCallNotifier.getInstance(this) + MissedCallNotifier.getIstance(this) .callBackFromMissedCall( - intent.getStringExtra(EXTRA_MISSED_CALL_NUMBER), intent.getData()); + intent.getStringExtra( + MissedCallNotificationReceiver.EXTRA_NOTIFICATION_PHONE_NUMBER), + intent.getData()); break; default: LogUtil.d("CallLogNotificationsService.onHandleIntent", "could not handle: " + intent); diff --git a/java/com/android/dialer/app/calllog/CallLogReceiver.java b/java/com/android/dialer/app/calllog/CallLogReceiver.java index 8fd1502bc..172d00100 100644 --- a/java/com/android/dialer/app/calllog/CallLogReceiver.java +++ b/java/com/android/dialer/app/calllog/CallLogReceiver.java @@ -38,9 +38,11 @@ public class CallLogReceiver extends BroadcastReceiver { public void onReceive(Context context, Intent intent) { if (VoicemailContract.ACTION_NEW_VOICEMAIL.equals(intent.getAction())) { checkVoicemailStatus(context); - CallLogNotificationsService.updateVoicemailNotifications(context); + PendingResult pendingResult = goAsync(); + DefaultVoicemailNotifier.updateVoicemailNotifications(context, pendingResult::finish); } else if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) { - CallLogNotificationsService.updateVoicemailNotifications(context); + PendingResult pendingResult = goAsync(); + DefaultVoicemailNotifier.updateVoicemailNotifications(context, pendingResult::finish); } else { LogUtil.w("CallLogReceiver.onReceive", "could not handle: " + intent); } diff --git a/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java b/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java index d67f12266..58fe6fa2c 100644 --- a/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java +++ b/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java @@ -54,17 +54,20 @@ import com.android.dialer.blocking.FilteredNumbersUtil; import com.android.dialer.calllogutils.PhoneAccountUtils; import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; +import com.android.dialer.common.concurrent.DialerExecutor.Worker; +import com.android.dialer.common.concurrent.DialerExecutors; import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; import com.android.dialer.notification.NotificationChannelManager; import com.android.dialer.notification.NotificationChannelManager.Channel; import com.android.dialer.phonenumbercache.ContactInfo; +import com.android.dialer.telecom.TelecomUtil; import java.util.Iterator; import java.util.List; import java.util.Map; /** Shows a voicemail notification in the status bar. */ -public class DefaultVoicemailNotifier { +public class DefaultVoicemailNotifier implements Worker<Void, Void> { public static final String TAG = "VoicemailNotifier"; @@ -90,14 +93,20 @@ public class DefaultVoicemailNotifier { this.filteredNumberAsyncQueryHandler = filteredNumberAsyncQueryHandler; } - /** Returns an instance of {@link DefaultVoicemailNotifier}. */ - public static DefaultVoicemailNotifier getInstance(Context context) { - return new DefaultVoicemailNotifier( + public DefaultVoicemailNotifier(Context context) { + this( context, CallLogNotificationsQueryHelper.getInstance(context), new FilteredNumberAsyncQueryHandler(context)); } + @Nullable + @Override + public Void doInBackground(@Nullable Void input) throws Throwable { + updateNotification(); + return null; + } + /** * Updates the notification and notifies of the call with the given URI. * @@ -106,8 +115,9 @@ public class DefaultVoicemailNotifier { * * <p>It is not safe to call this method from the main thread. */ + @VisibleForTesting @WorkerThread - public void updateNotification() { + void updateNotification() { Assert.isWorkerThread(); // Lookup the list of new voicemails to include in the notification. final List<NewCall> newCalls = queryHelper.getNewVoicemails(); @@ -178,6 +188,10 @@ public class DefaultVoicemailNotifier { .setGroupSummary(true) .setContentIntent(newVoicemailIntent(null)); + if (BuildCompat.isAtLeastO()) { + groupSummary.setGroupAlertBehavior(Notification.GROUP_ALERT_CHILDREN); + } + NotificationChannelManager.applyChannel( groupSummary, context, @@ -392,4 +406,41 @@ public class DefaultVoicemailNotifier { intent.putExtra(DialtactsActivity.EXTRA_CLEAR_NEW_VOICEMAILS, true); return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); } + + /** + * Updates the voicemail notifications displayed. + * + * @param runnable Called when the async update task completes no matter if it succeeds or fails. + * May be null. + */ + static void updateVoicemailNotifications(Context context, Runnable runnable) { + if (!TelecomUtil.isDefaultDialer(context)) { + LogUtil.i( + "DefaultVoicemailNotifier.updateVoicemailNotifications", + "not default dialer, not scheduling update to voicemail notifications"); + return; + } + + DialerExecutors.createNonUiTaskBuilder(new DefaultVoicemailNotifier(context)) + .onSuccess( + output -> { + LogUtil.i( + "DefaultVoicemailNotifier.updateVoicemailNotifications", + "update voicemail notifications successful"); + if (runnable != null) { + runnable.run(); + } + }) + .onFailure( + throwable -> { + LogUtil.i( + "DefaultVoicemailNotifier.updateVoicemailNotifications", + "update voicemail notifications failed"); + if (runnable != null) { + runnable.run(); + } + }) + .build() + .executeParallel(null); + } } diff --git a/java/com/android/dialer/app/calllog/MissedCallNotificationReceiver.java b/java/com/android/dialer/app/calllog/MissedCallNotificationReceiver.java index 3a202034e..65bb6fa57 100644 --- a/java/com/android/dialer/app/calllog/MissedCallNotificationReceiver.java +++ b/java/com/android/dialer/app/calllog/MissedCallNotificationReceiver.java @@ -13,11 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package com.android.dialer.app.calllog; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; +import android.support.v4.util.Pair; +import com.android.dialer.common.LogUtil; +import com.android.dialer.common.concurrent.DialerExecutors; +import me.leolin.shortcutbadger.ShortcutBadger; /** * Receives broadcasts that should trigger a refresh of the missed call notification. This includes @@ -44,7 +49,36 @@ public class MissedCallNotificationReceiver extends BroadcastReceiver { int count = intent.getIntExtra( EXTRA_NOTIFICATION_COUNT, CallLogNotificationsService.UNKNOWN_MISSED_CALL_COUNT); - String number = intent.getStringExtra(EXTRA_NOTIFICATION_PHONE_NUMBER); - CallLogNotificationsService.updateMissedCallNotifications(context, count, number); + String phoneNumber = intent.getStringExtra(EXTRA_NOTIFICATION_PHONE_NUMBER); + + PendingResult pendingResult = goAsync(); + + DialerExecutors.createNonUiTaskBuilder(MissedCallNotifier.getIstance(context)) + .onSuccess( + output -> { + LogUtil.i( + "MissedCallNotificationReceiver.onReceive", + "update missed call notifications successful"); + updateBadgeCount(context, count); + pendingResult.finish(); + }) + .onFailure( + throwable -> { + LogUtil.i( + "MissedCallNotificationReceiver.onReceive", + "update missed call notifications failed"); + pendingResult.finish(); + }) + .build() + .executeParallel(new Pair<>(count, phoneNumber)); + } + + private static void updateBadgeCount(Context context, int count) { + boolean success = ShortcutBadger.applyCount(context, count); + LogUtil.i( + "MissedCallNotificationReceiver.updateBadgeCount", + "update badge count: %d success: %b", + count, + success); } } diff --git a/java/com/android/dialer/app/calllog/MissedCallNotifier.java b/java/com/android/dialer/app/calllog/MissedCallNotifier.java index de07bb437..dd13298bc 100644 --- a/java/com/android/dialer/app/calllog/MissedCallNotifier.java +++ b/java/com/android/dialer/app/calllog/MissedCallNotifier.java @@ -31,6 +31,7 @@ import android.support.annotation.Nullable; import android.support.annotation.VisibleForTesting; import android.support.annotation.WorkerThread; import android.support.v4.os.UserManagerCompat; +import android.support.v4.util.Pair; import android.text.BidiFormatter; import android.text.TextDirectionHeuristics; import android.text.TextUtils; @@ -44,6 +45,7 @@ import com.android.dialer.app.list.DialtactsPagerAdapter; import com.android.dialer.callintent.CallInitiationType; import com.android.dialer.callintent.CallIntentBuilder; import com.android.dialer.common.LogUtil; +import com.android.dialer.common.concurrent.DialerExecutor.Worker; import com.android.dialer.notification.NotificationChannelManager; import com.android.dialer.notification.NotificationChannelManager.Channel; import com.android.dialer.phonenumbercache.ContactInfo; @@ -55,7 +57,7 @@ import java.util.List; import java.util.Set; /** Creates a notification for calls that the user missed (neither answered nor rejected). */ -public class MissedCallNotifier { +public class MissedCallNotifier implements Worker<Pair<Integer, String>, Void> { /** The tag used to identify notifications from this class. */ static final String NOTIFICATION_TAG = "MissedCallNotifier"; @@ -72,11 +74,15 @@ public class MissedCallNotifier { this.callLogNotificationsQueryHelper = callLogNotificationsQueryHelper; } - /** Returns an instance of {@link MissedCallNotifier}. */ - public static MissedCallNotifier getInstance(Context context) { - CallLogNotificationsQueryHelper callLogNotificationsQueryHelper = - CallLogNotificationsQueryHelper.getInstance(context); - return new MissedCallNotifier(context, callLogNotificationsQueryHelper); + static MissedCallNotifier getIstance(Context context) { + return new MissedCallNotifier(context, CallLogNotificationsQueryHelper.getInstance(context)); + } + + @Nullable + @Override + public Void doInBackground(@Nullable Pair<Integer, String> input) throws Throwable { + updateMissedCallNotification(input.first, input.second); + return null; } /** @@ -88,8 +94,9 @@ public class MissedCallNotifier { * @param number the phone number of the most recent call to display if the call log cannot be * accessed. May be null if unknown. */ + @VisibleForTesting @WorkerThread - public void updateMissedCallNotification(int count, @Nullable String number) { + void updateMissedCallNotification(int count, @Nullable String number) { final int titleResId; CharSequence expandedText; // The text in the notification's line 1 and 2. @@ -375,7 +382,7 @@ public class MissedCallNotifier { private PendingIntent createCallBackPendingIntent(String number, @NonNull Uri callUri) { Intent intent = new Intent(context, CallLogNotificationsService.class); intent.setAction(CallLogNotificationsService.ACTION_CALL_BACK_FROM_MISSED_CALL_NOTIFICATION); - intent.putExtra(CallLogNotificationsService.EXTRA_MISSED_CALL_NUMBER, number); + intent.putExtra(MissedCallNotificationReceiver.EXTRA_NOTIFICATION_PHONE_NUMBER, number); intent.setData(callUri); // Use FLAG_UPDATE_CURRENT to make sure any previous pending intent is updated with the new // extra. diff --git a/java/com/android/dialer/app/calllog/VisualVoicemailCallLogFragment.java b/java/com/android/dialer/app/calllog/VisualVoicemailCallLogFragment.java index 1440218fb..893d6bed9 100644 --- a/java/com/android/dialer/app/calllog/VisualVoicemailCallLogFragment.java +++ b/java/com/android/dialer/app/calllog/VisualVoicemailCallLogFragment.java @@ -33,6 +33,7 @@ import com.android.dialer.app.voicemail.VoicemailPlaybackPresenter; import com.android.dialer.common.LogUtil; import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; +import com.android.dialer.util.PermissionsUtil; public class VisualVoicemailCallLogFragment extends CallLogFragment { @@ -54,19 +55,35 @@ public class VisualVoicemailCallLogFragment extends CallLogFragment { public void onActivityCreated(Bundle savedInstanceState) { mVoicemailPlaybackPresenter = VoicemailPlaybackPresenter.getInstance(getActivity(), savedInstanceState); - getActivity() - .getContentResolver() - .registerContentObserver( - VoicemailContract.Status.CONTENT_URI, true, mVoicemailStatusObserver); + + if (PermissionsUtil.hasReadVoicemailPermissions(getContext()) + && PermissionsUtil.hasAddVoicemailPermissions(getContext())) { + getActivity() + .getContentResolver() + .registerContentObserver( + VoicemailContract.Status.CONTENT_URI, true, mVoicemailStatusObserver); + } else { + LogUtil.w( + "VisualVoicemailCallLogFragment.onActivityCreated", + "read voicemail permission unavailable."); + } super.onActivityCreated(savedInstanceState); mVoicemailErrorManager = new VoicemailErrorManager(getContext(), getAdapter().getAlertManager(), mModalAlertManager); - getActivity() - .getContentResolver() - .registerContentObserver( - VoicemailContract.Status.CONTENT_URI, - true, - mVoicemailErrorManager.getContentObserver()); + + if (PermissionsUtil.hasReadVoicemailPermissions(getContext()) + && PermissionsUtil.hasAddVoicemailPermissions(getContext())) { + getActivity() + .getContentResolver() + .registerContentObserver( + VoicemailContract.Status.CONTENT_URI, + true, + mVoicemailErrorManager.getContentObserver()); + } else { + LogUtil.w( + "VisualVoicemailCallLogFragment.onActivityCreated", + "read voicemail permission unavailable."); + } } @Override @@ -118,7 +135,9 @@ public class VisualVoicemailCallLogFragment extends CallLogFragment { LogUtil.enterBlock("VisualVoicemailCallLogFragment.onPageSelected"); super.onVisible(); if (getActivity() != null) { - getActivity().sendBroadcast(new Intent(VoicemailContract.ACTION_SYNC_VOICEMAIL)); + Intent intent = new Intent(VoicemailContract.ACTION_SYNC_VOICEMAIL); + intent.setPackage(getActivity().getPackageName()); + getActivity().sendBroadcast(intent); Logger.get(getActivity()).logImpression(DialerImpression.Type.VVM_TAB_VIEWED); getActivity().setVolumeControlStream(VoicemailAudioManager.PLAYBACK_STREAM); } diff --git a/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java b/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java index 024394728..777f4c79f 100644 --- a/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java +++ b/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java @@ -20,14 +20,12 @@ import android.content.AsyncQueryHandler; import android.content.ContentResolver; import android.content.ContentValues; import android.content.Context; -import android.content.Intent; import android.net.Uri; import android.provider.CallLog.Calls; import android.support.annotation.MainThread; import android.support.annotation.Nullable; import com.android.dialer.app.R; import com.android.dialer.common.Assert; -import com.android.dialer.common.LogUtil; import com.android.dialer.notification.GroupedNotificationUtil; /** Handles asynchronous queries to the call log for voicemail. */ @@ -79,17 +77,4 @@ public class VoicemailQueryHandler extends AsyncQueryHandler { R.id.notification_visual_voicemail, DefaultVoicemailNotifier.VISUAL_VOICEMAIL_NOTIFICATION_TAG); } - - @Override - protected void onUpdateComplete(int token, Object cookie, int result) { - if (token == UPDATE_MARK_VOICEMAILS_AS_OLD_TOKEN) { - if (mContext != null) { - Intent serviceIntent = new Intent(mContext, CallLogNotificationsService.class); - serviceIntent.setAction(CallLogNotificationsService.ACTION_UPDATE_VOICEMAIL_NOTIFICATIONS); - mContext.startService(serviceIntent); - } else { - LogUtil.w(TAG, "Unknown update completed: ignoring: " + token); - } - } - } } diff --git a/java/com/android/dialer/app/dialpad/DialpadFragment.java b/java/com/android/dialer/app/dialpad/DialpadFragment.java index a0c348424..e9d57b399 100644 --- a/java/com/android/dialer/app/dialpad/DialpadFragment.java +++ b/java/com/android/dialer/app/dialpad/DialpadFragment.java @@ -447,7 +447,7 @@ public class DialpadFragment extends Fragment setFormattedDigits(converted, null); return true; } else { - if (!PermissionsUtil.hasContactsPermissions(getActivity())) { + if (!PermissionsUtil.hasContactsReadPermissions(getActivity())) { return false; } String type = intent.getType(); diff --git a/java/com/android/dialer/app/dialpad/SmartDialCursorLoader.java b/java/com/android/dialer/app/dialpad/SmartDialCursorLoader.java index 175360c2d..a0c8b18d3 100644 --- a/java/com/android/dialer/app/dialpad/SmartDialCursorLoader.java +++ b/java/com/android/dialer/app/dialpad/SmartDialCursorLoader.java @@ -77,7 +77,7 @@ public class SmartDialCursorLoader extends AsyncTaskLoader<Cursor> { LogUtil.v(TAG, "Load in background " + mQuery); } - if (!PermissionsUtil.hasContactsPermissions(mContext)) { + if (!PermissionsUtil.hasContactsReadPermissions(mContext)) { return new MatrixCursor(PhoneQuery.PROJECTION_PRIMARY); } diff --git a/java/com/android/dialer/app/list/ListsFragment.java b/java/com/android/dialer/app/list/ListsFragment.java index 02498939c..8dd52a9d4 100644 --- a/java/com/android/dialer/app/list/ListsFragment.java +++ b/java/com/android/dialer/app/list/ListsFragment.java @@ -48,6 +48,7 @@ import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; import com.android.dialer.logging.ScreenEvent; import com.android.dialer.speeddial.SpeedDialFragment; +import com.android.dialer.util.PermissionsUtil; import com.android.dialer.voicemailstatus.VisualVoicemailEnabledChecker; import com.android.dialer.voicemailstatus.VoicemailStatusHelper; import java.util.ArrayList; @@ -183,10 +184,15 @@ public class ListsFragment extends Fragment mRemoveView = (RemoveView) parentView.findViewById(R.id.remove_view); mRemoveViewContent = parentView.findViewById(R.id.remove_view_content); - getActivity() - .getContentResolver() - .registerContentObserver( - VoicemailContract.Status.CONTENT_URI, true, mVoicemailStatusObserver); + if (PermissionsUtil.hasReadVoicemailPermissions(getContext()) + && PermissionsUtil.hasAddVoicemailPermissions(getContext())) { + getActivity() + .getContentResolver() + .registerContentObserver( + VoicemailContract.Status.CONTENT_URI, true, mVoicemailStatusObserver); + } else { + LogUtil.w("ListsFragment.onCreateView", "no voicemail read/add permissions"); + } Trace.endSection(); Trace.endSection(); diff --git a/java/com/android/dialer/app/list/OldSpeedDialFragment.java b/java/com/android/dialer/app/list/OldSpeedDialFragment.java index 4ae84b6d9..40fe74565 100644 --- a/java/com/android/dialer/app/list/OldSpeedDialFragment.java +++ b/java/com/android/dialer/app/list/OldSpeedDialFragment.java @@ -123,7 +123,7 @@ public class OldSpeedDialFragment extends Fragment if (mContactTileAdapter != null) { mContactTileAdapter.refreshContactsPreferences(); } - if (PermissionsUtil.hasContactsPermissions(getActivity())) { + if (PermissionsUtil.hasContactsReadPermissions(getActivity())) { if (getLoaderManager().getLoader(LOADER_ID_CONTACT_TILE) == null) { getLoaderManager().initLoader(LOADER_ID_CONTACT_TILE, null, mContactTileLoaderListener); @@ -235,7 +235,7 @@ public class OldSpeedDialFragment extends Fragment // Use initLoader() instead of restartLoader() to refraining unnecessary reload. // This method call implicitly assures ContactTileLoaderListener's onLoadFinished() will // be called, on which we'll check if "all" contacts should be reloaded again or not. - if (PermissionsUtil.hasContactsPermissions(activity)) { + if (PermissionsUtil.hasContactsReadPermissions(activity)) { getLoaderManager().initLoader(LOADER_ID_CONTACT_TILE, null, mContactTileLoaderListener); } else { setEmptyViewVisibility(true); diff --git a/java/com/android/dialer/app/list/SearchFragment.java b/java/com/android/dialer/app/list/SearchFragment.java index 264bdf81b..fcf8236e3 100644 --- a/java/com/android/dialer/app/list/SearchFragment.java +++ b/java/com/android/dialer/app/list/SearchFragment.java @@ -380,7 +380,7 @@ public class SearchFragment extends PhoneNumberPickerFragment { return; } - if (PermissionsUtil.hasContactsPermissions(getActivity())) { + if (PermissionsUtil.hasContactsReadPermissions(getActivity())) { super.startLoading(); } else if (TextUtils.isEmpty(getQueryString())) { // Clear out any existing call shortcuts. diff --git a/java/com/android/dialer/app/res/values-af/strings.xml b/java/com/android/dialer/app/res/values-af/strings.xml index 2cd688023..7eaa7cb94 100644 --- a/java/com/android/dialer/app/res/values-af/strings.xml +++ b/java/com/android/dialer/app/res/values-af/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Deblokkeer nommer"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Strooipos"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is vanlyn en kan nie bereik word nie"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-am/strings.xml b/java/com/android/dialer/app/res/values-am/strings.xml index 760099d26..dd20b3119 100644 --- a/java/com/android/dialer/app/res/values-am/strings.xml +++ b/java/com/android/dialer/app/res/values-am/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"ቁጥርን አታግድ"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"አይፈለጌ መልዕክት"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ከመስመር ውጭ ነው እና ሊደረስበት አይችልም"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ar/strings.xml b/java/com/android/dialer/app/res/values-ar/strings.xml index 6e387b490..c24d313c4 100644 --- a/java/com/android/dialer/app/res/values-ar/strings.xml +++ b/java/com/android/dialer/app/res/values-ar/strings.xml @@ -238,4 +238,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"إلغاء حظر الرقم"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"تعليق غير مرغوب فيه"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> غير متصل ولا يمكن الوصول إليه"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-az/strings.xml b/java/com/android/dialer/app/res/values-az/strings.xml index 9522764aa..70e926cbe 100644 --- a/java/com/android/dialer/app/res/values-az/strings.xml +++ b/java/com/android/dialer/app/res/values-az/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Nömrəni blokdan çıxarın"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> oflayn olduğu üçün əlaqə saxlamaq mümkün deyil"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/app/res/values-b+sr+Latn/strings.xml index c046d94aa..7ca2e56ec 100644 --- a/java/com/android/dialer/app/res/values-b+sr+Latn/strings.xml +++ b/java/com/android/dialer/app/res/values-b+sr+Latn/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Deblokiraj broj"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Nepoželjan"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> je oflajn i ne možete da ga/je kontaktirate"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-be/strings.xml b/java/com/android/dialer/app/res/values-be/strings.xml index 552e6ac17..effc7e025 100644 --- a/java/com/android/dialer/app/res/values-be/strings.xml +++ b/java/com/android/dialer/app/res/values-be/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Разблакіраваць нумар"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Карыстальнік <xliff:g id="NAME">%1$s</xliff:g> па-за сеткай і не даступны"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-bg/strings.xml b/java/com/android/dialer/app/res/values-bg/strings.xml index 277cb63a7..d3d1a9974 100644 --- a/java/com/android/dialer/app/res/values-bg/strings.xml +++ b/java/com/android/dialer/app/res/values-bg/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Отблокиране на номера"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"С <xliff:g id="NAME">%1$s</xliff:g> не може да се установи връзка, тъй като е офлайн"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-bn/strings.xml b/java/com/android/dialer/app/res/values-bn/strings.xml index 0a5569234..4b7354c00 100644 --- a/java/com/android/dialer/app/res/values-bn/strings.xml +++ b/java/com/android/dialer/app/res/values-bn/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"নম্বর অবরোধ মুক্ত করুন"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"স্প্যাম"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> এখন অফলাইনে থাকায় যোগাযোগ করা যাবে না"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-bs/strings.xml b/java/com/android/dialer/app/res/values-bs/strings.xml index 834d29609..4e028461a 100644 --- a/java/com/android/dialer/app/res/values-bs/strings.xml +++ b/java/com/android/dialer/app/res/values-bs/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Deblokiraj broj"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Neželjena pošta"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Osoba <xliff:g id="NAME">%1$s</xliff:g> je van mreže i ne možete je kontaktirati"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ca/strings.xml b/java/com/android/dialer/app/res/values-ca/strings.xml index 6afd86b6b..e18256d5a 100644 --- a/java/com/android/dialer/app/res/values-ca/strings.xml +++ b/java/com/android/dialer/app/res/values-ca/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloqueja el número"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Contingut brossa"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> no té connexió i no s\'hi pot contactar"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-cs/strings.xml b/java/com/android/dialer/app/res/values-cs/strings.xml index 97f43319c..bb7e3c5fb 100644 --- a/java/com/android/dialer/app/res/values-cs/strings.xml +++ b/java/com/android/dialer/app/res/values-cs/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Zrušit blokování čísla"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Uživatel <xliff:g id="NAME">%1$s</xliff:g> je offline a není možné se s ním spojit"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-da/strings.xml b/java/com/android/dialer/app/res/values-da/strings.xml index 7f162b9db..498817652 100644 --- a/java/com/android/dialer/app/res/values-da/strings.xml +++ b/java/com/android/dialer/app/res/values-da/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Ophæv blokering af nummer"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> er offline og kan ikke nås"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-de/strings.xml b/java/com/android/dialer/app/res/values-de/strings.xml index eaa798694..ab12c1f4f 100644 --- a/java/com/android/dialer/app/res/values-de/strings.xml +++ b/java/com/android/dialer/app/res/values-de/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Blockierung der Nummer aufheben"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ist offline und nicht erreichbar"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-el/strings.xml b/java/com/android/dialer/app/res/values-el/strings.xml index 6996817d8..2a00c46f7 100644 --- a/java/com/android/dialer/app/res/values-el/strings.xml +++ b/java/com/android/dialer/app/res/values-el/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Κατάργηση αποκλεισμού αριθμού"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Ανεπιθύμητα"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Ο χρήστης <xliff:g id="NAME">%1$s</xliff:g> είναι εκτός σύνδεσης και δεν μπορείτε να έρθετε σε επικοινωνία μαζί του"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-en-rAU/strings.xml b/java/com/android/dialer/app/res/values-en-rAU/strings.xml index 967c74158..9229be690 100644 --- a/java/com/android/dialer/app/res/values-en-rAU/strings.xml +++ b/java/com/android/dialer/app/res/values-en-rAU/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Unblock number"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is offline and can\'t be reached"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-en-rGB/strings.xml b/java/com/android/dialer/app/res/values-en-rGB/strings.xml index 967c74158..9229be690 100644 --- a/java/com/android/dialer/app/res/values-en-rGB/strings.xml +++ b/java/com/android/dialer/app/res/values-en-rGB/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Unblock number"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is offline and can\'t be reached"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-en-rIN/strings.xml b/java/com/android/dialer/app/res/values-en-rIN/strings.xml index 967c74158..9229be690 100644 --- a/java/com/android/dialer/app/res/values-en-rIN/strings.xml +++ b/java/com/android/dialer/app/res/values-en-rIN/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Unblock number"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is offline and can\'t be reached"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-es-rUS/strings.xml b/java/com/android/dialer/app/res/values-es-rUS/strings.xml index 4a39f3418..17a1b1438 100644 --- a/java/com/android/dialer/app/res/values-es-rUS/strings.xml +++ b/java/com/android/dialer/app/res/values-es-rUS/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloquear número"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> está sin conexión y no se lo puede contactar"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-es/strings.xml b/java/com/android/dialer/app/res/values-es/strings.xml index f3ebe5d9b..15c129972 100644 --- a/java/com/android/dialer/app/res/values-es/strings.xml +++ b/java/com/android/dialer/app/res/values-es/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloquear número"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> no tiene conexión y no se puede contactar"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-et/strings.xml b/java/com/android/dialer/app/res/values-et/strings.xml index e880e3d5e..3dd4ebc04 100644 --- a/java/com/android/dialer/app/res/values-et/strings.xml +++ b/java/com/android/dialer/app/res/values-et/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Numbri deblokeerimine"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Rämpspost"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ei ole võrgus ja temaga ei saa ühendust"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-eu/strings.xml b/java/com/android/dialer/app/res/values-eu/strings.xml index 079e5c75b..e2701f965 100644 --- a/java/com/android/dialer/app/res/values-eu/strings.xml +++ b/java/com/android/dialer/app/res/values-eu/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desblokeatu zenbakia"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spama"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ez dago konektatuta, eta ezin zara jarri harremanetan berarekin"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-fa/strings.xml b/java/com/android/dialer/app/res/values-fa/strings.xml index 67f58a04e..fb1fa8b31 100644 --- a/java/com/android/dialer/app/res/values-fa/strings.xml +++ b/java/com/android/dialer/app/res/values-fa/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"رفع انسداد شماره"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"هرزنامه"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> آفلاین است و در دسترس نمیباشد"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-fi/strings.xml b/java/com/android/dialer/app/res/values-fi/strings.xml index 417305b69..3a03c8e55 100644 --- a/java/com/android/dialer/app/res/values-fi/strings.xml +++ b/java/com/android/dialer/app/res/values-fi/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Poista numeron esto"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Roskaposti"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> on offline-tilassa, eikä siihen saada yhteyttä."</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-fr-rCA/strings.xml b/java/com/android/dialer/app/res/values-fr-rCA/strings.xml index 0429a767f..4610e6048 100644 --- a/java/com/android/dialer/app/res/values-fr-rCA/strings.xml +++ b/java/com/android/dialer/app/res/values-fr-rCA/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Débloquer le numéro"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Pourriel"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> est hors connexion et injoignable"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-fr/strings.xml b/java/com/android/dialer/app/res/values-fr/strings.xml index 933acc130..e1eda7243 100644 --- a/java/com/android/dialer/app/res/values-fr/strings.xml +++ b/java/com/android/dialer/app/res/values-fr/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Débloquer le numéro"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> est injoignable, car non connecté"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-gl/strings.xml b/java/com/android/dialer/app/res/values-gl/strings.xml index df162bffd..2a79835c2 100644 --- a/java/com/android/dialer/app/res/values-gl/strings.xml +++ b/java/com/android/dialer/app/res/values-gl/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloquear número"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Non se pode contactar con <xliff:g id="NAME">%1$s</xliff:g> porque está sen conexión"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-gu/strings.xml b/java/com/android/dialer/app/res/values-gu/strings.xml index ad5cd0776..940dea028 100644 --- a/java/com/android/dialer/app/res/values-gu/strings.xml +++ b/java/com/android/dialer/app/res/values-gu/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"નંબર અનાવરોધિત કરો"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"સ્પામ"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ઑફલાઇન છે અને તેના સુધી પહોંચી શકતાં નથી"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-hi/strings.xml b/java/com/android/dialer/app/res/values-hi/strings.xml index 320baa559..c4f135b16 100644 --- a/java/com/android/dialer/app/res/values-hi/strings.xml +++ b/java/com/android/dialer/app/res/values-hi/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"नंबर अनवरोधित करें"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"स्पैम"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ऑफ़लाइन हैं और उन तक नहीं पहुंचा जा सकता"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-hr/strings.xml b/java/com/android/dialer/app/res/values-hr/strings.xml index ee2df5495..fb96256f5 100644 --- a/java/com/android/dialer/app/res/values-hr/strings.xml +++ b/java/com/android/dialer/app/res/values-hr/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Deblokiranje broja"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Neželjena pošta"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> nije online i nije dostupan"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-hu/strings.xml b/java/com/android/dialer/app/res/values-hu/strings.xml index 9660b0c47..a39c5846f 100644 --- a/java/com/android/dialer/app/res/values-hu/strings.xml +++ b/java/com/android/dialer/app/res/values-hu/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Szám tiltásának feloldása"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> offline, és nem érhető el."</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-hy/strings.xml b/java/com/android/dialer/app/res/values-hy/strings.xml index 58a8e9a35..362c57048 100644 --- a/java/com/android/dialer/app/res/values-hy/strings.xml +++ b/java/com/android/dialer/app/res/values-hy/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Արգելաբացել համարը"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Լցոն"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> օգտատերը միացած չէ ցանցին և անհասանելի է"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-in/strings.xml b/java/com/android/dialer/app/res/values-in/strings.xml index 3b9fcbeca..ca7341ae3 100644 --- a/java/com/android/dialer/app/res/values-in/strings.xml +++ b/java/com/android/dialer/app/res/values-in/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Bebaskan nomor"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> sedang offline dan tidak dapat dijangkau"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-is/strings.xml b/java/com/android/dialer/app/res/values-is/strings.xml index e08471203..a8a9ae15d 100644 --- a/java/com/android/dialer/app/res/values-is/strings.xml +++ b/java/com/android/dialer/app/res/values-is/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Taka númer af bannlista"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Ruslnúmer"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> er án nettengingar og ekki er hægt að ná í viðkomandi"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-it/strings.xml b/java/com/android/dialer/app/res/values-it/strings.xml index 341d49771..7fc581115 100644 --- a/java/com/android/dialer/app/res/values-it/strings.xml +++ b/java/com/android/dialer/app/res/values-it/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Sblocca numero"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> è offline e non può essere raggiunto"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-iw/strings.xml b/java/com/android/dialer/app/res/values-iw/strings.xml index 9b61af74b..743d45505 100644 --- a/java/com/android/dialer/app/res/values-iw/strings.xml +++ b/java/com/android/dialer/app/res/values-iw/strings.xml @@ -234,4 +234,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"בטל חסימת מספר"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"ספאם"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"לא ניתן להתקשר כי המכשיר של <xliff:g id="NAME">%1$s</xliff:g> לא מחובר כרגע"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ja/strings.xml b/java/com/android/dialer/app/res/values-ja/strings.xml index 22cfd4831..72bc2debb 100644 --- a/java/com/android/dialer/app/res/values-ja/strings.xml +++ b/java/com/android/dialer/app/res/values-ja/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"番号のブロックを解除"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"スパム"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> さんはオフラインのため、通話を受信できません"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ka/strings.xml b/java/com/android/dialer/app/res/values-ka/strings.xml index 06bc726a6..befdd3aca 100644 --- a/java/com/android/dialer/app/res/values-ka/strings.xml +++ b/java/com/android/dialer/app/res/values-ka/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"ნომრის განბლოკვა"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"სპამი"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ხაზგარეშეა და ვერ დაუკავშირდებით"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-kk/strings.xml b/java/com/android/dialer/app/res/values-kk/strings.xml index 409217a77..8ed666109 100644 --- a/java/com/android/dialer/app/res/values-kk/strings.xml +++ b/java/com/android/dialer/app/res/values-kk/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Нөмірді бөгеуден шығару"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> желіден тыс және байланысу мүмкін емес"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-km/strings.xml b/java/com/android/dialer/app/res/values-km/strings.xml index 7ebe85d5b..298070806 100644 --- a/java/com/android/dialer/app/res/values-km/strings.xml +++ b/java/com/android/dialer/app/res/values-km/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"ឈប់ទប់ស្កាត់លេខ"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"សារឥតបានការ"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> មិននៅលើអ៊ីនធឺណិត និងមិនអាចទាក់ទងបានទេ"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-kn/strings.xml b/java/com/android/dialer/app/res/values-kn/strings.xml index 3e70c8819..ff780f99c 100644 --- a/java/com/android/dialer/app/res/values-kn/strings.xml +++ b/java/com/android/dialer/app/res/values-kn/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"ಸಂಖ್ಯೆಯನ್ನು ಅನಿರ್ಬಂಧಿಸು"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"ಸ್ಪ್ಯಾಮ್"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ಆಫ್ಲೈನ್ ಆಗಿದ್ದಾರೆ ಮತ್ತು ಅವರನ್ನು ತಲುಪಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ko/strings.xml b/java/com/android/dialer/app/res/values-ko/strings.xml index 0f6abdf59..cdd0d5205 100644 --- a/java/com/android/dialer/app/res/values-ko/strings.xml +++ b/java/com/android/dialer/app/res/values-ko/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"번호 차단 해제"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"스팸"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g>님은 오프라인 상태이며 연락할 수 없습니다."</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ky/strings.xml b/java/com/android/dialer/app/res/values-ky/strings.xml index 4a2ccf3f7..0784a3e07 100644 --- a/java/com/android/dialer/app/res/values-ky/strings.xml +++ b/java/com/android/dialer/app/res/values-ky/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Номерди бөгөттөн чыгаруу"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> оффлайн режиминде болгондуктан, байланышууга болбойт"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-lo/strings.xml b/java/com/android/dialer/app/res/values-lo/strings.xml index 315534639..d7b8f3207 100644 --- a/java/com/android/dialer/app/res/values-lo/strings.xml +++ b/java/com/android/dialer/app/res/values-lo/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"ປົດບລັອກໝາຍເລກ"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"ສະແປມ"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ອອບລາຍຢູ່ ແລະ ບໍ່ສາມາດຕິດຕໍ່ຫາໄດ້"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-lt/strings.xml b/java/com/android/dialer/app/res/values-lt/strings.xml index 6ac7e4d2b..eaa11cbc7 100644 --- a/java/com/android/dialer/app/res/values-lt/strings.xml +++ b/java/com/android/dialer/app/res/values-lt/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Panaikinti numerio blokavimą"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Šlamštas"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> yra neprisijungęs (-usi) ir su juo (ja) negalima susisiekti"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-lv/strings.xml b/java/com/android/dialer/app/res/values-lv/strings.xml index df51e60a4..3c73cd580 100644 --- a/java/com/android/dialer/app/res/values-lv/strings.xml +++ b/java/com/android/dialer/app/res/values-lv/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Atbloķēt numuru"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Nevēlami zvani"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Lietotājs <xliff:g id="NAME">%1$s</xliff:g> ir bezsaistē un nav sasniedzams"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-mk/strings.xml b/java/com/android/dialer/app/res/values-mk/strings.xml index 1086e34fb..016821d96 100644 --- a/java/com/android/dialer/app/res/values-mk/strings.xml +++ b/java/com/android/dialer/app/res/values-mk/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Одблокирај го бројот"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Контактот <xliff:g id="NAME">%1$s</xliff:g> е офлајн и недостапен"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ml/strings.xml b/java/com/android/dialer/app/res/values-ml/strings.xml index 7a43a2dfd..081a05a04 100644 --- a/java/com/android/dialer/app/res/values-ml/strings.xml +++ b/java/com/android/dialer/app/res/values-ml/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"നമ്പർ അൺബ്ലോക്കുചെയ്യുക"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"സ്പാം"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ഓഫ്ലൈനായതിനാൽ കോൾ ചെയ്യാനാവില്ല"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-mn/strings.xml b/java/com/android/dialer/app/res/values-mn/strings.xml index 0dda88e18..16f7e1ad1 100644 --- a/java/com/android/dialer/app/res/values-mn/strings.xml +++ b/java/com/android/dialer/app/res/values-mn/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Дугаар блокноос гаргах"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> офлайн, холбогдох боломжгүй байна"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-mr/strings.xml b/java/com/android/dialer/app/res/values-mr/strings.xml index 505dae72c..eb374b9e0 100644 --- a/java/com/android/dialer/app/res/values-mr/strings.xml +++ b/java/com/android/dialer/app/res/values-mr/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"नंबर अनावरोधित करा"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"स्पॅम"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ऑफलाइन आहे आणि त्यांच्याशी संपर्क साधू शकत नाही"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ms/strings.xml b/java/com/android/dialer/app/res/values-ms/strings.xml index 74d9b051a..c471ce922 100644 --- a/java/com/android/dialer/app/res/values-ms/strings.xml +++ b/java/com/android/dialer/app/res/values-ms/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Nyahsekat nombor"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> di luar talian dan tidak dapat dihubungi"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-my/strings.xml b/java/com/android/dialer/app/res/values-my/strings.xml index 88f5bd394..dd81dee5f 100644 --- a/java/com/android/dialer/app/res/values-my/strings.xml +++ b/java/com/android/dialer/app/res/values-my/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"နံပါတ်ကို ဖွင့်မည်"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"စပမ်း"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> သည် အော့ဖ်လိုင်းဖြစ်နေသောကြောင့် ဆက်သွယ်၍ မရနိုင်ပါ"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-nb/strings.xml b/java/com/android/dialer/app/res/values-nb/strings.xml index 7a8528e2e..8f83c949d 100644 --- a/java/com/android/dialer/app/res/values-nb/strings.xml +++ b/java/com/android/dialer/app/res/values-nb/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Opphev blokkeringen av nummeret"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Nettsøppel"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> er frakoblet og kan ikke nås"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ne/strings.xml b/java/com/android/dialer/app/res/values-ne/strings.xml index 8595062d3..f9524637a 100644 --- a/java/com/android/dialer/app/res/values-ne/strings.xml +++ b/java/com/android/dialer/app/res/values-ne/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"नम्बरमाथिको रोक हटाउनुहोस्"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"स्प्याम"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> अफलाइन हुनुहुन्छ र वहाँलाई भेट्न सकिँदैन"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-nl/strings.xml b/java/com/android/dialer/app/res/values-nl/strings.xml index 54d784b91..498436897 100644 --- a/java/com/android/dialer/app/res/values-nl/strings.xml +++ b/java/com/android/dialer/app/res/values-nl/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Blokkeren van nummer opheffen"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is offline en kan niet worden bereikt"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-no/strings.xml b/java/com/android/dialer/app/res/values-no/strings.xml index 7a8528e2e..8f83c949d 100644 --- a/java/com/android/dialer/app/res/values-no/strings.xml +++ b/java/com/android/dialer/app/res/values-no/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Opphev blokkeringen av nummeret"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Nettsøppel"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> er frakoblet og kan ikke nås"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-pa/strings.xml b/java/com/android/dialer/app/res/values-pa/strings.xml index 880eecccd..88e3aa718 100644 --- a/java/com/android/dialer/app/res/values-pa/strings.xml +++ b/java/com/android/dialer/app/res/values-pa/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"ਨੰਬਰ ਨੂੰ ਅਨਬਲੌਕ ਕਰੋ"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"ਸਪੈਮ"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ਔਫਲਾਈਨ ਹੈ ਅਤੇ ਉਸ \'ਤੇ ਪਹੁੰਚ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-pl/strings.xml b/java/com/android/dialer/app/res/values-pl/strings.xml index b36d09628..f408ed353 100644 --- a/java/com/android/dialer/app/res/values-pl/strings.xml +++ b/java/com/android/dialer/app/res/values-pl/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Odblokuj numer"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Użytkownik <xliff:g id="NAME">%1$s</xliff:g> jest offline i nie można się z nim skontaktować"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-pt-rBR/strings.xml b/java/com/android/dialer/app/res/values-pt-rBR/strings.xml index 9e0eab854..0fc1da7ac 100644 --- a/java/com/android/dialer/app/res/values-pt-rBR/strings.xml +++ b/java/com/android/dialer/app/res/values-pt-rBR/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloquear número"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> está off-line e não é possível entrar em contato"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-pt-rPT/strings.xml b/java/com/android/dialer/app/res/values-pt-rPT/strings.xml index 669d66065..f12e25456 100644 --- a/java/com/android/dialer/app/res/values-pt-rPT/strings.xml +++ b/java/com/android/dialer/app/res/values-pt-rPT/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloquear número"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> está offline e não pode ser contactado"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-pt/strings.xml b/java/com/android/dialer/app/res/values-pt/strings.xml index 9e0eab854..0fc1da7ac 100644 --- a/java/com/android/dialer/app/res/values-pt/strings.xml +++ b/java/com/android/dialer/app/res/values-pt/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloquear número"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> está off-line e não é possível entrar em contato"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ro/strings.xml b/java/com/android/dialer/app/res/values-ro/strings.xml index 007199d3a..d07dbed87 100644 --- a/java/com/android/dialer/app/res/values-ro/strings.xml +++ b/java/com/android/dialer/app/res/values-ro/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Deblocați numărul"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> este offline și nu poate fi contactat(ă)"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ru/strings.xml b/java/com/android/dialer/app/res/values-ru/strings.xml index 6744592e8..e98622de8 100644 --- a/java/com/android/dialer/app/res/values-ru/strings.xml +++ b/java/com/android/dialer/app/res/values-ru/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Разблокировать номер"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> сейчас офлайн и не ответит на вызов"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-si/strings.xml b/java/com/android/dialer/app/res/values-si/strings.xml index 4340c0edf..c4ae1736d 100644 --- a/java/com/android/dialer/app/res/values-si/strings.xml +++ b/java/com/android/dialer/app/res/values-si/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"අංකය අවහිර නොකරන්න"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"අයාචිත තැපෑල"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> නොබැඳි අතර ළඟා වීමට නොහැකිය"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-sk/strings.xml b/java/com/android/dialer/app/res/values-sk/strings.xml index 25b8d74c5..b5f426938 100644 --- a/java/com/android/dialer/app/res/values-sk/strings.xml +++ b/java/com/android/dialer/app/res/values-sk/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Zrušiť blokovanie čísla"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> je offline a nedá sa zastihnúť"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-sl/strings.xml b/java/com/android/dialer/app/res/values-sl/strings.xml index d5a22d5be..51ac390de 100644 --- a/java/com/android/dialer/app/res/values-sl/strings.xml +++ b/java/com/android/dialer/app/res/values-sl/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Odblokiranje telefonske številke"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Vsiljena pošta"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Oseba <xliff:g id="NAME">%1$s</xliff:g> nima vzpostavljene povezave in ni dosegljiva"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-sq/strings.xml b/java/com/android/dialer/app/res/values-sq/strings.xml index cfa84436f..8bc3e85be 100644 --- a/java/com/android/dialer/app/res/values-sq/strings.xml +++ b/java/com/android/dialer/app/res/values-sq/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Zhblloko numrin"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"E bezdisshme"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> është jashtë linje dhe nuk mund të kontaktohet"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-sr/strings.xml b/java/com/android/dialer/app/res/values-sr/strings.xml index d8222da95..e7f7f912d 100644 --- a/java/com/android/dialer/app/res/values-sr/strings.xml +++ b/java/com/android/dialer/app/res/values-sr/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Деблокирај број"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Непожељан"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> је офлајн и не можете да га/је контактирате"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-sv/strings.xml b/java/com/android/dialer/app/res/values-sv/strings.xml index 47b215136..36616ce83 100644 --- a/java/com/android/dialer/app/res/values-sv/strings.xml +++ b/java/com/android/dialer/app/res/values-sv/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Häv blockeringen av numret"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> är offline och går inte att nå"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-sw/strings.xml b/java/com/android/dialer/app/res/values-sw/strings.xml index 1516b9a9c..fdbdd7d02 100644 --- a/java/com/android/dialer/app/res/values-sw/strings.xml +++ b/java/com/android/dialer/app/res/values-sw/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Ondolea nambari kizuizi"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Taka"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> hayuko mtandaoni na hapatikani"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ta/strings.xml b/java/com/android/dialer/app/res/values-ta/strings.xml index 5a80a2b4a..f7e1d19c4 100644 --- a/java/com/android/dialer/app/res/values-ta/strings.xml +++ b/java/com/android/dialer/app/res/values-ta/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"எண்ணை அனுமதி"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"ஸ்பேம்"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ஆஃப்லைனில் உள்ளதால், தொடர்புகொள்ள முடியாது"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-te/strings.xml b/java/com/android/dialer/app/res/values-te/strings.xml index aea962527..babfb9a1e 100644 --- a/java/com/android/dialer/app/res/values-te/strings.xml +++ b/java/com/android/dialer/app/res/values-te/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"నంబర్ను అన్బ్లాక్ చేయి"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"స్పామ్"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ఆఫ్లైన్లో ఉన్నందున వారిని చేరుకోవడం సాధ్యపడదు"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-th/strings.xml b/java/com/android/dialer/app/res/values-th/strings.xml index cecf217a1..4c2fd37b2 100644 --- a/java/com/android/dialer/app/res/values-th/strings.xml +++ b/java/com/android/dialer/app/res/values-th/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"เลิกบล็อกหมายเลข"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"สแปม"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ออฟไลน์อยู่และไม่สามารถติดต่อได้"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-tl/strings.xml b/java/com/android/dialer/app/res/values-tl/strings.xml index d7408cb01..6afb11c1d 100644 --- a/java/com/android/dialer/app/res/values-tl/strings.xml +++ b/java/com/android/dialer/app/res/values-tl/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Alisin sa pagkaka-block ang numero"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"Offline si <xliff:g id="NAME">%1$s</xliff:g> at hindi makontak"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-tr/strings.xml b/java/com/android/dialer/app/res/values-tr/strings.xml index 3c92206df..8b30d4bff 100644 --- a/java/com/android/dialer/app/res/values-tr/strings.xml +++ b/java/com/android/dialer/app/res/values-tr/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Numaranın engellemesini kaldır"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> çevrimdışı olduğundan ulaşılamıyor"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-uk/strings.xml b/java/com/android/dialer/app/res/values-uk/strings.xml index 5a1dfcc59..f1c5b3f37 100644 --- a/java/com/android/dialer/app/res/values-uk/strings.xml +++ b/java/com/android/dialer/app/res/values-uk/strings.xml @@ -235,4 +235,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Розблокувати номер"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> не в мережі, неможливо встановити зв’язок"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-ur/strings.xml b/java/com/android/dialer/app/res/values-ur/strings.xml index eec7db062..b21281288 100644 --- a/java/com/android/dialer/app/res/values-ur/strings.xml +++ b/java/com/android/dialer/app/res/values-ur/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"نمبر غیر مسدود کریں"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"سپام"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> آف لائن ہے اور اس تک پہنچا نہیں جا سکتا"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-uz/strings.xml b/java/com/android/dialer/app/res/values-uz/strings.xml index 2a2b7afba..e52d2bdf7 100644 --- a/java/com/android/dialer/app/res/values-uz/strings.xml +++ b/java/com/android/dialer/app/res/values-uz/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Raqamni blokdan chiqarish"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> hozir oflayn va u bilan bog‘lanishning imkoni yo‘q"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-vi/strings.xml b/java/com/android/dialer/app/res/values-vi/strings.xml index 9def34a1e..66b346854 100644 --- a/java/com/android/dialer/app/res/values-vi/strings.xml +++ b/java/com/android/dialer/app/res/values-vi/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Bỏ chặn số"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ngoại tuyến và không liên hệ được"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-zh-rCN/strings.xml b/java/com/android/dialer/app/res/values-zh-rCN/strings.xml index c1b802979..c64234e22 100644 --- a/java/com/android/dialer/app/res/values-zh-rCN/strings.xml +++ b/java/com/android/dialer/app/res/values-zh-rCN/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"取消屏蔽号码"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"骚扰电话号码"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g>不在线,无法接通"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-zh-rHK/strings.xml b/java/com/android/dialer/app/res/values-zh-rHK/strings.xml index 95b72f2b5..693e56caa 100644 --- a/java/com/android/dialer/app/res/values-zh-rHK/strings.xml +++ b/java/com/android/dialer/app/res/values-zh-rHK/strings.xml @@ -230,4 +230,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"解除封鎖號碼"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"垃圾號碼"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g>已離線,無法取得聯繫"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-zh-rTW/strings.xml b/java/com/android/dialer/app/res/values-zh-rTW/strings.xml index c846980c1..3675d3f09 100644 --- a/java/com/android/dialer/app/res/values-zh-rTW/strings.xml +++ b/java/com/android/dialer/app/res/values-zh-rTW/strings.xml @@ -233,4 +233,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"解除封鎖號碼"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"騷擾/廣告電話"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g>已離線,無法接聽來電"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values-zu/strings.xml b/java/com/android/dialer/app/res/values-zu/strings.xml index 07aa68d24..0d9957dda 100644 --- a/java/com/android/dialer/app/res/values-zu/strings.xml +++ b/java/com/android/dialer/app/res/values-zu/strings.xml @@ -231,4 +231,6 @@ <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Vulela inombolo"</string> <string name="spam_number_call_log_label" msgid="2678431398326811131">"Ugaxekile"</string> <string name="call_composer_connection_failed" msgid="6776461585447831242">"U-<xliff:g id="NAME">%1$s</xliff:g> akaxhunyiwe kwi-inthanethi futhi akakwazi ukufinyelelwa"</string> + <!-- no translation found for about_phone_label (582991354677973731) --> + <skip /> </resources> diff --git a/java/com/android/dialer/app/res/values/strings.xml b/java/com/android/dialer/app/res/values/strings.xml index 174bbe17a..9e1fdeb5a 100644 --- a/java/com/android/dialer/app/res/values/strings.xml +++ b/java/com/android/dialer/app/res/values/strings.xml @@ -897,4 +897,7 @@ <!-- Shown as a message that notifies the user enriched calling isn't working --> <string name="call_composer_connection_failed"><xliff:g id="name">%1$s</xliff:g> is offline and can\'t be reached</string> + <!-- Label for setting that shows more information about the Phone app [CHAR LIMIT=30] --> + <string name="about_phone_label">About</string> + </resources> diff --git a/java/com/android/dialer/app/settings/DialerSettingsActivity.java b/java/com/android/dialer/app/settings/DialerSettingsActivity.java index fae5ff3ee..f1c270ca9 100644 --- a/java/com/android/dialer/app/settings/DialerSettingsActivity.java +++ b/java/com/android/dialer/app/settings/DialerSettingsActivity.java @@ -32,6 +32,7 @@ import android.telephony.TelephonyManager; import android.view.MenuItem; import android.widget.Toast; import com.android.contacts.common.compat.TelephonyManagerCompat; +import com.android.dialer.about.AboutPhoneFragment; import com.android.dialer.app.R; import com.android.dialer.blocking.FilteredNumberCompat; import com.android.dialer.common.LogUtil; @@ -136,6 +137,11 @@ public class DialerSettingsActivity extends AppCompatPreferenceActivity { accessibilitySettingsHeader.intent = accessibilitySettingsIntent; target.add(accessibilitySettingsHeader); } + + Header aboutPhoneHeader = new Header(); + aboutPhoneHeader.titleRes = R.string.about_phone_label; + aboutPhoneHeader.fragment = AboutPhoneFragment.class.getName(); + target.add(aboutPhoneHeader); } private void addVoicemailSettings(List<Header> target, boolean isPrimaryUser) { diff --git a/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java b/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java index a7ef4f43a..9d07ec561 100644 --- a/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java +++ b/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java @@ -52,39 +52,32 @@ public class LegacyVoicemailNotificationReceiver extends BroadcastReceiver { PhoneAccountHandle phoneAccountHandle = Assert.isNotNull(intent.getParcelableExtra(TelephonyManager.EXTRA_PHONE_ACCOUNT_HANDLE)); - // Carrier might not send voicemail count. Missing extra means there are unknown numbers of - // voicemails (One or more). Treat it as 1 so the generic version will be shown. ("Voicemail" - // instead of "X voicemails") - int count = intent.getIntExtra(TelephonyManager.EXTRA_NOTIFICATION_COUNT, 1); + int count = intent.getIntExtra(TelephonyManager.EXTRA_NOTIFICATION_COUNT, -1); - // Need credential encrypted storage to access preferences. - if (UserManagerCompat.isUserUnlocked(context)) { - PerAccountSharedPreferences preferences = - new PerAccountSharedPreferences( - context, phoneAccountHandle, PreferenceManager.getDefaultSharedPreferences(context)); - // Carriers may send multiple notifications for the same voicemail. - if (count != 0 && count == preferences.getInt(LEGACY_VOICEMAIL_COUNT, -1)) { - LogUtil.i( - "LegacyVoicemailNotificationReceiver.onReceive", - "voicemail count hasn't changed, ignoring"); - return; - } - preferences.edit().putInt(LEGACY_VOICEMAIL_COUNT, count).apply(); - } else { + if (!hasVoicemailCountChanged(context, phoneAccountHandle, count)) { LogUtil.i( "LegacyVoicemailNotificationReceiver.onReceive", - "User locked, bypassing voicemail count check"); + "voicemail count hasn't changed, ignoring"); + return; + } + + if (count == -1) { + // Carrier might not send voicemail count. Missing extra means there are unknown numbers of + // voicemails (One or more). Treat it as 1 so the generic version will be shown. ("Voicemail" + // instead of "X voicemails") + count = 1; } if (count == 0) { LogUtil.i("LegacyVoicemailNotificationReceiver.onReceive", "clearing notification"); - DefaultVoicemailNotifier.getInstance(context).cancelLegacyNotification(); + new DefaultVoicemailNotifier(context).cancelLegacyNotification(); return; } - if (VoicemailComponent.get(context) - .getVoicemailClient() - .isActivated(context, phoneAccountHandle)) { + if (UserManagerCompat.isUserUnlocked(context) + && VoicemailComponent.get(context) + .getVoicemailClient() + .isActivated(context, phoneAccountHandle)) { LogUtil.i( "LegacyVoicemailNotificationReceiver.onReceive", "visual voicemail is activated, ignoring notification"); @@ -98,7 +91,7 @@ public class LegacyVoicemailNotificationReceiver extends BroadcastReceiver { intent.getParcelableExtra(TelephonyManager.EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT); LogUtil.i("LegacyVoicemailNotificationReceiver.onReceive", "sending notification"); - DefaultVoicemailNotifier.getInstance(context) + new DefaultVoicemailNotifier(context) .notifyLegacyVoicemail( phoneAccountHandle, count, @@ -106,4 +99,30 @@ public class LegacyVoicemailNotificationReceiver extends BroadcastReceiver { callVoicemailIntent, voicemailSettingIntent); } + + private static boolean hasVoicemailCountChanged( + Context context, PhoneAccountHandle phoneAccountHandle, int newCount) { + // Need credential encrypted storage to access preferences. + if (!UserManagerCompat.isUserUnlocked(context)) { + LogUtil.i( + "LegacyVoicemailNotificationReceiver.onReceive", + "User locked, bypassing voicemail count check"); + return true; + } + + if (newCount == -1) { + // Carrier does not report voicemail count + return true; + } + + PerAccountSharedPreferences preferences = + new PerAccountSharedPreferences( + context, phoneAccountHandle, PreferenceManager.getDefaultSharedPreferences(context)); + // Carriers may send multiple notifications for the same voicemail. + if (newCount != 0 && newCount == preferences.getInt(LEGACY_VOICEMAIL_COUNT, -1)) { + return false; + } + preferences.edit().putInt(LEGACY_VOICEMAIL_COUNT, newCount).apply(); + return true; + } } diff --git a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java index 524873f6d..ea48c8321 100644 --- a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java +++ b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java @@ -57,6 +57,7 @@ import com.android.dialer.constants.Constants; import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; import com.android.dialer.phonenumbercache.CallLogQuery; +import com.android.dialer.util.PermissionsUtil; import com.google.common.io.ByteStreams; import java.io.File; import java.io.IOException; @@ -1051,7 +1052,9 @@ public class VoicemailPlaybackPresenter mFetchResultHandler = handler; mVoicemailUri = uri; if (mContext != null) { - mContext.getContentResolver().registerContentObserver(mVoicemailUri, false, this); + if (PermissionsUtil.hasReadVoicemailPermissions(mContext)) { + mContext.getContentResolver().registerContentObserver(mVoicemailUri, false, this); + } mFetchResultHandler.postDelayed(this, FETCH_CONTENT_TIMEOUT_MS); } } |